找回密码
 注册
关于网站域名变更的通知
查看: 222|回复: 1
打印 上一主题 下一主题

Linux下常见的~/.bashrc、/etc/profile、/etc/ld.so.config小科普以及caffe编译遇...

[复制链接]
  • TA的每日心情

    2019-11-20 15:22
  • 签到天数: 2 天

    [LV.1]初来乍到

    跳转到指定楼层
    1#
    发表于 2020-5-22 13:21 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

    EDA365欢迎您登录!

    您需要 登录 才可以下载或查看,没有帐号?注册

    x
    ~/.bashrc + U7 i% {  H9 h8 M/ ^
    用于非交互式模式,即nonlogin shell,在这种模式下,shell不与你进行交互,而是读取存放在文件中的命令,并且执行它们。当它读到文件的结尾,shell也就终止了。/etc/bashrc:为每一个运行bash shell的用户执行此文件.当bash shell被打开时,该文件被读取。 & a# J5 N0 P1 V$ o$ X' ?
    source ~/.bashrc2 S& j7 T4 }% o
    # Z3 Q. d* r7 x5 l1 d+ f4 S
    /etc/profile
    : F- e( D  [: N$ K) ^用于交互模式,即login shell,这个文件是每个用户登录时都会运行的环境变量设置,并从/etc/profile.d目录的配置文件中搜集shell的设置。
    + f( \2 d; h" V) T如安装CUDA时:
    8 O, X) @6 \, L' i( i) y- e. z1 ?/ [: d1 i# ^0 r7 c7 [3 v" G
    sudo gedit /etc/profile, add the following path: ( f" b! L* |- Y
            >>export PATH=/usr/local/cuda/bin: $PATH6 ~* i1 E# q6 W# G7 y$ \% ^6 K
            >>export LD_LIBRARY_PATH=/usr/local/cuda/lib64: $LD_LIBRARY_PATH
    9 E' T4 ?7 d9 \/ D" h% d
    " T+ Z" `/ w" N+ Q; W9 a
    % p" ~4 i4 k. P- c% v  xcaffe编译时如果有这样的错误:’libprotobuf.so.10 is not found’ 8 W2 C. _0 x3 [% ~
    则需要在profile下添加路径$ l1 f. C9 R/ |0 v
    1 P" V9 ]& m8 c0 s# `; p
    >>sudo gedit /etc/profile
    " O" l) z4 m, f9 q5 p) C3 n  export LD_LIBRARY_PATH=/usr/local/lib: $LD_LIBRARY_PATH
      G, }* d, i) |" U% e. \  A* n>>source /etc/profile
    " q: D- V- q# S>>cd /usr/local/lib/ m- q5 c2 |& @8 C/ L8 D
    >>sudo ln -sf ~/anaconda2/lib/libprotobuf.so.10 libprotobuf.so.10$ J7 s# e2 H0 Z$ {! k: _, E
    5 }0 U/ X8 d( T& p) N/ M2 p
    3 k6 H# z: X# s  \; E! p$ B
    两者关系:/etc/profile中设定的变量(全局)的可以作用于任何用户,而~/.bashrc等中设定的变量(局部)只能继承/etc/profile中的变量,他们是”父子”关系。2 c- r& R& O  C# V5 d
    ) I& W6 l; G6 D5 Y# p- B
    ld.so.conf 6 }8 S% _9 p: g- [4 X, \  }9 {6 L
    动态程序ln相比于静态程序sln小很多,但是如果动态可执行程序不包含运行所需的所有函数,Linux 的动态载入器负责将这些程序和所有必需的共享库一起装入。 & o( w- k5 c3 ]! h3 k6 T$ h
    动态装入器找到共享库要依靠两个文件:/etc/ld.so.conf 和 /etc/ld.so.cache。我们可以通过cat查看ld.so.config * j/ R# a  E& D: j
    当 ldconfig 操作结束时,您会有一个最新的 /etc/ld.so.cache 文件,它反映您对 /etc/ld.so.conf 所做的更改。从这一刻起,动态装入器在寻找共享库时会查看您在 /etc/ld.so.conf 中指定的所有新目录。
    ( r- U7 P) a. v: M+ B0 ~LD_LIBRARY_PATH8 N* N7 n+ {4 s; u+ A
    , h: f4 ^: v9 w3 b
      要指示动态装入器首先检查某个目录,请将 LD_LIBRARY_PATH 变量设置成您希望搜索的目录。多个路径之间用冒号分隔;例如: 7 ?9 w- l. z5 p
      # export LD_LIBRARY_PATH=”/usr/lib/old:/opt/lib”
    5 x3 _' u" f2 E4 F& Kcaffe编译时,error while loading shared libraries: XXX.so: cannot open shared object file: No such file or directory。则需要将路径加入共享文件库:# i/ x' i* M5 X

    & U' y- ~/ S3 f1 `- g- osudo su/ f$ y. E& E. W- G+ @4 n
    cat /etc/ld.so.conf) g% v) v+ o3 V3 w4 S8 O
    echo "XXX.soPATH" >> /etc/ld.so.conf% }+ K8 Z+ [+ n4 r9 j
    ldconfig
    ( w/ u( r5 r: l! `/ u9 R) x) V$ p0 u$ `+ r8 i+ @- h
    6 g* `4 n! j% |$ P
    9 L5 m/ e4 J; h$ k; U, F, {% z

    该用户从未签到

    2#
    发表于 2020-5-22 14:29 | 只看该作者
    /.bashrc、/etc/profile、/etc/ld.so.config小科普
    您需要登录后才可以回帖 登录 | 注册

    本版积分规则

    关闭

    推荐内容上一条 /1 下一条

    EDA365公众号

    关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )

    GMT+8, 2025-11-26 02:00 , Processed in 0.125000 second(s), 23 queries , Gzip On.

    深圳市墨知创新科技有限公司

    地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

    快速回复 返回顶部 返回列表