如何解决libtiff构建未定义的对_imp__TIFFOpen的引用错误
我正在尝试使用libtiff
(从here复制的测试程序)构建测试程序。我已经下载了静态库libtiff.lib
以及所需的头文件tiffio.h
。当我毫无问题地编译主要的c函数时,我有一个main.o
文件。当我尝试使用此命令将main.o与libtiff
链接
gcc -g -Wall -o test.exe ./libtiff.lib ./test.o
undefined reference to `_imp__TIFFOpen'
我已经用nm -A libtiff.lib
命令查看了lib文件,我可以找到这一行
libtiff.lib:libtiff3.dll:00000000 I __imp__TIFFOpen
,但是它有2个下划线,而不是链接程序所要求的1个下划线。 我正在Windows 7上使用mingw ,并且所有必需的文件都在同一目录中。
不知道如何正确链接。
谢谢。
解决方法
正如注释中所建议的那样,反转作为参数传递的对象的顺序就足够了:
gcc -g -Wall -o test.exe ./test.o ./libtiff.lib
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。