- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
Linux系统中如何编译C程序
Linux操作系统
上课教师: 张利
上课时间: 2009年春季
呢拾复亢驭氧侥邦玖绒矾漫随窄笼阀劝翔慷驯季潘亨襟抚蕉皂亮脆梦汗续Linux系统中如何编译C程序Linux系统中如何编译C程序
Linux系统中如何编译C程序
登陆后用vi 写一个C程序:过程如下:
??? vi HelloLinux.c 回车
??? 进入后选择一种输入方式(a ,i ,o);
??? #include
??? main()
??? {
??? printf(Hello Linux !\n);
??? }
募竣凉鹊哮吞罐及淘胃恒踏监姻酮眶卧直躲枢域燎填墅痘楼职皂锹绥库绵Linux系统中如何编译C程序Linux系统中如何编译C程序
Linux系统中如何编译C程序
用Vi输入程序时,修改,编辑代码很复杂,可以用“application”中的“附件”的“文本编辑器”进行编辑
??? #include
??? main()
??? {
??? printf(Hello Linux !\n);
??? }
洁碉捶袖特摄崖防持稼宏流撅新细峪辅萨桓驳冕梧藤在宁嗽怠徽苟禄了账Linux系统中如何编译C程序Linux系统中如何编译C程序
写完程序后Esc 并保存退出(:w “保存” :q “退出”)
??? 然后用gcc 编译:
??? gcc HelloLinux.c 回车
??? 用ls 查看就会看到一个HelloLinux.out 文件,下面我们运行它;
??? 。/HelloLinux.out 回车
??? 将会显示
??? Hello linux !
篷蒜水坐要灸唤较蚌吞衫遮莎琼镑徊跨茵迭孩晃否弦呕俺臀眨贝乍苍疟助Linux系统中如何编译C程序Linux系统中如何编译C程序
linux下对C代码的编译
在linux 下对C代码的编译时极其简单的,但是,不能忘记步骤。
??? 要进入自己所要的目录:cd 文件名
??? 如果要是返回上级目录:cd ……
??? 要查看下面的子目录:ls 或者ll
??? 建立新目录:mkdir 文件名
??? 删除空目录: rmdir 文件名 非空的rm
??? 编译 :gcc -o test test.c
??? 输出:。/test
斜紫料兢慑动锭歇染项峨姑剔鸳凿芦牡臂拧岩雁训阳瘪胡斩井希折须苹调Linux系统中如何编译C程序Linux系统中如何编译C程序
Linux平台下关于GCC编译及使用的方法
编译:
??? 第一步、是进行预编译,使用-E参数可以让GCC在预处理结束后停止编译过程:
??? gcc -E hello.c -o hello.i
??? 预处理的宏定义插入到hello.i中
??? 第二步、是将hello.i编译为目标代码,这可以通过使用-c参数来完成:
??? gcc -c hello.i -o hello.o
??? 也可以通过源文件直接生成
??? gcc -c hello.c
??? 第三步、是将生成的目标文件链接成可执行文件:
??? gcc hello.o -o hello
??? 也可以通过源文件直接生成
??? gcc -o hello hello.c
害声背期煤资郑捻颧宣戏湍痢琐伐终趋蛛韩笑靠为犊馋逮沸掳矗脊模霓廊Linux系统中如何编译C程序Linux系统中如何编译C程序
警告:
??? 1、-pedantic 选项,那么使用了扩展语法的地方将产生相应的警告信息
??? 2、-Wall 使用它能够使GCC产生尽可能多的警告信息
??? 3、-Werror,它要求GCC将所有的警告当成错误进行处理
??? 库依赖:
??? 1、Linux下的大多数函数都默认:
??? 头文件放到/usr/include/目录下
??? 而库文件则放到/usr/lib/目录下
忌婴插葡硅仆幂斧臻谐宜橙哮漫入佩岳襄沥涯玲恒寝凄迸虫讯岂教巩赫犹Linux系统中如何编译C程序Linux系统中如何编译C程序
? 2、GCC在编译时必须有自己的办法来查找所需要的头文件和库文件。
??? -I选项可以向GCC的头文件搜索路径中添加新的目录。
??? 例如,如果在/home/xiaowp/include/目录下有编译时所需要的头文件,为了让GCC能够顺利地找到它们,就可以使用-I选项:
??? gcc -o test test.c -I /home/xiaowp/include
??? -L选项向GCC的库文件搜索路径中添加新的目录
??? 例如,如果在/home/xiaowp/lib/目录下有链接时所需要的库文件libfoo.so,为了让GCC能够顺利地找到它,可以使用下面的命令
??? gcc -o test test.c -L /home/xiaowp/lib -lfoo
???
文档评论(0)