I’m getting a weird link error when I try to link opencv4tegra package against another shared library I’m building when I’m trying to link as “whole archive”.
$ clang++ -shared -Wl,--export-dynamic -Wl,-soname,libmything.so.1.0 $OBJECTS -Wl,--whole-archive -L$OUT -L/usr/lib -lsnmp -lopencv_calib3d -lopencv_contrib -lopencv_core -lopencv_features2d -lopencv_flann -lopencv_gpu -lopencv_highgui -lopencv_imgproc -lopencv_legacy -lopencv_ml -lopencv_objdetect -lopencv_photo -lopencv_stitching -lopencv_superres -lopencv_ts -lopencv_video -lopencv_videostab -lopencv_esm_panorama -lopencv_facedetect -lopencv_imuvstab -lopencv_tegra -lopencv_vstab -lcufft -lnpps -lnppi -lnppc -lcudart -lrt -lpthread -lm -ldl -ldl -lpthread -lrt -lm -Wl,--no-whole-archive -o $SO
/usr/bin/ld: /usr/lib/libopencv_ts.a(gpu_test.cpp.o): relocation R_ARM_THM_MOVW_ABS_NC against `__pthread_key_create' can not be used when making a shared object; recompile with -fPIC
/usr/lib/libopencv_ts.a(gpu_test.cpp.o): error adding symbols: Bad value
clang: error: linker command failed with exit code 1 (use -v to see invocation)