linux开发环境介绍—gautoconfautomake.pptx

linux开发环境介绍—gautoconfautomake.pptx

  1. 1、本文档共30页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
linux开发环境介绍—gautoconfautomake

Linux开发环境介绍 简介(一) gcc/g++, Makefile, autoconf,automake Introduction to Linux Dev Env. (Ser. 1) CompileDistribution. Delivered By LiHao @founder(Shanghai) Agenda 概述 (Overview) gcc/g++ 及相关参数介绍 autoconf, automake, Configure , Makefile, Libtools, GDB介绍 内存泄露检测工具介绍 (Valgrind, etc.) Lex介绍 YACC介绍 gcc/g++ gcc/g++ gcc默认是处理.c的文件,使用c的方式来进行链接。 g++默认是处理.cxx/.hxx的文件,使用c++方式来进行链接。 编译器在执行编译时(How to) 1)进行预处理,输出 .i文件 ,主要处理一些宏定义之类的代码。 预处理器:cpp 2) 将预处理后的文件生成汇编文件 ,.s文件。 编译器:egcs gcc/g++ 3) 将汇编文件编译成目标文件 .o文件。 汇编器as 4) 链接目标代码,生成可执行文件。 链接器 ld 实例介绍 --- (filename: test.cpp) #include stdio.h #define TEXT “hello” #define SIZE 1024 int main (int argc, char* argv[]) { printf (“the Message:%s, the size:%d”, TEXT, SIZE); return 0; } gcc/g++ options introduction---compile 注意(?) 关于所以选项都为大小写敏感,及 –E 和–e代表不同的编译选项(如果存在着这两个选项)。 -E 进行预处理,例如:对编译选项#ifdef #else #endif ,#define进行处理,但不产生输出文件,如果要查询 预处理后文件,将该结果进行重定向即可。 g++ -E test.cpp test_after_pre.text -S 进行预处理并对该文件进行汇编处理。 g++ -S test.cpp ls –l *.s -c 进行预处理,编译,汇编并生成目标文件(.o文件),通常我们在makefile文件中使用此项命令进行编译并生成目标文件(当然可以使用makefile默认编译规则)。 g++ -c test.cpp ls –l *.o -o 指定编译后输出可执行文件名。 g++ -c test.cpp –o test gcc/g++ options introduction---directory/file opts 目的:指定在编译时所寻找缺失文件的所在目录或文件。 -I dir 在编译指定查找头文件所在的目录。 g++ -c test.cpp –o test –I/usr/local/includes -i filename 指定头文件,相对于#include “filename” g++ -c test.cpp –o test -itest.h -L 在链接时指定查找库文件所在的目录 g++ -c test.cpp –o test –L/usr/local/libs -l Filename 指定链接时库文件名称 libFilename.a(可以使用-l libFilename或者-lfilename) g++ -c test.cpp –o test –lpthread -lnsl gcc/g++ options introduction---directory/file opts 选择匹配的顺序(?) 1)当前路径 2)用户指定的路径(即我们参数说指定的) 3)环境变量指定的路径,即 PATH, LD_LIBRARY_PATH, 多个路径使用 : 分割. 我们可以使用export,命令设置自己的环境变量,亦可以编辑~/.bashrc或者.profile等文件来设置,每次登陆后就使用当前的环境 4)系统默认的路径 5)ld.so的环境变量(运行时) 6)编程时候手动指定路径 More (reference to ? ) gcc/g++ options introduction---debug opts 目的:产生调试信息。 -g 以操作系统的本地格式,产生调试信息. GDB能够

文档评论(0)

shaoye348 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档