- Package:
- unixodbc-dev
- Source:
- unixodbc-dev
- Description:
- ODBC libraries for Unix (development files)
- Submitter:
- Chris Hofstaedtler
- Date:
- 2025-09-01 11:39:03 UTC
- Severity:
- normal
Hi, /usr/include/aarch64-linux-gnu/unixODBC/unixodbc_conf.h contains: #define LT_DLSEARCH_PATH "/lib:/usr/lib:/usr/local/lib/aarch64-linux-gnu:/lib/aarch64-linux-gnu:/usr/lib/aarch64-linux-gnu:/usr/lib/aarch64-linux-gnu/libfakeroot:/usr/local/lib" Apparently it picks up the LD_LIBRARY_PATH modification done by fakeroot. But this library path is wrong at runtime. Please fix the build to not include the libfakeroot directory. Best, Chris
Hi Chris, * Chris Hofstaedtler <zeha@debian.org> [2025-05-09 16:42]: I think it should be enough to rebuild this package with a recent dpkg that no longer uses fakeroot by default with Rules-Requires-Root: (but I did not test this). This was discussed in #debian-devel today: 13:38 <hmc> libtool's autoconf picks up LD_LIBRARY_PATH via LT_SYS_DLSEARCH_PATH 13:40 <hmc> in this case, unixodbc_conf.h is a private header. 13:42 <hmc> (it indicates how unixodbc was built) And I found a number of packages with the same diff: gerris libapr1-dev (with other changes) libdiagnostics-dev libotf2-trace-dev (with other changes) librep-dev libtool-bin pinball-dev proftpd-core (with other changes) r-base-core (with other changes and log size limit) So maybe this should be reassigned to autoconf? Cheers Jochen
* Jochen Sprickerhof <jspricke@debian.org> [250512 14:12]: Maybe, maybe not. I'm guessing the packages themselves control if they let the build-time library path end up in their header or binary files. If so, I don't think autoconf can do much about it. Chris
* Chris Hofstaedtler <zeha@debian.org> [2025-05-12 18:26]: I have updated the buildd chroot generation script to no longer install fakeroot by default and asked for binNMUs for all bug pinball-dev (is R³ binary-targets) and verified that this reproduces now. I still think it would be better to not expose the build time LD_LIBRARY_PATH in the installed unixodbc_conf.h but that is probably minor, so closing this. Cheers Jochen
Thanks for this work. As indicated in an early response, unixodbc_conf.h is a private header and indicates how unixodbc was built. I'll probably patch out the LD_LIBRARY_PATH line at the next upload. In fact, it might be easier to avoid shipping the header. Hugh