第七篇:gcc和arm-linux-gcc常用选项

时间:2023-01-04 13:17:05

一、gcc和arm-linux-gcc的常用选项

  • 常用选型

    • -v 查看gcc编译器的版本,显示gcc执行时的详细过程

    • -o Place the output into 指定输出文件名为file,这个名称不能跟源文件名同名

    • -E Preprocess only; do not compile, assemble or link

      ​ 只预处理,不会编译、汇编、链接

    • -S Compile only; do not assemble or link

      ​ 只编译,不会汇编、链接

    • -c Compile and assemble, but do not link

      ​ 编译和汇编,不会链接

  • 举例

    //举例一:
    gcc hell.c /* 输出一个a.out,然后./a.out来执行该应用程序 */
    gcc -o hello hello.c /* 输出hello,然后./hello来执行该应用程序(推荐使用这种方式) */ //举例二:
    gcc -E -o hello.i hello.c /* 对hello.c文件进行预处理,获得hello.i文件 */
    gcc -S -o hello.s hello.i /* 对hello.i文件进行编译,获得hello.s汇编文件 */
    gcc -c -o hello.o hello.s /* 对hello.s进行汇编,获得hello.o(OBJ文件)目标文件 */
    gcc -o hello hello.o /* 对hello.o进行链接,获得 hello可执行文件*/
  • 总结

    1)输入文件的后缀名和选项共同决定gcc到底执行那些操作。

    2)在编译过程中,除非使用了-E、-S、-c选项(或者编译出错阻止了完整的编译过程),否则最后的步骤都是链接。

二、从.c文件到可执行文件过程

第七篇:gcc和arm-linux-gcc常用选项