zoukankan      html  css  js  c++  java
  • linux环境变量和库搜索路径

    linux 环境变量和库搜索路径

    1.环境变量

    • liunx环境变量查看命令:echo $PATH

    如:

    zhaob@zhaob:~/srs/srs.oschina/trunk$ echo $PATH
    /home/zhaob/bin:/home/zhaob/.local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin
    • 用途:可执行程序的直接查找路径即对于设置了环境变量的目录,其里面的应用程序可以直接在任意终端直接启动
    • 设置:

      方法一:export PATH=PATH:/XXX 但是退出当前终端后就失效

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

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

                     2. source .bashrc  (Source命令也称为“点命令”,也就是一个点符号(.)。

                         source命令通常用于重新执行刚修改的初始化文件,使之立即生效,而不必注销并重新登录)

      

    2.库搜索路径

    • 动态库的搜索路径的先后顺序是:
      1.编译目标代码时指定的动态库搜索路径;
      2.环境变量LD_LIBRARY_PATH指定的动态库搜索路径;
      3.配置文件/etc/ld.so.conf中指定的动态库搜索路径;
      4.默认的动态库搜索路径/lib和/usr/lib;
      这个顺序是compile gcc时写在程序内的,通常软件源代码自带的动态库不会太多,而我们的/lib和/usr/lib只有root权限才可以修改,而且配置文件/etc/ld.so.conf也是root的事情,所以我们如果需要对动态库搜索路径进行修改就,只好对LD_LIBRARY_PATH进行操作。

     

    • 设置:

      方法一: export  LD_LIBRARY_PATH=LD_LIBRARY_PATH:/XXX 但是退出当前终端后就失效

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

          1. 在其中添加例如export LD_LIBRARY_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  生效

     

    3. 自定义脚本文件定义环境变量

    将自定义脚本存入/etc/profile.d 目录 ,每次开机启动后自动加载。

    自定义脚本定义需要的环境变量和库搜索路径

    例:

    export PRJHOME=/home/test
    
    
    export PRJLIB=$PRJHOME/lib
    
    LD_LIBRARY_PATH=$PRJLIB:$LD_LIBRARY_PATH ;export LD_LIBRARY_PATH 
    PATH=$PRJHOME:$PATH; export PATH 

     

    参考:https://www.jianshu.com/p/a62e1d327023

    https://blog.csdn.net/qq_19004627/article/details/79090052
  • 相关阅读:
    原:Myeclipse10+Egit+bitbucket实现版本控制
    Myeclipse10使用git
    MyEclipse 10 下在线安装插件
    转:git windows中文目录乱码问题解决
    STUN和TURN技术浅析
    原:android4.2.2蓝牙源码阅读--bluedroid部分
    原创:超简单!windows配置NDK开发环境使用JNI
    c++对象的生命周期
    C++中虚析构函数的作用
    windows 命令行下 简单好用的查看端口占用情况的方法
  • 原文地址:https://www.cnblogs.com/zhaobinyouth/p/13972823.html
Copyright © 2011-2022 走看看