linux---gcc和可能的问题 PATH修改

本文介绍了在Linux环境下使用GCC编译时可能遇到的‘undefined reference to’问题,包括链接缺失目标文件、缺少库文件、库文件间的依赖以及多个库文件的链接顺序问题。同时,文章还探讨了在C++代码中链接C语言库的注意事项,并提供了相应的解决方案。
摘要由CSDN通过智能技术生成
gcc 
		-I			指定						比如要包含当前目录下的include,则-Iinclude  【而不是-I/include错误】
		-lname	(小写l)指定连接的库名------与之对应的库文件名为libname.so   
		//优先当前位置找,其次去默认位置(如/lib和/usr/lib和/usr/local/lib)找
		//默认位置的库直接用-l参数就能链接了【这些位置已经包含在默认位置PATH中了】
		-Ldir		(大写L)指定库路径			比如常用的X11的库,它放在/usr/X11R6/lib目录下,我们编译时就要指定库路径-L/usr/X11R6/lib(目录) 指定库名-lX11
		-g			产生调试信息→→然后才能进行gdb调试 gdb filename
		
		-c           编译和汇编,但不要链接。 	->生成目标文件a.o
		-o <file>    用于指定输出文件名			->可执行文件a   原材料为:源文件.c 或者 目标文件.o

		-w的意思是关闭编译时的警告,也就是编译后不显示任何warning
		-Wall选项意思是编译后显示所有警告。
		-W选项类似-Wall,会显示警告,但是只显示编译器认为会出现错误的警告。

4种PATH修改方式:

	echo $PATH //查看当前PATH的配置路径
a.直接修改$PATH值:
	export PATH=$PATH:/xxx/xxx //将需配置路径加入$PATH  等号两边一定不能有空格
	//配置完后可以通过第一句命令查看配置结果。
	生效方法:立即生效
	有效期限:临时改变,只能在当前的终端窗口中有效,当前窗口关闭后就会恢复原有的path配置
	用户局限:仅对当前用户
	
b.通过修改.bashrc文件:(.bashrc文件在根目录下)
	vi .bashrc  //编辑.bashrc文件
	//在最后一行添上:
	export PATH=$PATH:/xxx/xxx  ///xxx/xxx位需要加入的环境变量地址 等号两边没空格
	生效方法:(有以下两种)
	..关闭当前终端窗口,重新打开一个新终端窗口就能生效
	..输入“source .bashrc”命令,立即生效
	有效期限:永久有
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值