gpt4 book ai didi

linux - 在 LINUX 上链接静态库和动态库

转载 作者:太空宇宙 更新时间:2023-11-04 09:19:09 25 4
gpt4 key购买 nike

我正在尝试使用以下语句从不同的库构建可执行文件

g++ -fPIC -O -DUSING_PCH -D_REENTRANT -I"/app1/home1/quickfast/boost_1_61_0/include/boost-1_61"-I"/app1/home1/quickfast/boost_1_61_0/."-I"../../src"-I"../src/Examples"-I"/app1/home1/quickfast/boost_1_61_0/include"-L"."-L"/app1/home1/quickfast/boost_1_61_0/stage/lib"-L/app1/home1/quickfast/quickfast-master/lib -l"QuickFAST"-l"boost_thread-gcc44-mt-1_61"-l"boost_system -gcc44-mt-1_61"-l"boost_filesystem-gcc44-mt-1_61"-l"boost_unit_test_framework-gcc44-mt-1_61"-static -ldl -lpthread -o "../../bin/testSequences"

上面的编译语句包含了很多库,有动态库(.so文件)和静态库(.a文件)两种。例如,库 boost_system-gcc44-mt-1_61 在系统中作为 libboost_system-gcc44-mt-1_61.so 以及 libboost_system-gcc44-mt-1_61.a 存在。我想要的是,在编译时只选择动态库(.so 文件),而忽略静态库。有人可以指导吗。

最佳答案

你告诉它使用 -static link option 获取静态库.如果您删除它,它可能会按您预期的那样工作。

关于linux - 在 LINUX 上链接静态库和动态库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43950554/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com