我想写一个应用程序,保存16位tiffs。我使用QT Creator和QT API,但由于16位需要,无法使用QT tiff功能。我的应用程序需要在Windows和Linux上运行。无法链接QT Creator/MSVC中的libtiff
Linux版本正常工作。当我尝试在Visual C链接++/Win 7的,我得到了以下错误消息:像这样我的.pro文件的样子
FrameSaveRunnable.obj : error LNK2019: unresolved external symbol __imp_TIFFClose referenced in function "protected: virtual void __cdecl FrameSaveRunnable::run(void)" ([email protected]@@MEAAXXZ)
FrameSaveRunnable.obj : error LNK2019: unresolved external symbol __imp_TIFFSetField referenced in function "protected: virtual void __cdecl FrameSaveRunnable::run(void)" ([email protected]@@MEAAXXZ)
FrameSaveRunnable.obj : error LNK2019: unresolved external symbol __imp_TIFFWriteScanline referenced in function "protected: virtual void __cdecl FrameSaveRunnable::run(void)" ([email protected]@@MEAAXXZ)
FrameSaveRunnable.obj : error LNK2019: unresolved external symbol __imp_TIFFOpen referenced in function "protected: virtual void __cdecl FrameSaveRunnable::run(void)" ([email protected]@@MEAAXXZ)
debug\avtcam.exe : fatal error LNK1120: 4 unresolved externals
相关部分:
INCLUDEPATH += "C:\Program Files (x86)\GnuWin32\include"
LIBS += -L"C:\Program Files (x86)\GnuWin32\lib" -llibtiff
我用Google搜索和搜索所有的,看来这个问题与C/C++名称不兼容性有关。对于如何在Visual Studio中修复它有一些建议,但我正在QT环境中工作,并且根本不使用VS - 只是编译器。这个问题有答案吗?
我的环境:QT 5.4.0时,Visual Studio 12,赢得http://gnuwin32.sourceforge.net/packages/tiff.htm
图书馆不应该链接为'-ltiff'而不是'-llibtiff'? –
不,如果它是Linux或如果我使用Mingw,它将是 - 提示,但Visual Studio要它拼出来 – jhowland