2

I create shared library libpl.so.

I use this command to create connections:

ln -s libpl.so.1.0.1 libpl.so.1
ln -s libpl.so.1.0.1 libpl.so

And now I try to compile my program using:

gcc main.c -o main -L. -libpl

but I have erros:

/usr/bin/ld: cannot find -libpl
collect2: error: ld returned 1 exit status

What should I do to fix it ? How compile it ?

Ice
  • 1,447
  • 4
  • 21
  • 48
  • Close, but still doesn't work ./main: error while loading shared libraries: liblp.so.1: cannot open shared object file: No such file or directory – Ice Apr 24 '16 at 14:33
  • if running fails during runtime do the following - `export LD_LIBRARY_PATH=./:$LD_LIBRARY_PATH` – rakib_ Apr 24 '16 at 16:59

2 Answers2

3

This line should help:

export LD_LIBRARY_PATH=/path/to/libpl.so:$LD_LIBRARY_PATH

You should follow this tutorial on shared libraries on linux

This tutorial may answer to all your questions.

romain-aga
  • 1,421
  • 8
  • 14
1

This line:

export LD_LIBRARY_PATH="$LD_LIBRARY_PATH:`pwd`"

working correctly.

Compiling with:

gcc main.c -o main -L. -lpl

Runing with:

./main
Ice
  • 1,447
  • 4
  • 21
  • 48