Linux环境变量设置(PATH/LIBRARY_PATH/LD_LIBRARY_PATH)

简介: Linux环境变量设置(PATH/LIBRARY_PATH/LD_LIBRARY_PATH)

1. PATH:  可执行程序的查找路径

1.1 PATH变量的作用

查看当前环境变量中可执行程序的包含路径:

echo $PATH

1.2 增加/删除PATH路径设置:

方法一: export PATH=PATH:/XXX 但是登出后就失效

方法二:修改~/.bashrc或~/.bash_profile或系统级别的/etc/profile

                 1. 在其中添加例如export PATH=/opt/ActivePython-2.7/bin:$PATH

                 2. source .bashrc 使修改生效

2. LIBRARY_PATH程序编译期间查找动态链接库时指定查找共享库的路径

例如,指定gcc编译需要用到的动态链接库的目录。设置方法如下(其中,LIBDIR1和LIBDIR2为两个库目录):

export LIBRARY_PATH=LIBDIR1:LIBDIR2:$LIBRARY_PATH

3. LD_LIBRARY_PATH: 动态库的查找路径

3.1 LD_LIBRARY_PATH的作用

LD_LIBRARY_PATH环境变量用于程序加载运行期间查找找动态链接库时指定除了系统默认路径之外的其他路径

注意,LD_LIBRARY_PATH中指定的路径会在系统默认路径之前进行查找。

比喻我们用minixml的开源库,编译通过,结果在运行的时候,报找不到动态库错误

这个错误怎么解决呢?

ld默认的目录是/lib和/usr/lib,而开源库编译生成的安装目录是/usr/local/lib,所以这个问题是没有配置环境变量LD_LIBRARY_PATH=/usr/local/lib

使用export LD_LIBRARY_PATH=/usr/local/lib

3.2 增加/修改LD_LIBRARY_PATH路径设置

方法一: export  LD_LIBRARY_PATH=LD_LIBRARY_PATH:/XXX 但是登出后就失效

方法二:  修改~/.bashrc或~/.bash_profile或系统级别的/etc/profile

                 1. 在其中添加例如export PATH=/opt/ActiveP/lib:$LD_LIBRARY_PATH

                 2. source .bashrc  (Source命令也称为“点命令”,也就是一个点符号(.)。source命令通常用于重新执行刚修改的初始化文件,使之立即生效,而不必注销并重新登录)

方法三:这个没有修改LD_LIBRARY_PATH但是效果是一样的实现动态库的查找,

               1. /etc/ld.so.conf下面加一行/usr/local/mysql/lib

               2. 保存过后ldconfig一下(ldconfig 命令的用途,主要是在默认搜寻目录(/lib和/usr/lib)以及动态库配置文件/etc/ld.so.conf内所列的目录下,搜索出可共享的动态链接库(格式如前介绍,lib*.so*),进而创建出动态装入程序(ld.so)所需的连接和缓存文件.缓存文件默认为/etc/ld.so.cache,此文件保存已排好序的动态链接库名字列表.)

LIBRARY_PATH和LD_LIBRARY_PATH的区别与使用:

开发时,设置LIBRARY_PATH,以便gcc能够找到编译时需要的动态链接库。

发布时,设置LD_LIBRARY_PATH,以便程序加载运行时能够自动找到需要的动态链接库。

参看链接:

https://baike.baidu.com/item/LD_LIBRARY_PATH/9391538?fr=aladdin

https://www.cnblogs.com/youyoui/p/10680329.html

https://www.cnblogs.com/lovychen/p/10911600.html

相关文章
|
10天前
|
关系型数据库 MySQL Linux
Linux系统如何设置自启动服务在MySQL数据库启动后执行?
【10月更文挑战第25天】Linux系统如何设置自启动服务在MySQL数据库启动后执行?
57 3
|
1月前
|
Ubuntu Linux
Linux实践|设置静态 IP 地址
Linux实践|设置静态 IP 地址
54 0
Linux实践|设置静态 IP 地址
|
1月前
|
Linux 应用服务中间件 nginx
Linux下权限设置之suid、sgid、sticky
Linux下权限设置之suid、sgid、sticky
|
2月前
|
NoSQL Linux Redis
Linux Redis 服务设置开机自启动
【9月更文挑战第2天】在 Linux 系统中,可使用两种方法设置 Redis 开机自启动:一是通过创建 `redis.service` 文件并利用 systemd 进行管理,包括定义服务参数和启动脚本;二是编辑 `/etc/rc.local` 文件,在其中添加启动命令。推荐使用 systemd 方法,因为它更符合现代 Linux 系统的设计理念。设置完成后,可通过 `sudo systemctl status redis.service` 检查服务状态。
261 3
|
2月前
|
Linux Shell
10-8|linux date设置时间
10-8|linux date设置时间
|
2月前
|
Unix Linux Python
Cron定时设置在linux和mac中的使用
文章详细说明了如何在Linux和Mac操作系统中使用Cron进行定时任务的设置,并提供了多个Cron表达式的实例。
36 0
|
2月前
|
Linux
linux内核执行fork时对写时复制的设置
linux内核执行fork时对写时复制的设置
|
Linux 开发工具
linux的管道和环境变量PATH
PATH这个环境变量详解
115 0
linux的管道和环境变量PATH
|
Linux
Linux: 环境变量PATH设置错误的补救
Linux: 环境变量PATH设置错误的补救
182 0