[SOLVED] Where is libX11.a ? ... error building static executable
SlackwareThis Forum is for the discussion of Slackware Linux.
Notices
Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
If you have any problems with the registration process or your account login, please contact us. If you need to reset your password, click here.
Having a problem logging in? Please visit this page to clear all LQ-related cookies.
Get a virtual cloud desktop with the Linux distro that you want in less than five minutes with Shells! With over 10 pre-installed distros to choose from, the worry-free installation life is here! Whether you are a digital nomad or just looking for flexibility, Shells can put your Linux machine on the device that you want to use.
Exclusive for LQ members, get up to 45% off per month. Click here for more info.
I don't want to have to copy run time libraries to the chroot sandbox every time I update or upgrade Slackware.
Mmm-hmm. And so you won't get the security fixes ("X Security: It's worse than it looks") that come with a new xorg. Mmm-hmm. So, if an xorg CVE turns up in April, everyone's stuff gets patched except yours. Mmm-hmm. So, uh, why do you want a chroot environment again? so that the Syrian Electronic Army hopefully won't trash too much when you get pwned?
comet.berkeley:
I don't want to have to copy run time libraries to the chroot sandbox every time I update or upgrade Slackware.
No need for that. You can simply use installpkg's "--root" option and point it to your chroot.
By the way, can I ask what the purpose of this rant is? I've looked through a few distributions (ebuild for Gentoo, spec file for CentOS/RHEL, even Fedora) and none of them seem to build with --enable-static (which as you said, is confirmed as a default in FreeBSD: http://svnweb.freebsd.org/ports/head...53&view=markup).
What's the real reason you care so much about a statically built libX11?
If it was VLC or LibreOffice (maybe even MPlayer) I could understand, but when it comes to libX11 I'm not quite sure what you're upset about. All of the Unix-like operating systems I'm currently using have a way to install a package into a separate directory.
Quote:
P.S. I don't belong to the church of Google.
I think he meant that it could be found via any search engine, Google just happens to be the most common.
Mmm-hmm. And so you won't get the security fixes ("X Security: It's worse than it looks") that come with a new xorg. Mmm-hmm. So, if an xorg CVE turns up in April, everyone's stuff gets patched except yours.
I'm not actually running full blown Xorg in the chroot environment. But if a relevant CVE or other bug turns up then I expect to recompile my static program and copy this single file back into my chroot environment.
Quote:
Originally Posted by 55020
Mmm-hmm. So, uh, why do you want a chroot environment again? so that the Syrian Electronic Army hopefully won't trash too much when you get pwned?
Yes, OpenBSD Apache is automatically configured with chroot and it is a good security practice for web servers. Chroot or jail or virtual machine are all better choices than doing nothing.
Besides FreeBSD, OpenBSD also has a libX11.a and my program builds fine on these environments.
I'm going to try and rebuild the libX11, libXau, and libXdmcp packages from source.
So I will modify the package configure/configure and configure/libX11 files and remove the --disable-static parameters and then
build the three packages.
Using some static lib from another distro is not really a proper solution.
True. What I did do though is install Debian on a spare partition. Then I was able to verify that my program would indeed compile there.
Like Slackware, Debian does not distribute static libraries with a normal install.
But the Debian package, libx11-dev, does provide the static libraries for developers like me. Slackware does not have such a package.
My ultimate solution for Slackware was to take the x11 source package build and modify all of the config/ directory files to remove all of the "--disable-static" parameters. I left everything else alone and just rebuilt everything for x11.
Then I updated all of my x11 packages.
It works fine. I now have all the static libraries I need as well as the dynamic libraries.
Maybe some day Slackware can provide a libx11-dev package like Debian?
Last edited by aaazen; 03-24-2014 at 10:44 AM.
Reason: change font
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.