首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

如何在Linux中为GCC添加默认包含路径?

在Linux中为GCC添加默认包含路径,可以通过以下步骤实现:

  1. 打开终端。
  2. 找到GCC的安装路径,通常在/usr/lib/gcc下。
  3. 进入GCC的版本目录,例如/usr/lib/gcc/x86_64-linux-gnu/9,其中9是GCC的版本号。
  4. 在版本目录下,找到specs文件,例如/usr/lib/gcc/x86_64-linux-gnu/9/specs
  5. 使用文本编辑器打开specs文件,例如vim /usr/lib/gcc/x86_64-linux-gnu/9/specs
  6. 在文件中找到*cpp:一行,这一行定义了GCC的默认包含路径。
  7. *cpp:后面添加新的包含路径,例如-I/path/to/include,其中/path/to/include是要添加的包含路径。
  8. 保存并关闭文件。

现在,当使用GCC编译C++程序时,新的包含路径将被添加到默认包含路径中。

需要注意的是,这种方法需要管理员权限才能修改specs文件,因此需要使用sudo命令进行编辑。此外,这种方法会影响所有使用该版本GCC的程序,因此需要谨慎操作。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

【C语言笔记】windows命令行下编译C程序

有关注我的朋友可能会知道我的C开发环境是:Notepad++与MinGW相结合,即用Notepad++写代码,用MinGW这个工具包gcc编译器进行编译。: 在Notepad++里写代码: ?...此处,编译命令: gcc hello.c 生成的可执行文件默认为a.exe,输入a.exe即可运行该可执行程序。...同样,也可添加-o参数给a.exe进行重命名,把hello.c编译生成的可执行文件命名为hello.exe的编译命令: gcc hello.c -o hello.exe 此时就可以输出hello.exe...(2)你不记得文件夹的名字时可以输入dir命令(类似于linux系统的ls命令)查看当前文件夹下的所有文件及文件夹,: ?...以上就是关于如何在window命令行下编译C程序的一点补充的笔记,掌握这一点就可以无缝切换到Linux下进行编译C程序了(相关笔记:【C语言笔记】windows下体验Linux环境)。

2.9K30

gcc命令大全

在程序设计,如果需要的这种包含文件分别分布在不同的目录,就需要逐个使用 -I 选项给出搜索路径。...-Ldirname:将dirname所指出的目录加入到程序函数库文件的目录列表,是在链接过程中使用的参数。在默认状态下,链接程序 ld 在系统默认路径 /usr/lib)寻找所需要的库文件。...正因如此,gcc 在编译时必须有自己的办法来查找所需要的头文件和库文件。常用的方法有: (1) -I 可以向 gcc 的头文件搜索路径添加新的目录。...(2) -L 如果使用了不在标准位置的库文件,那么可以通过 -L 选项向 gcc 的库文件搜索路径添加新的目录。...四、 调试选项 对于Linux程序员来讲,gdb(GNU Debugger)通过与 gcc 的配合使用,基于Linux的软件开发提供了一个完善的调试环境。

1.3K20

C++ 环境设置

例如,Notepad 通常用于 Windows 操作系统上,vim/vi 可用于 Windows 和 Linux/UNIX 操作系统上。 通过编辑器创建的文件通常称为源文件,源文件包含程序源代码。...以下部分将指导您如何在不同的操作系统上安装 GNU 的 C/C++ 编译器。这里同时提到 C/C++,主要是因为 GNU 的 gcc 编译器适合于 C 和 C++ 编程语言。...安装 GNU 的 C/C++ 编译器 UNIX/Linux 上的安装 如果您使用的是 Linux 或 UNIX,请在命令行使用下面的命令来检查您的系统上是否安装了 GCC: $ g++ -v 如果您的计算机上已经安装了...添加您安装的 MinGW 的 bin 子目录到您的 PATH 环境变量,这样您就可以在命令行通过简单的名称来指定这些工具。...<< endl; return 0; } 最简单的编译方式: $ g++ helloworld.cpp 由于命令行未指定可执行程序的文件名,编译器采用默认的 a.out。

2.3K51

【一站式解惑】Linux.a、.so和.o文件以及-I,-L,LIBRARY_PATH,LD_LIBRARY_PATH等

