使用C链接到特定库

时间:2012-01-12 22:00:31

标签: c gcc linker

我必须使用SNAP C库。

我使用以下命令编译了我的文件snap_test.c:

gcc -fopenmp -c -I/home/myName/SNAPDIR/include snap_test.c 

然后将其与图书馆联系起来:

gcc -fopenmp -o snap_test -L/home/myName/SNAPDIR/lib -lsnap snap_test.o 

但是运行该程序会导致错误:

./snap_test: error while loading shared libraries: libsnap.so.0: cannot open shared object file: No such file or directory

在lib-dir中有那些目录和文件:

libsnap.a  
libsnap.la  
libsnap.so        (dir)
libsnap.so.0      (dir)
libsnap.so.0.0.0

我猜问题是库的不同版本?!

1 个答案:

答案 0 :(得分:2)

您需要将/home/myName/SNAPDIR/lib添加到LD_LIBRARY_PATH

$ export LD_LIBRARY_PATH+=:/home/myName/SNAPDIR/lib