1

我有一个共享库,它依赖于一些静态库,其中包括zlib等。当我用 g++(cent os 6.3)的依赖静态库构建我的共享库时,它编译得很好。现在,当我尝试在测试项目中使用我的共享库时,我遇到了很多未解决的错误。我做错了什么?

g++ -L/usr/local/lib -L/home/de.../workspace/libtest/Debug -o "mytest" ./src/mytest.o -ltest

/home/de.../workspace/libtest/Debug/libtest.so:未定义对“BZ2_bzCompressEnd”的引用

collect2: ld 返回 1 个退出状态

4

1 回答 1

1

该错误使您看起来还需要链接 bzip2:

g++ -L/usr/local/lib -L/home/de.../workspace/libtest/Debug -o "mytest" ./src/mytest.o -ltest -lbz2

您确实需要小心将静态库链接到共享库,但您会看到此错误,因为您需要链接其余库。

于 2012-09-08T21:52:17.713 回答