angelpan1014

 

2012年10月21日

ldd 和ar 用法

摘要: 下面是ar命令的格式: ar [-]{dmpqrtx}[abcfilNoPsSuvV] [membername] [count] archive files... 例如我们可以用ar rv libtest.a hello.o hello1.o来生成一个库,库名字是test,链接时可以用-ltest链接。该库中存放了两个模块hello.o和hello1.o。选项前可以有‘-’字符,也可以没有。下面我们来看看命令的操作选项和任选项。现在我们把{dmpqrtx}部分称为操作选项,而[abcfilNoPsSuvV]部分称为任选项。 {dmpqrtx}中的操作选项在命令中只能并且必须使用其中一个... 阅读全文

posted @ 2012-10-21 22:18 angelpan1014 阅读(253) 评论(0) 推荐(0) 编辑

ldd 和ar

摘要: 1.ar基本用法2.nm基本用法命令 当我们的程序中有经常使用的模块,而且这种模块在其他程序中也会用到,这时按照软件重用的思想,我们应该将它们生成库,使得以后编程可以减少开发代码量。这里介绍两个命令ar和nm,用来对库操作。 1.ar基本用法 ar命令可以用来创建、修改库,也可以从库中提出单个模块。库是一单独的文件,里面包含了按照特定的结构组织起来的其它的一些文件(称做此库文件的member)。原始文件的内容、模式、时间戳、属主、组等属性都保留在库文件中。 下面是ar命令的格式:ar [-]{dmpqrtx}[abcfilNoPsSuvV] [membername] [count] a.. 阅读全文

posted @ 2012-10-21 22:17 angelpan1014 阅读(194) 评论(0) 推荐(0) 编辑

.cpp 编译成.a或是 .so

摘要: 1.将.c 文件编译成.o文件gcc -c test1.c test2.c test3.c2.然后用ar命令生成.a文件,ar crv test.a test1.o test2.o test3.o3.在windows环境,我们有集成开发环境(IDE),使得我们对编译器了解的很少。当我们专向linux时需要在命令行下编译自己的程序需要对编译器的命令行参数比较熟悉。而如果是做嵌入开发构建自己的操作系统时失去了系统平台,需要我们对编译的过程以及可执行文件的内部结构有所了解。本文讲述了如何编译可执行文件、静态库、动态库,如何优化编译器,如何编译无操作系统环境下的程序(自己的OS)等。 ... 阅读全文

posted @ 2012-10-21 22:09 angelpan1014 阅读(1172) 评论(0) 推荐(0) 编辑

导航