本节主要通过举例来说明如何在Linux创建静态库和动态库,以及使用它们。 在创建函数库前,我们先来准备举例用的源程序,并将函数库的源程序编译成.o文件。...只需要在使用到这些公用函数的源程序包含这些公用函数的原型声明,然后在用gcc命令生成目标文件时指明静态库名,gcc将会从静态库中将公用函数连接到目标文件。...程序照常运行,静态库的公用函数已经链接到目标文件中了。 我们继续看看如何在Linux创建动态库。我们还是从.o文件开始。...配置文件/etc/ld.so.conf中指定的动态库搜索路径 4. 默认的动态库搜索路径/lib 5....默认的动态库搜索路径/usr/lib 有关环境变量 1.PATH是可执行文件路径,是三个我们最常接触到的,因为我们命令行的每句能运行的命令,ls、top、ps等,都是系统通过PATH找到了这个命令执行文件的所在位置

3.8K52

减小镜像体积-docker最佳实践

/hello"] 我们使用gcc作为基础镜像编译hello.c程序,这一阶段编译阶段mybuildstage。...COPY --from使用绝对路径:golang镜像默认工作目录是/go,所以我们需要从/go目录复制可执行文件。 1 2 3 4 5 6FROM golang COPY hello.go ....没有调试工具 因为scratch是空的,所以构建出的镜像不包含任何工具,ls,ps,ping等,我们也就无法进入到该容器(docker exec)。...回到上面的示例程序,默认情况C使用动态链接,使用某些包的Go程序也是如此,上述程序使用标准C库,该库位于libc.so.6文件, 所以需要在镜像包含该文件,C Hello World才能正常执行。...-64.so.2 (0x00007ff8980f7000) 我们可以看程序使用的具体哪些库以及路径,上面的例子,唯一有意义的是libc.so.6库,linux-vdso.so.1与虚拟动态共享对象有关

1.3K10

MTK Android平台开发流程

