zoukankan      html  css  js  c++  java
  • 静态库路径配置

    存在问题:

      编译高博《视觉SLAM十四讲》的第六讲g2o_curve_fitting时,从thirdparty安装了g2o后,运行程序出现:
      error while loading shared libraries: libg2o_core.so: cannot open shared object file: No such file for directory
     

    问题原因:

      在默认情况下,编译器只会使用/lib和/usr/lib这两个目录下的库文件,通过源码包进行安装时,如果不指定--prefix会将库安装在/usr/local目录下,而又没有在文件/etc/ld.so.conf中添加 /usr/local/lib这个目录。这样虽然安装了源码包,但是使用时仍然找不到相关的.so库,就会报错。也就是说系统不知道安装了源码包。
     

    解决方法:

      在/etc/ld.so.conf中添加绝对路径/usr/local/lib

    具体步骤:

    1.用gedit打开/etc/ld.so.conf文件,添加内容:/usr/local/lib,由于不能直接保存,将此文件另存到home目录下。
    2.在home目录下
    sudo cp -i ld.so.conf /etc/ld.so.conf  //将原本的/etc/ld.so.conf文件覆盖
    sudo ldconfg  //利用ldconfg执行文件将/etc/ld.so.conf的数据读入高速缓存中

    结果:

      再次运行./g2o_curve_fitting 成功。

     

    网络资源:

    linux共享库,以及/etc/ld.so.conf文件的应用 (http://blog.csdn.net/oathevil/article/details/13564213)

    /etc/ld.so.conf 文件介绍http://blog.csdn.net/yjkwf/article/details/7545002

    /etc/ld.so.confldconfig PKG_CONFIG_PATH 

    http://blog.csdn.net/allwtg/article/details/5145306

    https://www.cnblogs.com/gaoxiang12/p/4770813.html

  • 相关阅读:
    【脑图】iOS的Crash分类和捕获
    Ruby03
    Ruby02
    Ruby01
    如何快速把一个十进制数转换为二进制?
    iOS
    互联网协议基本知识
    XCBB
    iOS
    iOS
  • 原文地址:https://www.cnblogs.com/ettie999/p/8889587.html
Copyright © 2011-2022 走看看