zoukankan      html  css  js  c++  java
  • linux gcc 编译的so文件 运行时无法找到 错误:cannot open shared object file: No such file or directory

    对自己打包的so文件进行测试,编译不报错 但是运行时 出现错误:cannot open shared object file: No such file or directory

    但是so文件明明已经放在当前目录下了

    折腾一下午,发现这是linux下so库经常会出现的错误,测试程序的可执行文件名字为start, 用ldd start可以发现程序寻找每个so的路径基本为系统路径,lib或者usr/lib等。

    而当前目录并不在查找范围内,因此显示无法找到

    解决方法:

    执行

    export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:.  
    最后的 . 表示把当前目录加入到动态链接库查找的目录中去

    重新运行 成功!

    上述方法设置是临时的 另外一种方法:

    sudo vim /etc/ld.so.conf

    添加库路径 如 ./ (表示当前目录)
    添加保存后

    sudo ldconfig

    即可
    ————————————————
    版权声明:本文为CSDN博主「lucas-nlp」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
    原文链接:https://blog.csdn.net/qq_31747765/article/details/81839529

  • 相关阅读:
    OO助教总结
    OO2019第四单元作业总结
    OO2019第三单元作业总结
    OO2019第二单元作业
    OO2019第一单元作业总结
    OO第一单元作业总结
    BUAA_OO_2020_Unit4_Summary
    BUAA_OO_2020_Unit3_Summary
    BUAA_OO_2020_Uint2_Summary
    闫金柱-OO第一单元总结
  • 原文地址:https://www.cnblogs.com/csstudy/p/11690688.html
Copyright © 2011-2022 走看看