【问题标题】:Linking to a Specific Library with C使用 C 链接到特定库
【发布时间】:2012-01-12 22:00:30
【问题描述】:

我必须使用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

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

【问题讨论】:

    标签: c gcc linker


    【解决方案1】:

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

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

    【讨论】:

    • 快速而有用的答案。谢谢你:)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2020-09-01
    • 2011-04-30
    • 2011-09-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多