windows下使用libtiff

来源:互联网 发布:java sftp 创建目录 编辑:程序博客网 时间:2024/05/21 10:01

最近需要用到 libtiff
但是,我希望用一个比较高版本的。
因为我希望能够用上 TIFFOpenW 这个函数。
没错,后面那个 w 表示的是 wide char 。
所以,我的程序的其他部分,全部都可以是基于 unicode 的。

可是, libtiff for windows 新的版本,已经没有现成的 binary 了。
只能自己编译。

下载libtiff的源代码

点这里。
但是,不要尝试去下载windows binary,那个版本很低。
直接下载源代码。

编译

解压之后,会发现没有cmakelist,所以,没法用cmake去生成vs的工程。
可是,好消息是,里面有一个 makefile.vc 文件。

这意味着,可以使用 windows SDK 的 commandline 工具编译。
打开windows SDK 里面的commandline 工具,cd 到libtiff 所在文件夹。
输入命令即可:

nmake /f makefile.vc 

编译完了之后,在libtiff里面的libtiff文件夹里,你会得到.lib和.dll 文件。

这个地方可能出现的错误是,要注意你用的nmake是 32bit 的,还是64bit的。
如果你装的vs是64bit的,那就有两个 namke 。

如果,你的 nmake 用的是 64bit 的,那么在 vs 里面,configuration manager 要将 64bit 设置为 active .

用 TIFFOpenW 的时候出错

我发现我在用 TIFFOpenW 的时候debug模式下还是有问题。
后来,有个人说这是之前的 makefile.vc 写得有问题。

这里其实有两种解决方案 :

  • 第一,是按照上面的链接里的说法,修改 makefile.vc, 链接debug 版本的 runtime lib
  • 另一个是,偷懒了,在 release mode 下,就 okay了。

另外,libtiff的参考资料很少,但这里很不错。

0 0
原创粉丝点击