`
hulunberbus
  • 浏览: 859704 次
文章分类
社区版块
存档分类
最新评论

GCC 环境变量

 
阅读更多
有大量的环境变量可供设置以影响 GCC 编译程序的方式。利用这些变量的控制也可使用合适的命令行选项。

一些环境变量设置在目录名列表中。这些名字和 PATH 环境变量使用的格式相同。特殊字符 PATH_SEPARATOR (安装编译程序的时候定义)用在目录名之间。在 UNIX 系统中,分隔符是冒号,而 Windows 系统中为分号。

C_INCLUDE_PATH

编译 C 程序时使用该环境变量。该环境变量指定一个或多个目录名列表,查找头文件,就好像在命令行中指定 -isystem 选项一样。会首先查找 -isystem 指定的所有目录。

也见 CPATH 、 CPLUS_INCLUDE_PATH 和 OBJC_INCLUDE_PATH 。

COMPILER_PATH

该环境变量指定一个或多个目录名列表,如果没有指定 GCC_EXEC_PREFIX 定位子程序,编译程序会在此查找它的子程序。

也见 LIBRARY_PATH 、 GCC_EXEC_PREFIX 和 -B 命令行选项。

CPATH

编译 C 、 C++ 和 Objective-C 程序时使用该环境变量。该环境变量指定一个或多个目录名列表,查找头文件,就好像在命令行中指定 -l 选项一样。会首先查找 -l 指定的所有目录。

也见 C_INCLUDE_PATH 、 CPLUS_INCLUDE_PATH 和 OBJC_INCLUDE_PATH 。

CPLUS_INCLUDE_PATH

编译 C++ 程序时使用该环境变量。该环境变量指定一个或多个目录名列表,查找头文件,就好像在命令行中指定 -isystem 选项一样。会首先查找 -isystem 指定的所有目录。

也见 CPATH 、 C_INCLUDE_PATH 和 OBJC_INCLUDE_PATH 。

DEPENDENCIES_OUTPUT

为文件名设置该环境变量会让预处理程序将基于依赖关系的 makefile 规则写入文件。不会包括系统头文件名字。

如果环境变量设置为单名,被看作是文件名字,而依赖关系规则的名字来自源文件名字。如果定义中有两个名字,则第二个名字是用作依赖关系规则的目标名。

设置该环境变量的结果和使用命令行选项 -MM 、 -MF 和 -MT 的组合是一样的。也见 SUNPRO_DEPENDENCIES 。

GCC_EXEC_PREFIX

如 果定义了该环境变量,它会作为编译程序执行的所有子程序名字的前缀。例如,如果将变量设置为 testver 而不是查找 as ,汇编器首先会在名字 testveras 下查找。如果在此没有找到,编译程序会继续根据它的普通名进行查找。可在前缀名中使用斜线指出路径名。

GCC_EXEC_PREFIX 的默认设置为 prefix /lib/gcc-lib/ ,这里的 prefix 是安装编译程序时 configure 脚本指定的名字。该前缀也用于定位标准连接程序文件,包含进来作为可执行程序的一部分。

如果使用 -B 命令行选项,会重写该设置。也见 COMPILER_PATH 。

LANG

该环境变量用于指出编译程序使用的字符集,可创建宽字符文字、串文字和注释。

定义 LANG 为 C-JIS ,指出预处理程序将多字节字符按照 JIS (日语工业标准)字符进行解释。 C-SJIS 可用来指出 Shift -JIS 字符而 C-EUCJP 指出日文 EUC 。

如果没有定义 LANG ,或定义为不可识别,函数 mblen() 被用来确定字符宽度,而 mbtowc() 用来将多字节序列转换为宽字符。

LC_ALL

如果设置,该环境变量的值重写 LC_MESSAGES 和 LC_CTYPE 的所有设置。

LC_CTYPE

该 环境变量指出引用串中定义的多字节字符的字符分类。主要用于确定字符串的字符边界,字符编码需要用引号或转义符,可被错误地解释为字符串的结尾或特殊字符 串。对 Australian English ,可将它设置为 en_AU ; 对 Mexican Spanish ,可将它设置为 es_MX 。如果没有设置该变量,默认为 LANG 变量的值,或如果没有设置 LANG ,那就使用 C 英语行为。也见 LC_ALL 。

LC_MESSAGES

该 环境变量指出编译程序使用何种语言发出诊断消息。对 Australian English ,可设置为 en_AU ; 对 Mexican Spanish ,可设置为 es_MX 。如果变量没有设置,使用 LANG 变量的默认值,或如果没有设置 LANG ,那就使用 C 英语行为。也见 LC_ALL 。

LD_LIBRARY_PATH

该环境变量不会影响编译程序,但程序运行的时候会有影响。变量指定一个目录列表,程序会查找该列表定位共享库。只有当未在编译程序的目录中找到共享库的时候,执行程序必须设置该变量。

LD_RUN_PATH

该环境变量不会影响编译程序,但程序运行的时候会有影响。该变量在运行时指出文件的名字,运行的程序可由此得到它的符号名字和地址。地址不会重新载入,因而可能符号引用其他文件中的绝对地址。这和 ld 工具使用 -R 选项完全一样。

LIBRARY_PATH

该环境变量可设置为一个或多个目录名字列表,连接程序会搜寻该目录,以查找特殊连接程序文件,和由 -l (字母 l )命令行选项指定名字的库。

由 -L 命令行选项指定的目录在环境变量的前面,首先被查找。也见 COMPILER_PATH 。

OBJC_INCLUDE_PATH

在编译 Objective-C 程序的时候使用该环境变量。一个或多个目录名的列表由环境变量指定,用来查找头文件,就好像在命令行中指定 -isystem 选项一样。所有由 -isystem 选项指定的目录会首先被查找。

也见 CPATH 、 CPLUS_INCLUDE_PATH 和 C_INCLUDE_PATH 。

SUNPRO_OUTPUT

为文件名设置该环境变量会令预处理程序将基于依赖关系的 makefile 规则写入文件。会包含系统头文件名。

如果环境变量被设置为单个名字,它将会被当作文件名,依赖关系规则中的名字将由源文件的名字中获得。如果定义中有两个名字,第二个名字就是依赖关系规则中的目标名。

设置该环境变量的结果与在命令行中使用参数 -M 、 -MF 和 -MT 的效果一样。参见 DEPENDENCIES_OUTPUT 。

TMPDIR

这个变量包含了供编译程序存放临时工作文件的目录的路径名。这些文件通常在编译过程结束时被删除。这种文件的一个例子就是由预处理程序输出并输入给编译程序的文件。

分享到:
评论

相关推荐

    环境变量设置

    Jdk安装与环境变量设置; MyEclipseL连接MySQL; MySQL的安装; tomcat的安装与环境变量设置.

    gcc-4.8.1安装工具包

    安装之前,系统中必须要有cc或者gcc等编译器,并且是可用的,或者用环境变量CC指定系统上的编译器。如果系统上没有编译器,不能安装源代码形式的GCC 4.1.2。如果是这种情况,可以在网上找一个与你系统相适应的如RPM...

    solaris上安装gcc的部分软件

    solaris上安装gcc的部分软件。。。。。

    设置Windows系统中JDK(JAVA)、MinGW(GCC)、NASM三种编译器的系统环境变量

    设置Windows系统中JDK(JAVA)、MinGW(GCC)、NASM三种编译器的系统环境变量。 本程序依据三种编译器安装目录的不同关键字自行区分设置。 需要设置哪种编译器的环境变量,复制可执行文件到该编译器的安装目录下,...

    qt5.9.8升级gcc Qt5.9.8环境配置以及VS2015配置Qt

    qt5.9.8升级gcc Qt5.9.8环境配置以及VS2015配置Qt

    linux环境下GCC完全参考

    linux环境下Gcc完全参考,对新手 入门有妙不可言之功效

    交叉编译设置环境变量

    一般来说,配置交叉编译工具链的时候需要指定编译工具的路径,此时就需要...例如我的mips-linux-gcc编译器在“/opt/au1200_rm/build_tools/bin”目录下,build_tools就是我的编译工具,则有如下三种方法来设置环境变量

    gcc-4.8.1安装包

    安装之前,系统中必须要有cc或者gcc等编译器,并且是可用的,或者用环境变量CC指定系统上的编译器。如果系统上没有编译器,不能安装源代码形式的GCC 4.1.2。如果是这种情况,可以在网上找一个与你系统相适应的如RPM...

    gcc升级到4.8.5

    gcc升级到4.7以上 参考文档 https://blog.51cto.com/191226139/2066137 ...添加环境变量 echo 'export PATH=/usr/local/gcc-4.8.5/bin:$PATH' >> /etc/profile source /etc/profile 查看版本 gcc -v cc -v

    gcc编译器下载-4.6.0-Windows版

    gcc编译器是一款由GNU打造的编程语言编译器软件,支持处理C语言、Fortran、Pascal、Objective-C、Java等多种语言,实用性强,...5、修改环境变量 export PATH=/usr/local/gcc-4.9.1/bin/:$PATH 6、查看gcc版本 gcc -v

    gcc8.5.0版本编译工具

    gcc8.5.0编译工具,可直接配置环境变量后使用

    gcc windows 64 位版本

    gcc windows 64 位版本,需要配置环境变量

    arm-linux-gcc交叉编译器安装包及详细安装教程 最新ubuntu 18.04下安装arm-linux-gcc4.4.3交叉编译器

    配置环境变量 vim /root/.bashrc或/etc/profile 在最后一行增加 export PATH=/home/linux/arm-linux-gcc/bin:$PATH 重新加载环境变量 source /root/.bashrc或/etc/profile 查看是否安装成功 arm-linux-gcc –v

    arm-linux-gcc.4.3.2.rar

    第六步:将上面得到的目录添加到环境变量PATH中 sudo vim ~/.bashrc 在文件的末尾添加: export PATH=/usr/local/arm/4.3.2/bin:$PATH 第七步:重启.bashrc脚本 source ~/.bashrc 如果再去which arm-linux-gcc就会...

    windows上安装arm交叉编译工具gcc-4.9.4

    Windows下的arm编译器,gcc-linaro-4.9.4-2017.01-i686-mingw32_arm-linux-gnueabihf.tar.xz 安装方法: 1.将下载的包用7zip解压到D:\gcc ...解压文件后,将D:\gcc\bin目录,添加到系统PATH环境变量中。

    离线MinGW-W64 GCC-8.1.0 (seh+sjlj)

    离线MinGW-W64 GCC-8.1.0 (seh版本+sjlj版本) 1.解压 2.配置环境变量,将bin文件目录添加值环境变量 3.测试 : cmd 中输入 “gcc -v”

    gcc.zip_gcc 安卓_安卓gcc终端

    安卓可用的gcc环境,解压至任意文件夹,环境变量与linux上相同,终端模拟器运行

    设置JAVA、MinGW、NASM编译器的环境变量 (Windows系统)

    设置Windows系统中JDK(JAVA)、MinGW(GCC)、NASM三种编译器的系统环境变量。 本程序依据三种编译器安装目录的不同关键字自行区分设置。 复制可执行文件到编译器的安装目录下,右键以管理员身份运行即可。 最终...

    gcc64位下载mingw64

    gcc是c语言开发的环境,本资源是windows64位的。配置环境变量后请用cmd 输入 gcc -help查看是否成功

    GCC技术参考大全

    GCC 技术参考大全 GCC:The Complete Reference 清华大学出版社 非扫描 文字版 有书签 第 1 章 GCC 简介 第 2 章 查询与安装编译程序 ...附录 B 环境变量 附录 C 命令行对照表 附录 D 命令行选项 附录 E 术语表

Global site tag (gtag.js) - Google Analytics