【问题标题】:Linking libraries链接库
【发布时间】:2011-03-14 13:06:21
【问题描述】:

我有一些带有文件的项目: src/Test.cpp。 现在我用另一个文件src/TestWrapper.cpp 为它创建子项目,其中包括src/Test.hpp(与Test.cpp 相关)。

当然,要使用包装器构建成功的共享库,我也必须链接 Test.cpp

一切正常。我有链接 Test.cpp 的项目和链接 Test.cpp 的子项目(共享库)。

问题:该共享库将链接到主项目。我会因此而出现任何错误吗?

【问题讨论】:

    标签: c++ linker shared


    【解决方案1】:

    您不应该将 Test.cpp 放在您的共享库中。你可以不用Test.cpp链接你的共享库,它只会有一些未定义的符号,这对于共享库来说是完全正常的。

    您所做的可能会奏效,但很危险,会使您的软件无法维护。

    【讨论】:

    • 嗯,那个共享库是python的模块(用boost.python编写)。我将来必须从主应用程序中使用它。未定义符号的问题会消失吗?
    • 是的,符号将在您的主应用程序中定义,加载程序将在运行应用程序时解析它们。
    • 谢谢,我希望它会工作。我留下的问题仍然没有解决。但我会在确定此问题已解决后立即标记它。
    猜你喜欢
    • 2011-09-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-10-03
    • 2012-05-03
    • 2011-04-02
    • 2020-05-19
    • 1970-01-01
    相关资源
    最近更新 更多