放在/lib和/usr/lib和/usr/local/lib里的库直接用-l参数就能链接了。 但如果库文件没放在这三个目录里,而是放在其他目录里,这时我们只用-l参数的话,链接还是会出错,出错信息大概是:“/usr/bin/ld: cannot find -lxxx”,也就是链接程序ld在那3个目录里找不到libxxx.so,这时另外一个参数-L就派上用场了,...
-fcond-mismatch 允许条件表达式的第二和第三参数类型不匹配, 表达式的值将为 void 类型。 -funsigned-char 、-fno-signed-char、-fsigned-char 、-fno-unsigned-char 这四个参数是对 char 类型进行设置, 决定将 char 类型设置成 unsigned char(前两个参数)或者 signed char(后两个参数)。 -include file 包...
-Wp,<options> :将逗号分隔的 <options> 传递给预处理器(preprocessor)。 -Wl,<options> :将逗号分隔的 <options> 传递给链接器(linker)。 -Xassembler <arg> :将 <arg> 传递给汇编器(assembler)。 -Xpreprocessor <arg> :将 <arg> 传递给预处理器(preprocessor)。 -Xlinker <arg> :将 <arg> 传递给...
本文记录gcc相关参数,编译个人记录。 linux shell下运行 man gcc可以查阅gcc手册,本文主要摘自gcc手册。gcc [-c|-S|-E] [-std=standard] [-g] [-pg] [-Olevel] [-Warn...] [-Wpedantic] [-Idir...] [-Ldir..] [-Dmacro[=defn]...] [-Umacro] [-foption...] [-mmachine-option...] [...
-I-: 就是取消前一个参数的功能, 一般在-Idir之后使用 -Ldir: 指定编译时,库文件的查找路径 -Wl,rpath=your_dir: 指定运行时,动态库的查找路径 库相关 -lxxx: 链接xxx库 -shared: 生成共享目标文件,通常用在建立共享库时 -fPIC: 生成位置无关的代码,通常用在建立共享库时 ...
gcc (GNU Compiler Collection) 和 g++ 是Linux系统上最常用的编译器。它们是 GNU 组织开发的一套开源编译器工具集。 gcc: gcc 是 GNU 编译器集合中的 C 语言编译器。 它支持多种 C 语言标准(如 ANSI C、ISO C89、ISO C99)以及一些扩展特性。 gcc 可以将 C 语言源代码编译成可执行文件,或者生成汇编代码...
F.MinGW编译命令gcc的-o参数 格式:gcc 源代码文件的名字 -o 编译后程序的名字 示例:gcc hello.c -o hello.exe 解释:gcc 这个命令拥有很多内置选项,其中 -o 表示将它后面的单词设置编译后文件的名字。 注意:选项 -o 是英文字母,并不是数字零,并且它的后面只能是想设置的文件名。
而gcc 无论是否使用这个参数, 都将对没有带参数的函数, 认为城没有显式说明的类型。 -fthis-is-varialble 就是向传统 c++ 看齐, 可以使用 this 当一般变量使用。 -fcond-mismatch 允许条件表达式的第二和第三参数类型不匹配, 表达式的值将为 void 类型。
GCC提供了大量的优化选项,通过不同的参数可以对编译时间、目标文件大小、执行效率三个维度进行平衡,不同的GCC版本器优化等级略有不同,笔者本文以GCC 7.5为例进行说明。 最新的版本是GCC 11.2.0。GCC 4.6.4以上的版本优化等级是一样的,只是优化选项略有差异。