This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
How to link a static lib when build a shared lib ?
- From: Andy <hewanxiang at gmail dot com>
- To: gcc at gcc dot gnu dot org
- Date: Sat, 8 Aug 2009 20:04:41 +0800
- Subject: How to link a static lib when build a shared lib ?
Hi all,
I got that, glibc can support SHA in crypt lib since v2.7.
There is a requirement in my application to use SHA, but update the
whole glibc is too risky. So I want to build a specific crypt lib for
the module using crypt function in my application.
Now the calling graph seems like this, from a simple view.
crypt_user.c ----> call crypt() function in libcrypt.so
myutil.c -----> call functions in crypt_user.c, and it will be build
to a shared lib, libmyutil.so
Executable program : server -----> need to use libmyutil.so to work.
Now I can ONLY use the latest static lib libcrypt.a from the new
glibc. How should I use it ï Link it when build libmyutil.so or build
server ?
I tried to update my Makefile to link the libcrypt.a, but seems that
the called crypt function is not as I expected, it's still from the old glibc.
Could anybody give me a help with how to use the gcc option and write
a working Makefile ?
Any reply will be appreciated!
Thanks,