Linux环境变量临时和永久设置 GCC环境变量设置

Linux环境变量临时和永久设置

PATH是用于查找各种命令,C_INCLUDE_PATH、CPLUS_INCLUDE_PATH是用于GCC头文件查找,LIBRARY_PATH编译时查找库文件,LD_LIBRARY_PATH运行时查找动态链接库(.so文件)

临时添加环境变量

用export, 加: P A T H 是 将 此 变 量 添 加 在 后 面 e x p o r t P A T H = / h o m e / j o h n / b i t b a k e − 1.40 / b i n : PATH是将此变量添加在后面 export PATH=/home/john/bitbake-1.40/bin: PATHexportPATH=/home/john/bitbake1.40/bin:PATH
export PYTHONPATH=/home/john/bitbake-1.40/lib:$PYTHONPATH

永久添加环境变量

可将环境变量加入用户根目录下~/.bashrc, ~/.profile 或所有用户下/etc/profile配置文件, 用下列命令即可

echo ‘PATH=/home/john/bitbake-1.40/bin:$PATH’>>~/.bashrc

echo ’ PYTHONPATH=/home/john/bitbake-1.40/lib:$PYTHONPATH '>>~/.bashrc

echo ‘source /home/john/Vitis/Vitis/2019.2/settings64.sh‘ >> ~/.bashrc

或者打开以上三个配置文件之一
vi ~/.bashrc
在文件后面添加想要添加或删除想要删除路径,例如
export PATH=路径1:路径2:路径4

最后,使新的环境变量生效或重新打开终端
source ~/.bashrc
source /etc/profile

错误:
In file included from /home/john/Vitis2020.2/Vitis_Libraries/vision/L2/examples/dilation/xf_dilation_tb.cpp:17:
/home/john/Vitis2020.2/Vitis_Libraries/vision/L1/include/common/xf_headers.hpp:23:10: fatal error: opencv2/opencv.hpp: No such file or directory
23 | #include “opencv2/opencv.hpp”
解决:
/usr/include/opencv2/opencv.hpp
/usr/include/boost/compute/interop/opencv.hpp
/usr/local/include/opencv2/opencv.hpp

john@john-virtual-machine:~/Vitis2020.2/Vitis_Libraries/vision/L2/tests/dilation/dilation_NO_3_CROSS$ g++ test.cpp pkg-config --cflags --libs opencv -o test
在这里插入图片描述

john@john-virtual-machine:~/Vitis2020.2/Vitis_Libraries/vision/L2/tests/dilation/dilation_NO_3_CROSS$ echo ‘export PATH=/usr/local/include:$PATH’>>~/.bashrc

试图建立指向文件,因可能造成管理混乱,后放弃
sudo ln -s /usr/local/include /usr/include
在这里插入图片描述
前面为源,真实的东西,真实的目录,就像拷贝一样,在后面目录下建一个虚拟的目录include, 凡是后面的include均指向前面的include.
john@john-virtual-machine:~/Vitis2020.2/Vitis_Libraries/vision/L2/tests/dilation/dilation_NO_3_CROSS$ sudo rm /usr/include/include
在这里插入图片描述

GCC环境变量设置

#include <stdio.h> 和 #include “stidio.h” 区别是:

尖括号告诉编译器在一个或者多个标准系统目录中找到文件 /usr/include /usr/local/include;即系统头文件所在的目录。

看看这些文件夹下是否有该头文件;如果没有,也不会检索当前文件所在路径,并将报错。

使用双引号,编译器先到当前目录查找头文件或文件名中指定的其他目录,如果没找到,再到标准系统目录查找。

C_INCLUDE_PATH、CPLUS_INCLUDE_PATH是用于GCC头文件查找,LIBRARY_PATH编译时查找库文件,LD_LIBRARY_PATH运行时查找动态链接库(.so文件)
标准系统目录搜索,分别是 /usr/include /usr/local/include
-I 指定头文件的搜索路径,L库文件的搜索路径

Python import 目录

首先要注意使用的是python还是python3.
首先判断这个module是不是built-in即内建模块,如果是则引入内建模块,如果不是则在一个称为sys.path的list中寻找
sys.path在python脚本执行时动态生成,包括以下3个部分:
1、脚本执行的位置,即当前路径
2、环境变量中的PYTHONPATH, 即.bash_profilec.
3、安装python时的依赖位置

import sys
sys.path

观察下输出内容有无需的目录

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值