WIndows下编译libexif-0.6.21,生成VS下可用的dll和lib

1.下载libexif-0.6.21.zip

下载地址是http://sourceforge.net/projects/libexif/files/libexif/0.6.21/

2.解压libexif-0.6.21.zip

我解压到了d:\opensources\下

3.安装Mingw

下载地址是http://www.mingw.org/ 点击右上角的Download Installer

记得安装Msys

我的安装路径是:C:\MinGW

下面依次有如下文件夹:

bin

include

lib

libexec

mingw32

msys

share

var

4.在C:\MinGW\msys\1.0下找到msys.bat,并在文件开始添加一行:

call "C:\Program Files\Microsoft Visual Studio 10.0\VC\bin\vcvars32.bat"

5.在C:\MinGW\msys\1.0\etc下查找fstab文件,如果没有就拷贝fstab.sample到fstab

确认其内容为

#Win32_Path Mount_Point

c:/mingw /mingw

这是我的安装目录,请自觉改成你的。

6.在C:\MinGW\msys\1.0下找到msys.bat,双击运行

然后切换到你的libexif-0.6.21的路径下

比如我解压到了d:\opensources\

所以我的命令是:

cd /d/opensources/libexif-0.6.21/

然后依次执行命令

./configure --host=i586-mingw32msvc --disable-nls --enable-ship-binaries

make

make install

如果不出错的话在C:\MinGW\msys\1.0\local路径下就会多出三个文件夹bin(包含libexif-12.dll)、lib(不关心)、include(头文件)

在D:\opensources\libexif-0.6.21\libexif\.libs下面会出现libexif.def(貌似不可用,打开发现开头少了一行“EXPORTS”,加上之后可以使用) 和 libexif-12.dll.def文件

这样我们就拥有了include、.dll和.def文件

还缺少一个lib文件

7.我们可以通过VS命令行利用.def生成.lib

VS命令行打开方式,打开VS->TOOLS->Visual Studio Command Prompt

切换到含有.def的目录下

执行命令:

lib /def:libexif-12.dll.def /out:libexif.lib

这样我们就有了VC下可以使用的libexif完整的库

我写了个测试程序:但是报错找不到libexif-12.dll.dll

这个时候只有把.dll文件改为对应文件名就可以了。

如有疑问请直接评论即可

WIndows下编译libexif-0.6.21,生成VS下可用的dll和lib,布布扣,bubuko.com

时间: 2024-10-13 16:19:54

WIndows下编译libexif-0.6.21,生成VS下可用的dll和lib的相关文章

VS2008下编译luabind 0.8.1

[转] 学了一段时间Lua,显然直接在项目中使用是很不方便,google了一下,似乎大家都对luabind这个lua包装类青睐有加,于是我也随大势想用用看.     先做好准备工作,下载了luabin 0.8.1源码,Boost 1.3.8源码和lua 5.1.4源码,编译环境是VS2008 SP1.之前在网上看到一些文章说这些开源软件之间的版本依赖比较敏感,可能会有这样那样的问题,动手之前有些惶恐.     幸运的是,编译过程很顺利,如下:     1.编译lua 5.1.4     进入VS

Ubuntu下编译3.0.4内核

Ubuntu下编译3.0.4内核 Linux内核3.0版本发布已有一段时间了,不知道这个版本号大跃进的内核是否好用.目前各个发行版的linux还仍未采用3.0的内核,因此可以自己动手编译内核来感受一下!趁着这次编译内核的机会可以再熟悉一下编译内核的步骤. 1.下载并解压内核到任意目录 从源码官网下载最新的内核源码3.0.4,可以解压至任意目录,我放在主目录下: 1 ~$ tar xjvf linux-3.0.4.tar.bz2 2.配置内核 对内核进行配置是为了得到内核配置文件.config.通

Ubantu14.04下编译OpenCV3.0.0

以前一直使用opencv 2.x的版本,现在3.0的已经发布成正式版了,尝试在Linux下安装. 收集了一篇不错的经验教程:Ubuntu14.04下安装OpenCV3.0经验. 编译的过程大概需要30分钟左右.亲测教程可用,需要注意的是把测试图片girls.jpg替换成自己的图片即可. 测试的例子 1.创建工作目录 mkdir ~/own/mycode cd ~/own/mycode gedit readimage.cpp 2.编辑如下代码 //! [includes] #include <op

Ubuntu16.04下编译android6.0源码

http://blog.csdn.net/cnliwy/article/details/52189349 作为一名合格的android开发人员,怎么能不会编译android源码呢!一定要来一次说编译就编译的旅程,否则你的人生是不完整的!好,那么我们进入正题! 本次编译环境采用Ubuntu16.04LTE,android源码选择android6.0!官方建议采用Ubuntu14版本,主要是我刚开始没在意系统版本,然后就直接下载安装16.04版本了,然后也懒得换了,所以就选择了这个版本....下面我

【转】如何在Ubuntu11.10(32位)下编译Android4.0源码(图文)

原文网址:http://blog.csdn.net/flydream0/article/details/7046612 关于如何下载Android4.0的源码请参考我的另一篇文章: http://blog.csdn.net/flydream0/article/details/7036156 3 开始编译 3.1 初始化环境$ source build/envsetup.sh3.2 选择目标$ lunch full-eng大概会再现如下提示:============================

LNMP-CentOS下编译PHP7.0

1.安装 epel-release源 yum install epel-release -y 2.安装编译器.依赖包 yum -y install gd-devel zlib-devel libjpeg-devel libpng-devel libiconv-devel freetype-devel libxml2 libxml2-devel openssl openssl-devel curl-devel libxslt-devel libmcrypt-devel mhash mcrypt g

linux下编译运行C程序

GCC是Linux操作系统下一个非常重要的源代码编译工具,有着许多重要的选项,支持许多不同语言的编译,如C.C++.Ada.Fortran.Objective.Perl.Python.Ruby以及Java等,甚至Linux的许多内核和许多其他自由软件以及开放源码应用程序都是用C语言编写并经gcc编译而成的. 1.编译单个源文件 [例如]在屏幕上打印"Hello,Linux." [源代码] #include<stdio.h> #include<stdlib.h>

移植 libuv 到 Visual C++ 6.0 并支持在 Windows XP 系统下编译

移植版的 libuv:https://github.com/liigo/libuv-vc6 (支持VC6和XP,作者Liigo). 我从一年前(大概2013年6,7月份)开始在业余时间做这项移植工作,走走停停,陆续用了一两个月的时间,才基本完成.这期间做了详细的移植记录,现在发布出来,希望对某些人有用.就在昨天(2014年7月12日),我又把移植的代码同步到最新的libuv(https://github.com/joyent/libuv)并发布到Github上:但是之前的移植记录没有变更,或许在

windows下编译及使用libevent

Libevent官网:http://libevent.org/ windows 7下编译: 编译环境: windows 7 + VS2010 (1)解压libevent到F:\libevent\libevent-2.0.21-stable (2)打开Microsoft visual studio 2010命令行工具 (3)修改以下三个文件,添加宏定义: 在以下3个文件开头添加“#define _WIN32_WINNT 0x0500” libevent-2.0.21-stable\event_io