02-06-2010
A shared library is not an archive (file.a) so it cannot contain symbol references that are found in object code (file.o) It contains PIC (position independent code) references - meaning the entry points in a .so (file.so or file.sl) can be linked at runtime into a block of code with any offset (address)
You are mixing apples and oranges. In order to do what you wanted, the module has to be compiled as PIC. See the man/info page for gcc.
PS your lat/long resolves to the middle of farmland You work from home I guess.
Last edited by jim mcnamara; 02-06-2010 at 07:27 PM..
9 More Discussions You Might Find Interesting
1. UNIX for Advanced & Expert Users
How do I go about doing this??? Is there something to it other than cleaning up useless files?? if you have knowledge concerning this, please give your suggestions
also, is it possible or safe to compress an entire filesystem. how do you go about doing this??? any information is appreciated (7 Replies)
Discussion started by: IMPORTANT
7 Replies
2. Solaris
Hi there,
It's my first time here. I have an hard drive need a maintenance.
here the result of metastat :
Sun Microsystems Inc. SunOS 5.9 Generic May 2002
host2{11}: metastat
d1: RAID
State: Needs Maintenance
Invoke: metareplace d1 c2t2d0s1 <new device>
Interlace:... (3 Replies)
Discussion started by: Juterassee
3 Replies
3. Shell Programming and Scripting
Hi:
I have a library that it only offers Makefile for building static library. It built libxxx.a file. How do I in any way build a shared library? (either changin the Makefile or direct script or command to build shared library)
Thanks. (1 Reply)
Discussion started by: cpthk
1 Replies
4. UNIX for Dummies Questions & Answers
hELLO PEOPLE I AM DETECTING IN THE MIRROR ON MY SPARC THAT IS A DISK ASKING FOR MAINTENANCE.
d0: Mirror
Submirror 0: d10
State: Needs maintenance
Submirror 1: d20
State: Needs maintenance
Pass: 1
Read option: roundrobin (default)
Write option: parallel... (0 Replies)
Discussion started by: enkei17
0 Replies
5. Shell Programming and Scripting
Hi Guys
i wonder if anyone can help. i want to create a script that checks multiple servers for disk space availible, cpu usage for past 24 hours. as well as check if all the hardware components are still doing their jobs. i will be doing this in the tcsh, can anyone help? OS = Sun Solaris 5.10... (2 Replies)
Discussion started by: brian112
2 Replies
6. Linux
Hello,
./configure script fails to configure libsf. Please check the following last few lines of configure script error.
checking for db1/db.h... no
checking for db.h... yes
checking for dbopen in -ldb1... no
configure: error: No libdb? No libsf.
But find command shows the following; ... (4 Replies)
Discussion started by: vectrum
4 Replies
7. AIX
I'm trying to install libiconv to AIX 7.1 from an rpm off of the perzl site. The rpm appears to install but I get this error message.
add shr4.o shared members from /usr/lib/libiconv.a to /opt/freeware/lib/libiconv.a
add shr.o shared members from /usr/lib/libiconv.a to ... (5 Replies)
Discussion started by: kneemoe
5 Replies
8. Solaris
Hi! apache and tomcat are installed in default on solaris 10, after some configuration tomcat is enable, but apache status is maintenance... How to change its status to online...? The log say
And when I tape the svcs -xv commande, this is the result
bash-3.00# svcs -xv... (2 Replies)
Discussion started by: tood
2 Replies
9. Solaris
i booted into maintenance mode
boot -- -s
from the console
I got the
Root password for system maintenance (control-d to bypass)
I did control -d
and then logged in
it told me that I was booting into boot -s
but after I did a control -d and logged in
who -r shows
... (9 Replies)
Discussion started by: goya
9 Replies
LEARN ABOUT FREEBSD
dladdr
DLADDR(3) BSD Library Functions Manual DLADDR(3)
NAME
dladdr -- find the shared object containing a given address
LIBRARY
Standard C Library (libc, -lc)
SYNOPSIS
#include <dlfcn.h>
int
dladdr(const void *addr, Dl_info *info);
DESCRIPTION
The dladdr() function queries the dynamic linker for information about the shared object containing the address addr. The information is
returned in the structure specified by info. The structure contains at least the following members:
const char *dli_fname The pathname of the shared object containing the address.
void *dli_fbase The base address at which the shared object is mapped into the address space of the calling process.
const char *dli_sname The name of the nearest run-time symbol with a value less than or equal to addr. When possible, the symbol name is
returned as it would appear in C source code.
If no symbol with a suitable value is found, both this field and dli_saddr are set to NULL.
void *dli_saddr The value of the symbol returned in dli_sname.
The dladdr() function is available only in dynamically linked programs.
ERRORS
If a mapped shared object containing addr cannot be found, dladdr() returns 0. In that case, a message detailing the failure can be
retrieved by calling dlerror().
On success, a non-zero value is returned.
SEE ALSO
rtld(1), dlopen(3)
HISTORY
The dladdr() function first appeared in the Solaris operating system.
BUGS
This implementation is bug-compatible with the Solaris implementation. In particular, the following bugs are present:
o If addr lies in the main executable rather than in a shared library, the pathname returned in dli_fname may not be correct. The pathname
is taken directly from argv[0] of the calling process. When executing a program specified by its full pathname, most shells set argv[0]
to the pathname. But this is not required of shells or guaranteed by the operating system.
o If addr is of the form &func, where func is a global function, its value may be an unpleasant surprise. In dynamically linked programs,
the address of a global function is considered to point to its program linkage table entry, rather than to the entry point of the func-
tion itself. This causes most global functions to appear to be defined within the main executable, rather than in the shared libraries
where the actual code resides.
o Returning 0 as an indication of failure goes against long-standing Unix tradition.
BSD
February 5, 1998 BSD