当前位置: 首页 > news >正文

详解Linux下的环境变量以及C++库文件和头文件、python库的配置

目录

Linux环境变量配置基本步骤

1.查看环境变量

2.设置环境变量

3.永久性设置环境变量

4.使用环境变量

C++ 库文件和头文件环境变量配置

1.配置so库文件的环境变量

2.配置头文件的环境变量

Python库环境变量配置

Linux配置执行文件环境变量


我们都习惯在Windows 上配置环境变量,例如 Windows设置系统环境变量即在path中添加配置路径即可;使用VS则在项目设置中配置库文件和头文件路径;使用vscode 则常用cmake编译,编写CMakeLists.txt 链接库文件或头文件即可。

而在Linux 环境中,则需要记住一些常用命令和常量值,在此总结如下,以供参考。

Linux环境变量配置基本步骤

在Linux中,环境变量是一些可被程序访问的全局变量,可以用于配置系统行为、定义软件的运行时参数和其他的目的。以下是环境变量配置的详细步骤:

1.查看环境变量

使用printenvecho $VARIABLE_NAME命令可以查看当前环境变量。printenv命令可以列出所有的环境变量,而echo $VARIABLE_NAME命令则可以输出指定环境变量的值。

2.设置环境变量

在Linux中,可以使用export命令将变量设置为环境变量。例如,要将MY_VAR设置为hello,可以运行

export MY_VAR=hello

也可以将多个变量设置为环境变量,例如:

export MY_VAR1=value1 export MY_VAR2=value2

3.永久性设置环境变量

如果想要在每次登录时自动加载环境变量,需要将环境变量添加到.bashrc文件中。这个文件是每个用户的个人bash配置文件,当用户登录时,它会自动加载。可以通过以下命令打开这个文件:

vi ~/.bashrc

在文件的末尾添加以下内容:

export MY_VAR=value

然后按下Esc键退出编辑模式,输入:wq保存并退出。

 配置完成之后需要执行

source ~/.bashrc 

命令来使环境变量生效。这个命令会重新加载 .bashrc 文件,让配置的环境变量生效。

4.使用环境变量

在程序中,可以使用$VARIABLE_NAME来引用环境变量的值。例如,在bash脚本中,可以使用以下代码来获取MY_VAR的值:

echo $MY_VAR

这将输出hello,这是我们在步骤2中设置的值。

总之,Linux的环境变量配置非常简单,只需要使用export命令即可将变量设置为环境变量,然后在程序中使用$VARIABLE_NAME来引用它们。对于需要在每次登录时自动加载的环境变量,只需将其添加到.bashrc文件中即可。

C++ 库文件和头文件环境变量配置

当编译C++程序时,如果依赖某些外部库文件或头文件,我们需要告诉编译器它们的位置。一种常见的做法是将这些路径设置为环境变量,以便编译器可以在编译过程中自动查找它们。以下是两个案例:

1.配置so库文件的环境变量

假设我们有一个名为libfoo.so的共享库,位于/usr/local/lib目录下。我们可以通过以下命令将其路径添加到LD_LIBRARY_PATH环境变量中:

export LD_LIBRARY_PATH=/usr/local/lib:$LD_LIBRARY_PATH

这样,当我们编译使用libfoo.so的程序时,编译器会自动在/usr/local/lib目录中查找该库文件。

2.配置头文件的环境变量

假设我们有一个名为foo.h的头文件,位于/usr/local/include目录下。我们可以通过以下命令将其路径添加到CPLUS_INCLUDE_PATH环境变量中:

export CPLUS_INCLUDE_PATH=/usr/local/include:$CPLUS_INCLUDE_PATH

这样,当我们编译使用foo.h的程序时,编译器会自动在/usr/local/include目录中查找该头文件。

当然我们也可以将这两条指令写入到~/.bashrc中,使之永久生效。

总之,配置C++的so库文件的环境变量或头文件的环境变量是一种常见的做法,可以让编译器在编译过程中自动查找它们,提高编译效率。

Python库环境变量配置

在Python中,我们也可以通过设置环境变量来告诉Python解释器查找库文件的位置。以下是一个例子:

假设我们有一个名为mylib的Python库,位于/path/to/mylib目录下。我们可以通过以下命令将其路径添加到PYTHONPATH环境变量中:

export PYTHONPATH=/path/to/mylib:$PYTHONPATH

这样,当我们在Python中使用import mylib时,Python解释器会自动在/path/to/mylib目录中查找该库文件。

另外,我们也可以使用sys.path模块来动态添加Python库的路径,例如:

import sys
sys.path.append('/path/to/mylib')
import mylib

这样,Python解释器也会自动在/path/to/mylib目录中查找该库文件。

Linux配置执行文件环境变量

配置可执行文件的环境变量可以让该可执行文件在任何路径下都可以被直接执行,而无需在可执行文件的路径下运行。以下是一个例子:

假设我们有一个名为myprog的可执行文件,位于/path/to/myprog目录下。我们可以将其路径添加到PATH环境变量中,以便在任何路径下都可以直接运行该可执行文件。例如:

export PATH=/path/to:$PATH

这样,当我们在任何路径下执行myprog时,系统会自动在/path/to目录中查找该可执行文件并执行它。

另外,我们也可以将可执行文件复制到系统的标准路径(例如/usr/bin/usr/local/bin),这样在任何路径下都可以直接运行该可执行文件。但是这种做法可能需要管理员权限。

需要注意,过多的环境变量设置可能会影响系统性能和安全性,因此应该谨慎使用。

http://www.lryc.cn/news/26856.html

相关文章:

  • 企业级分布式数据库 - GaussDB介绍
  • Linux I2C 驱动实验
  • DC-DC模块电源隔离直流升压高压稳压输出5v12v24v转60v100v110v150v220v250v300v400v500v
  • EF有几种模式,EF的三种模式分别是什么?
  • 数据可视化展示:打工人常见职业病,颈腰椎病占比最高达66.51%
  • 【食品图像识别】Large Scale Visual Food Recognition
  • RAN-in-the-Cloud:为 5G RAN 提供云经济性
  • vector、list、queue
  • 操作系统面经
  • 一天约了4个面试,复盘一下面试题和薪资福利
  • 详解单链表(内有精美图示哦)
  • csdn文章导航
  • 【Spring】掌握 Spring Validation 数据校验
  • 定语 从句
  • 【数据可视化工具】浅谈 DataEase 和 FineBI 支持的数据源
  • 100种思维模型之上帝视角思维模型-025
  • 从这5个方面,总结我当PM的第一年
  • ChatGPT可以作为一个翻译器吗?
  • 详述java的设计模式(三)
  • Linux命令·pwd
  • 以图搜图服务快速搭建
  • 【TensorFlow安装踩坑记录】
  • 03.03回溯法
  • I.MX6ULL内核开发0:linux内核模块
  • qsort快速排序的实现以及模拟实现qsort的功能(狠狠的拿捏)
  • [Java·算法·中等]LeetCode215. 数组中的第K个最大元素
  • xgboost:算法数学原理
  • map、multimap、unordered_map
  • 2023年全国最新会计专业技术资格精选真题及答案11
  • Centos7搭建NFS