- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
我尝试通过链接我用 -fPIC
选项编译的“liblog4cplus.a”来创建一个名为“logtest.so”的共享库。
这里是“logtest.cpp”(从log4cplus网站复制过来,只是为了测试目的):
#include "log4cplus/logger.h"
#include "log4cplus/loggingmacros.h"
#include "log4cplus/configurator.h"
using namespace log4cplus;
void test()
{
initialize();
BasicConfigurator config;
config.configure();
}
命令如下:
g++ -shared logtest.cpp -L . -llog4cplus -pthread -o liblogtest.so -lrt -fPIC
这是错误信息:
/usr/bin/ld: ./liblog4cplus.a(configurator.o): relocation R_X86_64_32S against `_ZTVN9log4cplus23ConfigureAndWatchThreadE' can not be used when making a shared object; recompile with -fPIC
./liblog4cplus.a: could not read symbols: Bad value
collect2: error: ld returned 1 exit status
通过调用:
nm liblog4cplus.a | grep _ZTVN9log4cplus23ConfigureAndWatchThreadE
我得到:
0000000000000000 V _ZTVN9log4cplus23ConfigureAndWatchThreadE
我尝试添加 "-Wl,-rpath,$ORIGIN"
,但仍然收到相同的错误消息。
我想这与在共享库中链接静态库有关,但我尝试了所有建议,但它仍然不起作用。
最佳答案
配置log4cplus时,使用--with-pic
选项得到一个带有PIC代码的静态库,可以链接到SO中。
关于c++ - 如何在共享库中链接 log4cplus.a?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26124543/
很难说出这里问的是什么。这个问题是含糊的、模糊的、不完整的、过于宽泛的或修辞性的,无法以目前的形式得到合理的回答。如需帮助澄清此问题以便重新打开它,visit the help center 。 已关
pyximport 非常方便,但我不知道如何使用它来使用 Cython 的 C++ 语言选项。从命令行运行 cython --cplus foo.pyx。你如何用 pyximport 实现等效?谢谢!
pyximport 非常方便,但我不知道如何让它使用 Cython 的 C++ 语言选项。从命令行运行 cython --cplus foo.pyx。您如何使用 pyximport 实现等效功能?谢谢
大家好,我正在使用 VC 2008 c++,我得到了一些不是我的项目。项目成功重建,但问题是项目没有创建另一个项目所需的所有 .lib 文件,所以我得到: 1>------ Build started
我是一名优秀的程序员,十分优秀!