TA的每日心情 | 怒 2019-11-20 15:22 |
|---|
签到天数: 2 天 [LV.1]初来乍到
|
EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
~/.bashrc
2 G2 v4 E2 G+ f4 u' W( G% u用于非交互式模式,即nonlogin shell,在这种模式下,shell不与你进行交互,而是读取存放在文件中的命令,并且执行它们。当它读到文件的结尾,shell也就终止了。/etc/bashrc:为每一个运行bash shell的用户执行此文件.当bash shell被打开时,该文件被读取。
+ @, S8 C0 z$ n2 Y$ bsource ~/.bashrc
: \& F% N$ P# v" w# U S" @ J4 b" V; ^* m- \# U2 W! [5 d; { Q
/etc/profile
. |7 o% C& n' U/ V3 e1 E用于交互模式,即login shell,这个文件是每个用户登录时都会运行的环境变量设置,并从/etc/profile.d目录的配置文件中搜集shell的设置。 ( {0 r# c6 G5 C
如安装CUDA时:: d H! w6 @5 j: ~8 G
: C9 [$ c, c. M/ Fsudo gedit /etc/profile, add the following path:
$ c' m- \4 J* u- {9 C4 Y j' R) L8 ^ >>export PATH=/usr/local/cuda/bin: $PATH
2 f( H" K# ^, ]. o! i- g >>export LD_LIBRARY_PATH=/usr/local/cuda/lib64: $LD_LIBRARY_PATH
6 l U ~) I! c! d4 l2 X; b" N- a( r6 U0 N
' ~6 |- u2 U9 ~# G- _& B
caffe编译时如果有这样的错误:’libprotobuf.so.10 is not found’ $ Z" |# \ P# E% C
则需要在profile下添加路径( a0 \/ W: A) `& \
/ a" E5 Z( v7 F( P>>sudo gedit /etc/profile
' i2 x5 _* V- s/ |( T export LD_LIBRARY_PATH=/usr/local/lib: $LD_LIBRARY_PATH
6 ?9 E$ v) Q v$ J>>source /etc/profile
, d4 e `5 \6 R>>cd /usr/local/lib" L* j3 ?" j$ \* B6 c
>>sudo ln -sf ~/anaconda2/lib/libprotobuf.so.10 libprotobuf.so.101 s2 s) H, P2 a. ?, r* o! N) L
; D: v7 k3 d8 `
2 C* X! K& [+ T两者关系:/etc/profile中设定的变量(全局)的可以作用于任何用户,而~/.bashrc等中设定的变量(局部)只能继承/etc/profile中的变量,他们是”父子”关系。
" ?1 W. [* d# q) y8 D5 e
/ o' ?; d- E& d. Fld.so.conf
k- y' a9 i8 X# g. _6 g动态程序ln相比于静态程序sln小很多,但是如果动态可执行程序不包含运行所需的所有函数,Linux 的动态载入器负责将这些程序和所有必需的共享库一起装入。
9 i$ g9 B$ ? @. l4 Z动态装入器找到共享库要依靠两个文件:/etc/ld.so.conf 和 /etc/ld.so.cache。我们可以通过cat查看ld.so.config + }: v" o z6 }* n
当 ldconfig 操作结束时,您会有一个最新的 /etc/ld.so.cache 文件,它反映您对 /etc/ld.so.conf 所做的更改。从这一刻起,动态装入器在寻找共享库时会查看您在 /etc/ld.so.conf 中指定的所有新目录。 * h, T7 b3 F9 ?
LD_LIBRARY_PATH7 p$ r% S3 A! M: u* V# ~3 u& y
/ l- e8 ~1 p( k$ ` X) ]1 E 要指示动态装入器首先检查某个目录,请将 LD_LIBRARY_PATH 变量设置成您希望搜索的目录。多个路径之间用冒号分隔;例如: ( }0 L& V8 s4 [# C/ [/ o
# export LD_LIBRARY_PATH=”/usr/lib/old:/opt/lib” " U0 O# u3 K5 m
caffe编译时,error while loading shared libraries: XXX.so: cannot open shared object file: No such file or directory。则需要将路径加入共享文件库:
+ b# h. C$ ]) n/ E" l& R- H, i, S
! a& }3 ~: Q' Q; T& ~* C, y7 @sudo su, k3 H9 H: M4 H7 ~$ J# o* S0 l
cat /etc/ld.so.conf) _4 ]/ E' U) F" k9 C5 e, P. ]" I
echo "XXX.soPATH" >> /etc/ld.so.conf" g+ l- a; m& G8 ~) S& ~& w
ldconfig
" X- R$ ]" D* _
6 V7 n2 F1 j; o+ o/ O) g
# R9 Q+ Z; G. @0 {0 E8 [# Y
) R9 ^) @+ E) W |
|