qhyccd-lzr / QHYCCD_Linux

SDK for QHYCCD cameras
21 stars 17 forks source link

Build on debian testing with -fPIC #27

Open GuLinux opened 7 years ago

GuLinux commented 7 years ago

Hello, when building my project on debian testing, I get these error messages on linking when using qhyccd static libraries: planetaryimager-build_1 | /usr/bin/ld: /code/src/drivers/qhy/QHYCCD_Linux/libqhy_64.a(qhyccd.o): relocation R_X86_64_32S against symbol `cydev' can not be used when making a shared object; recompile with -fPIC

(repeated for each of the qhy objects). In some conditions the -fPIC is necessary, but it must be enabled for every object in the build pipe. You can verify the issue compiling my application at https://github.com/GuLinux/PlanetaryImager.

Thanks Marco

GuLinux commented 7 years ago

As a side note, it seems now the default behaviour for pretty much every distribution (I tried on Ubuntu 16.10, fedora and Arch Linux too).

A workaround seems to be to use only the shared library instead of the static, but if we could have a static version of qhyccd library compiled with -fPIC, that would be much better.

Thanks