2012-07-23 35 views
13

试图链接到我用MinGW建立的静态assimp库。下面是我收到的错误:未定义的引用'充气'

H:\ ovgl \ ovgl ... \依赖性\ Assimp \ LIB \ libassimp.a(BlenderLoader.cpp.obj):BlenderLoader.cpp :(文字+ 0xd91): 未定义参照inflateInit2_' H:\ovgl\ovgl\.\..\dependencies\Assimp\lib\libassimp.a(BlenderLoader.cpp.obj):BlenderLoader.cpp:(.text+0xe06): undefined reference to充气” H:\ ovgl \ ovgl ... \依赖性\ Assimp \ lib中\ libassimp.a(BlenderLoader.cpp.obj):BlenderLoader.cpp :(文本+ 0xf72): 未定义对inflateEnd' H:\ovgl\ovgl\.\..\dependencies\Assimp\lib\libassimp.a(XGLLoader.cpp.obj):XGLLoader.cpp:(.text+0x76c): undefined reference to的引用inflateInit2_' H:\ ovgl \ ovgl ... \ dependencies \ Assimp \ lib \ libassimp.a(XGLLoader.cpp.obj):XGLLoader.cpp :(.text + 0x7ff): 未定义的对inflate' H:\ovgl\ovgl\.\..\dependencies\Assimp\lib\libassimp.a(XGLLoader.cpp.obj):XGLLoader.cpp:(.text+0x953): undefined reference to的引用inflateEnd' H:\ ovgl \ ovgl ... \ dependencies \ Assimp \ lib \ libassimp.a(XFileParser.cpp.obj):XFileParser.cp p :(。text + 0x9ac): 未定义的引用inflateInit2_' H:\ovgl\ovgl\.\..\dependencies\Assimp\lib\libassimp.a(XFileParser.cpp.obj):XFileParser.cpp:(.text+0xd5c): undefined reference to inflate' H:\ ovgl \ ovgl ... \ dependencies \ Assimp \ lib \ libassimp.a(XFileParser.cpp.obj):XFileParser.cpp :(。文本+ 0xed2): 未定义的引用inflateReset' H:\ovgl\ovgl\.\..\dependencies\Assimp\lib\libassimp.a(XFileParser.cpp.obj):XFileParser.cpp:(.text+0xef8): undefined reference to inflateSetDictionary' H:\ ovgl \ ovgl ... \ dependencies \ Assimp \ lib \ libassimp.a(XFileParser.cpp.obj):XFileParser.cpp :(.text + 0xf52) : undefined reference to inflateEnd' H:\ovgl\ovgl\.\..\dependencies\Assimp\lib\libassimp.a(XFileParser.cpp.obj):XFileParser.cpp:(.text+0x1b4a): undefined reference to inflateInit2_' H:\ ovgl \ ovgl ... \ dependencies \ Assimp \ lib \ libassimp.a(XFileParser.cpp.obj):XFileParser.cpp :(.text + 0x1efa): undefined reference到inflate' H:\ovgl\ovgl\.\..\dependencies\Assimp\lib\libassimp.a(XFileParser.cpp.obj):XFileParser.cpp:(.text+0x2070): undefined reference to inflateReset' H:\ ovgl \ ovgl ... \ dependencies \ Assimp \ lib \ libassimp.a(XFileParser.cpp.obj):XFileParser.cpp :(。text + 0x2096): undefined ref参考文献inflateSetDictionary' H:\ovgl\ovgl\.\..\dependencies\Assimp\lib\libassimp.a(XFileParser.cpp.obj):XFileParser.cpp:(.text+0x20f0): undefined reference to inflateEnd' H:\ ovgl \ ovgl ... \ dependencies \ Assimp \ lib \ libassimp.a(unzip.c.obj):unzip.c :(。text + 0x1935): 未定义的引用inflateInit2_' H:\ovgl\ovgl\.\..\dependencies\Assimp\lib\libassimp.a(unzip.c.obj):unzip.c:(.text+0x19b8): undefined reference to get_crc_table ' H:\ ovgl \ ovgl ... \ dependencies \ Assimp \ lib \ libassimp.a(unzip.c.obj):unzip.c :(。text + 0x1ec2): undefined参考crc32' H:\ovgl\ovgl\.\..\dependencies\Assimp\lib\libassimp.a(unzip.c.obj):unzip.c:(.text+0x1f67): undefined reference to inflate' H: \ ovgl \ ovgl ... \依赖性\ Assimp \ LIB \ libassimp.a(unzip.c.obj):unzip.c :(文字+ 0x1fb5): 未定义参考crc32' H:\ovgl\ovgl\.\..\dependencies\Assimp\lib\libassimp.a(unzip.c.obj):unzip.c:(.text+0x2245): undefined reference to inflateEnd”

+1

您是否包含所有头文件? – jrad 2012-07-23 03:30:16

+0

为了便于记录,我下载的assimp包含了zlib的源代码,并提供了一个选项来构建包含的版本。直到我将assimp项目配置为构建zlib的全新副本之后,我才得到这些相同的错误,然后必须将其包含在我的应用程序中。 – 2016-10-22 23:57:59

+0

相关:https://stackoverflow.com/questions/1632201/error-deflate-and-inflate-with-zlib – 2017-10-23 07:56:32

回答

20

那些是zlib库中的函数。您是否有zlib.h和zlib库(.a或.lib)以及路径设置是否正确

+0

谢谢你现在完美的作品!当我将assimp编译为visual C++的静态代码之前,我不必链接到zlib。 – SteveDeFacto 2012-07-23 13:31:46

+0

是否可以将'zlib.lib'文件包含到'assimp.lib'中,这样我只需要将后者包含在我的实际项目中? – danijar 2013-03-29 20:00:57

+12

-lz在Linux下。 – DragonLord 2014-05-26 18:30:00