howto tell "make install" look in /usr/lib64 instead of in /usr/lib?
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.
howto tell "make install" look in /usr/lib64 instead of in /usr/lib?
Hello,
I am compiling a package and have some trouble at the "make install" phase.
"make install" searches for libexpat.so in /usr/lib, instead of /usr/lib64. This is troublesome as I am compiling on a multilib system. Making symbolic links to the respective file in /usr/lib64 eliminates the error. Have you got an idea how I can tell "make install" to look for libexpat.so in /usr/lib64 instead of in /usr/lib?
Maybe this is some environmental variable but I do no know which. Any suggestions will be appreciated.
Usually, make install doesn't look for anything, anywhere; it just copies files (executables, libraries, config files and documentation) into the relevant directories. Plain make does the actual compiling and may need to locate various libraries.
The location of libraries is specified in the Makefile, which in turn is usually generated by ./configure. The latter can take a number of arguments and parameters. Run ./configure --help, and you'll probably find that the --libdir argument lets you specify the library directory. There may also be an argument specific to libexpat.
If I have understod what you mean, you are having problems with the linker: to have it look into /usr/lib64 you have to pass an LDFLAGS variable to the configure.
I'm new to mulitilib but my understanding is that if you want the 64bit libraries then you do NOT run in the environment set up by /etc/profile.d/32dev.sh. That is, do NOT run this script in the shell where you make your program. Just let it use the 64bit libraries.
Perhaps you're running in the 32bit preferred environment set by this script ???
This has worked for me the few times I tried it. In my cases I didn't have to explicitly set any environmental path variables.
... but remember I'm new to the multilib setup ...
Last edited by TracyTiger; 06-01-2012 at 09:10 PM.
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.