Shared libraries

Thread Tools Search this Thread
Top Forums Programming Shared libraries
# 1  
Old 11-12-2001
Shared libraries

Hello everybody,

I am having major problems at the moment with shared libraries and I have to little knowledge of them to solve them. So please, please help me Smilie

Ok this is the problem:

I have a library A, which uses B and C, and C uses again D.

If I try to run A as plugin in apache, it says C doesn't find D ( unresolved, etc).

I have the suspission that it has to do with the way we make our stuff. We use omake. I can change the compiler "severity" of it, due to a lot of problems I will rather not explain here. The thing is that someone stated it would be enough to put all the -l<lib> options on higher level.

So in my example this would mean that the makefile of libA contains the following options :-lB -lC -lD, and the other makefiles didn't need references to the libs they are using.

But that doesn't seem to work. Lib C still complains about unresolves ( but only runtime!! ), although the file is there and in the LD_LIBRARY_PATH.

Does someone have a good article, or some hints for me, how to compile the .so files so they will run without unresolves? Where should I include the -l options?

Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Programming

C/C++ shared libraries on Linux.

This is the first time that I created a dynamic library in linux and although the program works, I do not get the correct information about the library when executing ldd. I explain the details: 1) Source code: bye_fn.c: #include <stdio.h> #include "hello.h" void bye (const char*... (9 Replies)
Discussion started by: jose_spain
9 Replies

2. Solaris

Self contained shared libraries

Does anyone know whether it is possible to make self contained shared libraries ? (.so files). If so, what is the way to do it ? ---------- Post updated at 08:03 AM ---------- Previous update was at 07:56 AM ---------- On Solaris that is. (6 Replies)
Discussion started by: lkb
6 Replies

3. Red Hat

shared libraries problem

hi, while running the below query it gives the shared libraries prmblem, $ cd /oracle/app/product/fmw/asinst_1/bin/ $ ./opmnctl status /oracle/app/product/fmw/Oracle_IDM1/opmn/bin/opmn: error while loading shared libraries: cannot open shared object file: Permission... (0 Replies)
Discussion started by: rahulsword
0 Replies

4. AIX

Loaded Shared Libraries

Hi, I have a problem about loaded shared libraries. I'm issuing ‘procldd' for a process and AIX shows me the loaded shared libraries. I'm collecting these libraries and counting their size. They were 350MB. After this, I'm issuing ‘ps vx' and I'm seeing that the process takes 130MB from AIX's... (1 Reply)
Discussion started by: jhatzics
1 Replies

5. Solaris

How to manage the shared libraries on Solaris 10?

Please tell me how to manage the shared library on solaris 10! which file to configure the library path? which environment variable contains these paths ? how to define the new library path? thanks all! (2 Replies)
Discussion started by: quyetbm
2 Replies

6. UNIX for Advanced & Expert Users

Shared Libraries- CRITICAL !!

Hi, I am trying to create a shared library from a .c file using gcc -c -fpic -I/usr/local/include Chksum.C -o Chksum.o gcc -shared -o Chksum.o when i try to load this shared library in tclsh % load I get the following error: couldn't load... (1 Reply)
Discussion started by: archana485
1 Replies

7. UNIX for Advanced & Expert Users

static and shared libraries

can someone explain whether my understanding is correct lets suppose we have a program that uses library x. if x is static then the code of x will be part of our program, so if we're going to have 5 executables of our program, then each executable will have x as part of it. Also, x does not... (2 Replies)
Discussion started by: JamesByars
2 Replies

8. Linux

Shared Libraries

How do i make a library shared say i have a library which i have just compiled. I want to make it shared how do i make it Next Queation is what is the difference between & :rolleyes: (1 Reply)
Discussion started by: wojtyla
1 Replies

9. UNIX for Dummies Questions & Answers

Clarification about shared Libraries

I have a doubt about the shared libraries. Where do you set the path for the shared libaries, for the dynamic loader to locate. Any suggestion would be of great help. thanks (3 Replies)
Discussion started by: ramkumar_gr
3 Replies

10. Programming

shared libraries

I am compiling code which produces .a and .la libraries. How can I produce .so libraries? I know that gcc -shared does but how? (2 Replies)
Discussion started by: thalex
2 Replies
Login or Register to Ask a Question
LIBBASH(7)							  libbash Manual							LIBBASH(7)

libbash -- A bash shared libraries package. DESCRIPTION
libbash is a package that enables bash dynamic-like shared libraries. Actually its a tool for managing bash scripts whose functions you may want to load and use in scripts of your own. It contains a 'dynamic loader' for the shared libraries ( ldbash(1)), a configuration tool (ldbashconfig(8)), and some libraries. Using ldbash(1) you are able to load loadable bash libraries, such as getopts(1) and hashstash(1). A bash shared library that can be loaded using ldbash(1) must answer 4 requirments: 1. It must be installed in $LIBBASH_PREFIX/lib/bash (default is /usr/lib/bash). 2. It must contain a line that begins with '#EXPORT='. That line will contain (after the '=') a list of functions that the library exports. I.e. all the function that will be usable after loading that library will be listed in that line. 3. It must contain a line that begins with '#REQUIRE='. That line will contain (after the '=') a list of bash libraries that are required for our library. I.e. every bash library that is in use in our bash library must be listed there. 4. The library must be listed (For more information, see ldbashconfig(8)). Basic guidelines for writing library of your own: 1. Be aware, that your library will be actually sourced. So, basically, it should contain (i.e define) only functions. 2. Try to declare all variables intended for internal use as local. 3. Global variables and functions that are intended for internal use (i.e are not defined in '#EXPORT=') should begin with: __<library_name>_ For example, internal function myfoosort of hashstash library should be named as __hashstash_myfoosort This helps to avoid conflicts in global name space when using libraries that come from different vendors. 4. See html manual for full version of this guide. AUTHORS
Hai Zaar <> Gil Ran <> SEE ALSO
ldbash(1), ldbashconfig(8), getopts(1), hashstash(1) colors(1) messages(1) urlcoding(1) locks(1) Linux Epoch Linux