diff options
| author | John Ogness <john.ogness@linutronix.de> | 2019-01-28 19:42:15 +0106 |
|---|---|---|
| committer | John Ogness <john.ogness@linutronix.de> | 2019-01-28 19:42:15 +0106 |
| commit | 16c579d5fbb7ac62bf2f6f105d56d46e7409f74e (patch) | |
| tree | 69cbd7fb122fe7d668385964c0f02dce59d61a02 /schulung_tools/linking/shared_library.txt | |
| parent | 9a7ca2ce530c59abcdccb8a730c53c6098b3da3a (diff) | |
linking: move text docs out of Makefile example
The text docs are general references showing how to build, link,
and verify dynamic libraries and executables. They are not specific
to any build system.
Signed-off-by: John Ogness <john.ogness@linutronix.de>
Diffstat (limited to 'schulung_tools/linking/shared_library.txt')
| -rw-r--r-- | schulung_tools/linking/shared_library.txt | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/schulung_tools/linking/shared_library.txt b/schulung_tools/linking/shared_library.txt new file mode 100644 index 0000000..1dd0f9f --- /dev/null +++ b/schulung_tools/linking/shared_library.txt @@ -0,0 +1,20 @@ +# build shared library +gcc -fPIC -shared -Wl,-soname,libhello.so.1 -olibhello.so.1.0.3 libhello.c + +# install shared library +sudo mkdir -p /opt/myfirma/lib +sudo cp libhello.so.1.0.3 /opt/myfirma/lib + +# add custom path to dynamic loader search path +echo "/opt/myfirma/lib" | sudo tee /etc/ld.so.conf.d/myfirma.conf + +# refresh dynamic loader cache +sudo ldconfig + +# verify custom library is in cache +/sbin/ldconfig -p | grep libhello.so.1 + +# compile program using custom library +ln -s /opt/myfirma/lib/libhello.so.1.0.3 libhello.so +gcc -L. -ohello hello.c -lhello +rm libhello.so |