sourcecode的第三方动态壁纸程序设置默认动态壁纸,则需要知道该apkWallpaperService对应的类名和包名,可以通过Google提供的apk-tool工具来得到该apk的资源文件,...,res/values/string.xml文件的内容,那么如何编译生效?.../makeMtk-opt=TARGET_BUILD_VARIANT=user${projectname}new ${projectname}客户的工程名 22.GCC工具链 GCC:(GNUCompilerCollection...GCC是自由软件发展过程的著名例子,由自由软件基金会以GPL协议发布。GCC是大多数类Unix操作系统(Linux、BSD、MacOSX等)的标准的编译器,GCC同样适用于微软的Windows。...;同样以Launcher2例,注意这里的资 源放置路径要跟原始app里面被替换的资源的路径保持一样,资源的名称也要保持一样。

2.8K40

Linux gcc使用基础

gcc 编译器是 Linux默认的 C/C++ 编译器,大部分 Linux 发行版中都是默认安装的。gcc 编译器通常以 Linux 命令的形式在终端(Shell/Bash)中使用。...\n"); } 注意到thanks.c需要用到thanks_2.c的函数,先编译: gcc -c thanks.c thanks_2.c 编译成功后会生成thanks.o和thanks_2.o目标文件...注意:编译阶段可以添加-O参数进行程序优化,或是-Wall参数显示详细的编译信息,gcc -O -c thanks.c thanks_2.c gcc -Wall -c thanks.c thanks...gcc sintest.c -lm -L/lib -L/usr/lib 其中,-lm可理解两部分,-l是加入某个函数库,m则是libm.so的代称。...后面的-L参数用于指定库的搜索路径,由于Linux默认库的位置就是在lib文件目录下,因此可以省略不写,如果是其它的第三方库,则需要指明库文件的位置。

3.2K10

如何进行环境配置

例如,Notepad 通常用于 Windows 操作系统上,vim/vi 可用于 Windows 和 Linux/UNIX 操作系统上。 通过编辑器创建的文件通常称为源文件,源文件包含程序源代码。...以下部分将指导您如何在不同的操作系统上安装 GNU 的 C/C++ 编译器。这里同时提到 C/C++,主要是因为 GNU 的 gcc 编译器适合于 C 和 C++ 编程语言。...安装 GNU 的 C/C++ 编译器 UNIX/Linux 上的安装 如果您使用的是 Linux 或 UNIX,请在命令行使用下面的命令来检查您的系统上是否安装了 GCC: $ g++ -v 如果您的计算机上已经安装了...添加您安装的 MinGW 的 bin 子目录到您的 PATH 环境变量,这样您就可以在命令行通过简单的名称来指定这些工具。...\n"; return 0; } Tips: 从终端输入命令可以看出 Cloud Studio 我们集成了 Ubuntu16.04.1 + GCC5.4 + Clang3.5.2 的开发环境: 有任何疑问

1.2K20

gcc基本命令_cmake 命令

Linux 程序员可以根据自己的需要控制 GCC 的编译阶段,以便检查或使用编译器在该阶段的输出信息,帮助调试和优化程序。以 C 语言例,从源文件的编译到可执行文件的运行,整个过程大致如下。...-no-canonical-prefixes :在构建其他 gcc 组件的相对前缀时,不要规范化路径。 -pipe :使用管道而不是中间文件。 -time :每个子流程的执行计时。...-I :指定头文件的包含路径。 -L :指定链接库的包含路径。 -shared :创建共享库/动态库。 -static :使用静态链接。 --help :显示帮助信息。...系统的默认搜索目录,解决办法是我们主动告诉系统,libfoo.so 共享库在哪里。...-lfoo -Wl,-rpath=`pwd` -o hello rpath 即 run path,是种可以将共享库位置嵌入程序的方法,从而不用依赖于默认位置和环境变量。

68040

GCC 编译器的使用

(1)预处理 C/C++源文件,以“#”开头的命令被称为预处理命令,包含命令“#include”、宏定义命令“#define”、条件编译命令“#if”、“#ifdef”等。...(5)-v 显示制作 GCC 工具自身时的配置命令;同时显示编译器驱动程序、预处理器、编译器的版本号。以一个程序例,它包含三个文件,代码在 02_options 目录下。...2.8 目录选项(Directory Option) 下列选项指定搜索路径,用于查找头文件,库文件,或编译器的某些成员。 (1)-Idir 在头文件的搜索路径列表添加 dir 目录。...(2)-I- 任何在‘-I-'前面用‘-I’选项指定的搜索路径只适用于’#include “file”'这种情况;它们不能用来搜 索’#include '包含的头文件。...(3)-Ldir 在`-l’选项的搜索路径列表添加 dir 目录。

3.8K31

基础环境搭建,这一篇就够了!

可以理解make就是一个gcc/g++的调度器,通过读入一个文件(默认文件名为Makefile或者makefile),执行一组以gcc/g++为主的shell命令序列。...=====" >>$jdk_install_file 3.测试是否安装成功 java -version 出现以下内容表示安装成功: 二、Android-SDK(ADB) 可参考之前的文章:《如何在Linux....tar.gz tar -xvf go1.19.1.linux-amd64.tar.gz ③ 添加到环境变量 编辑/etc/profile,添加如下内容: export GO_HOME=/home/golang...logpath=/mongodb/logs/mongodb.log # 日志存放路径 logappend=true # 采用追加模式写入日志,默认 fork=true # 是否后台启动 port=27017...# MongoDB端口号,默认27017,也可以改成其他 journal=true # 启用日志文件,默认 quiet=false # 过滤掉无用的日志信息,true表示过滤,false调试模式,不过滤

2.3K40

如何进行内存设置

例如,Notepad 通常用于 Windows 操作系统上,vim/vi 可用于 Windows 和 Linux/UNIX 操作系统上。 通过编辑器创建的文件通常称为源文件,源文件包含程序源代码。...以下部分将指导您如何在不同的操作系统上安装 GNU 的 C/C++ 编译器。这里同时提到 C/C++,主要是因为 GNU 的 gcc 编译器适合于 C 和 C++ 编程语言。...添加您安装的 MinGW 的 bin 子目录到您的 PATH 环境变量,这样您就可以在命令行通过简单的名称来指定这些工具。...<< endl; return 0; } 最简单的编译方式: $ g++ helloworld.cpp 由于命令行未指定可执行程序的文件名,编译器采用默认的 a.out。...\n"; return 0; } Tips: 从终端输入命令可以看出 Cloud Studio 我们集成了 Ubuntu16.04.1 + GCC5.4 + Clang3.5.2 的开发环境

1.3K20

linux命令行安装gcc_linux用yum安装gcc

其命令格式(记得用你的真实路径替换{destdir}): % {srcdir}/configure –prefix={destdir} [其它选项] 例如,如果想将GCC 4.1.2安装到/usr/local...由于命令文件和库文件所在的目录还没有包含在相应的搜索路径内,所以必须要作适当的设置之后编译器才能顺利地找到并使用它们。...1) 7.2 库路径的设置 将${destdir}/lib路径添加到环境变量LD_LIBRARY_PATH,例如,如果GCC 4.1.2安装在/usr/local/gcc-4.1.2目录下,在RH Linux...下可以直接在命令行上执行 % export LD_LIBRARY_PATH=/usr/local/gcc-4.1.2/lib 最好添加到系统的配置文件,这样就不必要每次都设置这个环境变量了,在文件$HOME.../.bash_profile添加下面两句: LD_LIBRARY_PATH=/usr/local/gcc-4.1.2/lib:$LD_LIBRARY_PATH export LD_LIBRARY_PATH

