我用C++编写程序,将生成共享库,并由JNI使用。我有第三方库(libexample.a),需要将其链接到共享库(libshared.so)。问题是,我在64位CentOS上工作,需要使用-fPIC创建共享库,但第三方库没有使用-fPIC进行编译。
在构建过程中,我收到以下错误提示: /usr/bin/ld: /home/tom/Project/src/libexample.a(SomeObject.o): relocation R_X86_64_32 against 'someData' can not be used when making a shared object; recompile with -fPIC
在这种情况下是否可能制作共享库?(我没有libexample.a的源代码...)
是否有任何解决方法使其正常工作?即使需要编写额外的应用程序,也请提供想法。
希望我的问题不是重复的,因为我花了很长时间搜索可能性。 谢谢,bez
在构建过程中,我收到以下错误提示: /usr/bin/ld: /home/tom/Project/src/libexample.a(SomeObject.o): relocation R_X86_64_32 against 'someData' can not be used when making a shared object; recompile with -fPIC
在这种情况下是否可能制作共享库?(我没有libexample.a的源代码...)
是否有任何解决方法使其正常工作?即使需要编写额外的应用程序,也请提供想法。
希望我的问题不是重复的,因为我花了很长时间搜索可能性。 谢谢,bez