GCC -o选项:指定输出文件
2年前 (2024-04-26)
gcc
值得一提的是,通常情况下 [infile] 处放置一个文件,但根据实际需要也可以放置多个文件,表示有多个输入文件(后续会给出实例)。
-o选项用来指定输出文件,如果不使用 -o 选项,那么将采用默认的输出文件。例如默认情况下,生成的可执行文件的名字默认为 a.out。如下是 gcc -o 指令的使用语法格式:
[root@bogon demo]# gcc [-E|-S|-c] [infile] [-o outfile]
[infile] 表示输入文件(也即要处理的文件),它可以是源文件、汇编文件或者目标文件;[outfile] 表示输出文件(也即处理的结果),可以是预处理文件、目标文件、可执行文件等。其中,用方括号 [] 括起来的部分可以忽略。
值得一提的是,通常情况下 [infile] 处放置一个文件,但根据实际需要也可以放置多个文件,表示有多个输入文件(后续会给出实例)。
GCC -o选项使用举例
1) 将源文件作为输入文件,将可执行文件作为输出文件,也即完整地编译整个程序:
$ gcc main.c func.c -o app.out
将 main.c 和 func.c 两个源文件编译成一个可执行文件,其名字为 app.out。如果不使用 -o 选项,那么将生成名字为 a.out 的可执行文件。2) 将源文件作为输入文件,将目标文件作为输出文件,也即只编译不链接:
$ gcc -c main.c -o a.o
将源文件 main.c 编译为目标文件 a.o。如果不使用 -o 选项,那么将生成名为 main.o 的目标文件。3) 将源文件作为输入文件,将预处理文件作为输出文件,也即只进行预处理操作:
$ gcc -E main.c -o demo.i
对源文件 main.c 进行预处理操作,并将结果放在 demo.i 文件中。如果不使用 -o 选项,那么将生成名为 main.i 的预处理文件。4) 将目标文件作为输入文件,将可执行文件作为输出文件:
$ gcc -c func.c main.c
$ gcc func.o main.o -o app.out
条令只编译不链接,将生成 func.o 和 main.o 两个目标文件。第二条令将生成的两个目标文件生成最终的可执行文件 app.out。如果不使用 -o 选项,那么将生成名字为 a.out 的可执行文件。- 随机文章
- 马尔代夫鲨鱼游泳(畅游马尔代夫海域,近距离体验鲨鱼)
- 乌江马尔代夫平南(乌江农民“走出去”助力马尔代夫发展)
- 澳洲-马尔代夫亲子游(亲子游:澳洲到马尔代夫,体验一场难忘的家庭之旅)
- 马尔代夫 安全么(探索马尔代夫安全风险与安全措施46)
- 嗯哼马尔代夫度假(嗯哼度假:探秘马尔代夫纯净海岛福地)
- 怀化洪江马尔代夫(湖南怀化洪江建设“马尔代夫度假村”)
- 天津马尔代夫旅游(天津玛尔代夫,打造身临其境度假之旅)
- 山东龙口马尔代夫(龙口首个马尔代夫主题公园正式开放!)
- 李连杰到马尔代夫(李连杰访问马尔代夫:为旅游推广发声)
- 游艇上岛马尔代夫(岛屿探险之旅:游艇驶入马尔代夫海域)
- 有烧烤的马尔代夫(探秘马尔代夫美食:畅享诱人烤肉飨宴)
- 泰国海岛马尔代夫(泰国岛屿竞争马尔代夫,游客纷至沓来)
- 泰国马尔代夫男模(泰国男模在马尔代夫拍摄照片走红网络)
- 眉山马尔代夫风景(眉山美不输马尔代夫,盘点眉山美景!)
- 海滩旅游马尔代夫(马尔代夫:享受海滩旅游的绝佳目的地)
- 迪拜王储马尔代夫(迪拜王储造访马尔代夫,推进两国合作)
- 非诚勿扰马尔代夫(马尔代夫成为“非诚勿扰”新旅游胜地)
- 游艇开到马尔代夫(用游艇穿越印度洋,探索马尔代夫之美)
- 马尔代夫不用滤镜(马尔代夫的真实面貌,不需要加滤镜!)
- 姐妹 马尔代夫(姐妹游马尔代夫:热带度假的绝美之选)
- 中国马尔代夫比分(中国队与马尔代夫队足球比赛结果发布)
- 马尔代夫专辑视频(探寻马尔代夫之美:一段梦幻般的旅程)
- 马尔代夫今晚新闻(马尔代夫今晚新闻:最新疫情情况报道)
- 潍坊 马尔代夫(潍坊游客梦中马尔代夫,享受海岛风情奢华之旅)
- 马尔代夫优质图片(马尔代夫美景惊艳,精美图片醉人目光)
- 马尔代夫划界了吗(马尔代夫完成领土划分,划界工作结束)
- 蜜月日本马尔代夫(新婚之旅:日本和马尔代夫的双重浪漫)
- 马尔代夫单板划船(单板划船:探索马尔代夫蓝色海洋之旅)
- 马尔代夫印度泰国(三地旅游胜地:马尔代夫、印度、泰国)
- 马尔代夫云上公路(马尔代夫建云上高速公路,穿云而过!)
