Have spent untold hours today fighting with #gnulib and #autotools only to find out that my problem was a weird shell alias thing. 😭😭
Guix has tools to make your program relocatable, that is, let it run in a location unknown at compile time. This is a really cool feature.
However, it has limitations. You can’t use it on windows (provided you could solve the problem with symlinks…), where this is a big issue.
In the mean time, Gnulib provides an easy way that makes your programs *and libraries* relocatable.
https://www.gnu.org/software/gnulib/manual/html_node/Supporting-Relocation.html
#guix #gnulib #mingw #c #development #autotools
Guix has tools to make your program relocatable, that is, let it run in a location unknown at compile time. This is a really cool feature.
However, it has limitations. You can’t use it on windows (provided you could solve the problem with symlinks…), where this is a big issue.
In the mean time, Gnulib provides an easy way that makes your programs *and libraries* relocatable.
https://www.gnu.org/software/gnulib/manual/html_node/Supporting-Relocation.html
#guix #gnulib #mingw #c #development #autotools
TIL use of gnulib's obstack API on glibc systems adds exported dynamic symbols to final binaries (normally harmless but somewhat unusual thing for programs that don't load plugins).
Even '/bin/ls' has a few of those exported out of a binary:
$ nm -D `which ls` | grep -v '^ '
00000000004c0d40 T _obstack_allocated_p
0000000000534808 D obstack_alloc_failed_handler
00000000004c0bd0 T
...
https://lists.gnu.org/archive/html/bug-gnulib/2022-12/msg00121.html
Spending an inordinate amount of time today working on what I thought would be a quick build fix. I feel like I've gotten substantially better an using autotools this past month, but gnulib-tool continues to be an absolute thorn.
#programming #gnulib #autotools
#programming #gnulib #autotools