LinuxQuestions.org
Help answer threads with 0 replies.
Go Back   LinuxQuestions.org > Forums > Linux Forums > Linux - Software
User Name
Password
Linux - Software This forum is for Software issues.
Having a problem installing a new program? Want to know which application is best for the job? Post your question in this forum.

Notices


Reply
  Search this Thread
Old 09-26-2003, 08:58 PM   #1
nidua18
LQ Newbie
 
Registered: Sep 2003
Posts: 26

Rep: Reputation: 15
Another dependencies hell.


OK, I am running RH9 and no RPM's are involved, everything is being compiled. The problem: As I am trying to install Enlightenment and Eterm I am going thru the 9 billion dependencies each of them requires but even after successful installation, of those dependences, I am still getting errors that they are not installed. So what gives? I thought that they may not be installed in appropriate locations but how do I know where they are suppose to be? Any thoughts?
 
Old 09-27-2003, 01:01 AM   #2
lyle_s
Member
 
Registered: Jul 2003
Distribution: Slackware
Posts: 389

Rep: Reputation: 52
You have to run ldconfig after installing any libraries/shared objects. Could that be your problem?

Lyle
 
Old 09-27-2003, 10:36 AM   #3
nidua18
LQ Newbie
 
Registered: Sep 2003
Posts: 26

Original Poster
Rep: Reputation: 15
You are absolutely right that this is the problem however I still donít know what this command does?
 
Old 09-27-2003, 11:13 AM   #4
Looking_Lost
Senior Member
 
Registered: Apr 2003
Location: Eire
Distribution: Slackware 12.0, OpenSuse 10.3
Posts: 1,120

Rep: Reputation: 45
I think a lot of programs but of course not all default to something like

/usr/local

if you don't specify an installation prefix

Check out

/etc/ld.so.conf

and add

/usr/local/lib

to it if it ain't there, close the file then

ldconfig

May be only part of your problem, maybe not

Most of the time when I compile and install programs I

./configure --prefix=/usr

and 9 times out of ten no further messing about is required and if it can't find something I

./configure --help | more

to see if their's an option when configuring to specify a path to a particular lib that it needs
 
Old 09-27-2003, 12:12 PM   #5
lyle_s
Member
 
Registered: Jul 2003
Distribution: Slackware
Posts: 389

Rep: Reputation: 52
Quote:
Originally posted by nidua18
You are absolutely right that this is the problem however I still donít know what this command does?
One thing ldconfig does is create symbolic links (see "man ln" for information on symbolic links) that the run-time linker uses. For example, if you install libwhatever.so.1.2.1, ldconfig creates a symbolic link libwhatever.so.1 that's used to actually dynamically link to. This allows you to upgrade to libwhatever.so.1.3.1, run ldconfig to update the symbolic link, and none of the programs that link against it dynamically need to know about the change because they still link against the symbolic link libwhatever.so.1.

Another important thing it does is maintain a cache of the name and path (and probably more information I don't know about) of available dynamic libraries in /etc/ld.so.cache. The advantage of this is the run-time linker doesn't have to do a time-consuming search through the filesystem looking for libraries to link with. The disadvantage is that it has to be kept up to date; fortunately, this is easy to do by simply running ldconfig.

ldconfig automatically looks in /lib and /usr/lib for libraries. Any other directories you want it to look, for example /usr/local/lib, must be added to /etc/ld.so.conf. The people who put together distributions put the needed entries in /etc/ld.so.conf, so unless you put your libraries in weird places, you shouldn't have to add entries into /etc/ld.so.conf. If running ldconfig doesn't work, check /etc/ld.so.conf to make sure the directory where you put the libraries is there. Don't add directories into /etc/ld.so.conf that are writable by a non-root user.

You can check which dynamic libraries an executable needs and if the run-time linker know about them (i.e., the symbolic links are set up and there is an entry in /etc/ld.so.cache) with the ldd (list dynamic dependencies) command. For example:

ldd $(which ls)

shows the dynamic dependencies of the ls command.

Maybe this will help,
Lyle
 
  


Reply


Thread Tools Search this Thread
Search this Thread:

Advanced Search

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is Off
HTML code is Off



Similar Threads
Thread Thread Starter Forum Replies Last Post
go to hell.... A-dummy General 10 08-30-2006 08:06 PM
What the hell is this?! navarre9 Linux - General 5 04-27-2004 01:12 PM
what the hell is this?! navarre9 Mandriva 1 04-27-2004 08:11 AM
I recieve a failed dependencies error, but I have all required dependencies Laptop2250 Linux - Software 15 02-03-2004 07:58 PM
nu as hell son_oF_jeeves Linux - Newbie 5 12-18-2003 07:09 PM


All times are GMT -5. The time now is 10:22 PM.

Main Menu
Advertisement
My LQ
Write for LQ
LinuxQuestions.org is looking for people interested in writing Editorials, Articles, Reviews, and more. If you'd like to contribute content, let us know.
Main Menu
Syndicate
RSS1  Latest Threads
RSS1  LQ News
Twitter: @linuxquestions
Facebook: linuxquestions Google+: linuxquestions
Open Source Consulting | Domain Registration