AIX shared libraries

I'm using a RS/6000 machine running AIX 4.1. I need to create shared object files (.so files). I am able to compile my C program using cc into a .so file but whenever I try to load the .so file I get the following message:

dlopen():path component not found (errno ERNOENT)

Anyone able to guide me as to how to overcome this problem? It's rather urgent. My project depends on it.
thleongAsked:
Who is Participating?
 
ahoffmannConnect With a Mentor Commented:
Is the errno returned by dlopen()  ENOENT?
Then you probably misstyped the pathname of your library.
Or, if you just used the library's filename, forgot to set your
LD_LIBRARY_PATH environment variable appropriate.
0
 
thleongAuthor Commented:
Where should the LD_LIBRARY_PATH point to? Is it possible that some component may be missing from my machine that causes the problem? If so, what could the component possibly be and is there any way for me to get it?
0
 
ahoffmannCommented:
LD_LIBRARY_PATH should point to the directories containing the
shared libraries used for your program. It's usage may depend on
some linker options (sorry, I don't have the AIX man-pages handy)
Straight forward, use the absolute pathname of your library in
the dlopen() call.

> Is it possible that some component may be missing from ...
i.g.: no. Your program then wouldn't start complaining about
missing shared libraries. But again, this depends on linker
options (somthing known as: DEFERED, IMMEDIATE, NONFATAL binding)
0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.