找回密码
 注册
关于网站域名变更的通知
查看: 195|回复: 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
    / r. _3 L8 c; M- ?2 x用于非交互式模式,即nonlogin shell,在这种模式下,shell不与你进行交互,而是读取存放在文件中的命令,并且执行它们。当它读到文件的结尾,shell也就终止了。/etc/bashrc:为每一个运行bash shell的用户执行此文件.当bash shell被打开时,该文件被读取。 $ g9 B3 a" E5 L3 d, U" }0 _2 V
    source ~/.bashrc- Z% m5 T1 V5 B0 ~/ w& y6 W/ v* K, [
    4 n  f# ?4 u, P; H: Z- M  u
    /etc/profile ) g/ t4 p$ s; h0 i* u
    用于交互模式,即login shell,这个文件是每个用户登录时都会运行的环境变量设置,并从/etc/profile.d目录的配置文件中搜集shell的设置。
    9 f6 q& ?! R0 |: |: y6 ?1 K* B! a$ v; a如安装CUDA时:. x* D% l7 `' A% Q
      X3 q) f# i6 h
    sudo gedit /etc/profile, add the following path:
    8 _8 |; e4 [( L  y. ]) P        >>export PATH=/usr/local/cuda/bin: $PATH% W) L7 ^! R2 k7 B
            >>export LD_LIBRARY_PATH=/usr/local/cuda/lib64: $LD_LIBRARY_PATH2 T3 v1 w* Q- ~6 `' H2 P7 C

    ! t5 @, K. D& B, o) I; \& R' q8 G( `
    caffe编译时如果有这样的错误:’libprotobuf.so.10 is not found’ ( j$ g2 y# y& a
    则需要在profile下添加路径* d' f8 t' G6 ^; H' G/ D

    9 _7 Q7 l' t# I3 _>>sudo gedit /etc/profile% \& z" p$ v' l8 ^& h/ t7 ~
      export LD_LIBRARY_PATH=/usr/local/lib: $LD_LIBRARY_PATH! i. m4 w8 X" |& _+ {  I! M
    >>source /etc/profile
    1 _7 w4 B: U* X" n* R>>cd /usr/local/lib" ^$ U0 D- H4 K8 p, J& G" c3 f# x
    >>sudo ln -sf ~/anaconda2/lib/libprotobuf.so.10 libprotobuf.so.10
    & T3 X' s2 G  ^/ m' i- U% U# V9 A
    3 r! p7 z( `3 j$ o8 y- u8 w" ?1 \+ k/ |% K% c
    两者关系:/etc/profile中设定的变量(全局)的可以作用于任何用户,而~/.bashrc等中设定的变量(局部)只能继承/etc/profile中的变量,他们是”父子”关系。
    ) {9 q/ X: ]% F7 Y& b9 ]  b- ~: }
    9 q+ w3 ~2 M5 A( t6 d- eld.so.conf
    ! y' b1 r8 d4 e0 ?5 r, b# U动态程序ln相比于静态程序sln小很多,但是如果动态可执行程序不包含运行所需的所有函数,Linux 的动态载入器负责将这些程序和所有必需的共享库一起装入。 , Q+ i6 d$ L& y8 j: g' w, N
    动态装入器找到共享库要依靠两个文件:/etc/ld.so.conf 和 /etc/ld.so.cache。我们可以通过cat查看ld.so.config
    : I4 h& F' [3 h% v当 ldconfig 操作结束时,您会有一个最新的 /etc/ld.so.cache 文件,它反映您对 /etc/ld.so.conf 所做的更改。从这一刻起,动态装入器在寻找共享库时会查看您在 /etc/ld.so.conf 中指定的所有新目录。
    7 i1 R3 l9 y: P: S, SLD_LIBRARY_PATH
    $ J( ~7 ~! M0 l( Y7 T$ C7 B; o1 y9 n3 q
      要指示动态装入器首先检查某个目录,请将 LD_LIBRARY_PATH 变量设置成您希望搜索的目录。多个路径之间用冒号分隔;例如: / M0 A5 ]& J3 o# P* N
      # export LD_LIBRARY_PATH=”/usr/lib/old:/opt/lib” 0 U" q6 Y' |/ W' l  \
    caffe编译时,error while loading shared libraries: XXX.so: cannot open shared object file: No such file or directory。则需要将路径加入共享文件库:
    + K2 h$ c5 R5 O# f
    7 N. v9 L' r/ H( B  h# t% W% R& xsudo su% U# r7 F; A8 d+ b! p1 O
    cat /etc/ld.so.conf- z" n- v/ V; m/ {
    echo "XXX.soPATH" >> /etc/ld.so.conf
    : n5 z; s8 k+ V( r7 N+ |ldconfig
    4 D( p, g8 p- g. G7 U$ b
    0 B2 c+ ]- ?5 `1 L
    . G& y4 b' m; V1 v
    . l+ O4 r( L1 Z

    该用户从未签到

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

    本版积分规则

    关闭

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

    EDA365公众号

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

    GMT+8, 2025-7-3 23:32 , Processed in 0.078125 second(s), 23 queries , Gzip On.

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

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

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