/Configure linux-aarch64 --prefix=$HOME/opensslArm no-shared -fPIC
make CC="${cross}gcc" AR="${cross}symbol `__stack_chk_guard@@GLIBC_2.17' can not be used when making a shared object; recompile with -fPIC
ZN9LASreader35read_point_filtered_and_transformedEv' can not be used when making a shared object; recompile with -fPIC/usr/bin/ld: final link failed: Bad value 所以我尝试用-fPIC ->重新编译libLASlib,同样的错误 由于我的环境原因,我无法验证fpic是否有效地添加到了以下是我试图确认的,fPIC没有问题:
g++ -fPIC libsaliency.cpp -shared -o libsaliency.so \
-I/home/poiesi/data/libraries/boostrelocation R_X86_64_32 against `.rodata.str1.8' can not be used when making a shared object; recompile with -fPICMakefile:7: recipe for target
relocation R_X86_64_32 against .rodata.str1.1 can not be used when making a shared object; recompile with -fPICError 2add_library(cpp-lib SHARED ${CPP_FILES})
为了避免上面显示的-fPIC
relocation R_X86_64_32 against `_nc_globals' can not be used when making a shared object; recompile with -fPIC/libcurses.a: could not read symbols: Bad value
recompile with -fPIC指的是什么,诅咒还是欺骗?然后如何传递-fPIC标志。我尝试过将CFLAGS=-fPIC添加到ncurses & libedit的配置中,但仍然
against `vtable for Torch::MemoryDataSet' can not be used
when making a shared object; recompile with -fPIC它说我应该用-fPIC选项重新编译。我这样做了,将-fPIC选项添加到CFLAGS和CXXFLAGS中,但仍然得到相同的错误。有什么办法可以解决这个问题吗?我发现这个问题与64位机器的使用有关,我确实正在使用64位机器。
R_ARM_THM_MOVW_ABS_NC against 'a local symbol' an not be used when making a shared object; recompile with -fPICprefix=$HOME/opensslArm
make CC="${cross}gcc" AR="${cross}ar r" RANLIB="${cross}ranlib" CFLAGS="-fPIC" CXXFLAGS=