25.7K30

CMake搭建编译环境总结

获取环境变量 设置编译器 设置依赖库路径 包含头文件路径 添加编译器编译选项 添加打印 CMakeLists路径嵌套 控制编译流程 Shell脚本传递宏至CMakeList CMakeLists传递变量至代码工程...(两个嵌套的for循环都用变量i做index); -Wshadow=compatible-local:激活local变量的遮蔽,考虑变量类型(如上例的i在内外两层的for循环中是不同的类型); E.g...编译默认会从/usr/include目录搜索头文件、从/usr/lib搜索依赖库。...同样的,个人代码也需要与编译Linux配套的交叉工具编译,才能在Linux环境运行。一般在Ubuntu上编译运行,只需要设置gcc/g++即可。...设置交叉编译工具链方式如下: ## 绝对路径 set(CMAKE_C_COMPILER "xxx/arm-linux-gcc") set(CMAKE_CXX_COMPILER "xxx/arm-linux-g

2.2K20

不联网,ubuntu下安装gcc

6.2 库路径的设置 将${destdir}/lib路径添加到环境变量LD_LIBRARY_PATH,最好添加到系统的配置文件,这样就不必要每次都设置这个环境变量了。...例如,如果GCC 3.4.0安装在/usr/local/gcc-3.4.0目录下,在RH Linux下可以直接在命令行上执行或者在文件/etc/profile添加下面一句: setenv LD_LIBRARY_PATH...6.2 库路径的设置 将${destdir}/lib路径添加到环境变量LD_LIBRARY_PATH,最好添加到系统的配置文件,这样就不必要每次都设置这个环境变量了。...例如,如果GCC 3.4.0安装在/usr/local/gcc-3.4.0目录下,在RH Linux下可以直接在命令行上执行或者在文件/etc/profile添加下面一句: setenv LD_LIBRARY_PATH...6.2 库路径的设置 将${destdir}/lib路径添加到环境变量LD_LIBRARY_PATH,最好添加到系统的配置文件,这样就不必要每次都设置这个环境变量了。

1.2K20

Linux gcc链接动态库出错:LIBRARY_PATH和LD_LIBRARY_PATH的区别

collect2: error: ld returned 1 exit status 1 gcc链接动态库时的搜索路径 自以为在当前工程设置好了环境变量LD_LIBRARY_PATH包含了工程的lib...很遗憾ld链接器报了如上的错误,但是如果在上面的gcc命令添加上-L /root/gcc_test/tcp_msg/lib/参数,即明确动态库的绝对路径,是能够链接成功的。...4.1 Linux gcc编译链接时的动态库搜索路径 GCC编译、链接生成可执行文件时,动态库的搜索路径包含LIBRARY_PATH,具体的搜索路径顺序如下(注意不会递归性地在其子目录下搜索): 1、...gcc编译、链接命令的-L选项; 2、gcc的环境变量的LIBRARY_PATH(多个路径用冒号分割); 3、gcc默认动态库目录:/lib:/usr/lib:usr/lib64:/usr/local...其中,Linux GCC默认的动态库搜索路径可以通过ld --verbose命令查看: [root@typecodes tcpmsg]# ld --verbose ............

34210

Linux实现树莓派3B的国密SM9算法交叉编译——(一)环境部署、简单测试与eclipse工程项目测试

hello:hello.o clean: rm -rf hello.o hello 在makefile文件中使用了至少两条隐含规则,CC默认工具链;.o文件由同名的.c文件生成。...这里我们可以填写交叉编译工具链的交缀和路径: Cross compiler prefix: arm-linux-gnueabihf- #(别打错!)...上例是TI提供的DM3730的开发包的安装路径和程序的前缀(真实程序:arm-arago-linux-gnueabi-gcc、arm-arago-linux-gnueabi-ld等) 最后点击完成,一个交叉项目就创建好了...关于交叉编译前缀和路径的设置,在项目创建后,可以在项目的属性改变它。...3、添加头文件及源文件 配置好以上内容后就可以添加个.c或者.cpp的源文件,以上面hello例: ?  或者 ?

1.4K32
领券