3 ms·
I found libtool extremely painful to work with; it will hide your compiled libs in a hidden subdir, will wrap your compiled executable in a fscking shell script
by tannhaeuser 10y ago
I found libtool extremely painful to work with; it will hide your compiled libs in a hidden subdir, will wrap your compiled executable in a fscking shell script that then calls your real binary, it's unable to isolate a build against libs that may or may not be installed on your build system etc. Yet for all magic it does, libtool still doesn't solve the problem of building for a PREFIX (eg. /usr/local) in a temporary directory, and you need a chroot-jail or something for that.
From the libtool manual ([1]):
Currently it is not generally possible to install into a temporary
staging area that contains needed third-party libraries that are not
yet visible at their final location.
So to build against a shared lib provided by another package, that other package has to be installed at the final destination already.
I seriously considered going back to just static libraries at some point. I believe the build system of git does away with autotools alltogether, consisting of just a simple Makefile.
Also, a link to phk's libtool rant seems apt here ([2]).
[1]: https://www.gnu.org/software/libtool/manual/html_node/Install-mode.html https://www.gnu.org/software/libtool/manual/html_node/Instal...
[2]: http://queue.acm.org/detail.cfm?id=2349257&ref=fullrss http://queue.acm.org/detail.cfm?id=2349257&ref=fullrss
Edit: typo; make links work
- appleflaxen 10y agoboth of those links are 404 (at least for me)
- tannhaeuser 10y agoI'm sorry, first one should work now. Second one works for me, but has already been discussed here back in 2012 eg. https://news.ycombinator.com/item?id=4407188 https://news.ycombinator.com/item?id=4407188 .