发布时间:2016-01-08 14:58:15
今天用makefile, g++编译某个问题时遇到这么一个问题: .a库里面包含一个fun函数, 但是这个fun函数有两个定义的实现, 而且它的实现是被放在了fun.h中, 两个实现分别被宏marco1和宏macro2区分, 如下:fun.h: class instance{ private:  .........【阅读全文】
发布时间:2015-11-10 09:30:55
gcc链接静态库时对待.a文件和.o文件的不同分类: C/C++ HomeworldSDL2015-02-11 12:16 571人阅读 评论(0) 收藏 举报 很多人都知道,gcc在链接静态库时是从前往后找符号。因此如果一份文件foo引用了静态库bar.a,那么在链接命令中,bar.a必须放在foo的后面,也.........【阅读全文】
发布时间:2015-11-03 12:38:54
当前目录中存在 gao.g 文件(其实际内容是一个简单的C语言程序)先是用如下的例子来看:例子一.SUFFIXES:.SUFFIXES: .g .oLIBS=gao.oall: $(LIBS) %.o:%g @echo "in %.o:%g"运行结果是: no rule to make target gao.o...也就是说 .SUFFIXES 和 %.o:%g 模式规则一起使用没有效果。.........【阅读全文】
发布时间:2015-10-31 11:02:04
o: 编译的目标文件a: 静态库,其实就是把若干o文件打了个包so: 动态链接库(共享库) lo: 使用libtool编译出的目标文件,其实就是在o文件中添加了一些信息la: 使用libtool编译出的库文件,其实是个文本文件,记录同名动态库和静态库的相关信息 1 libtool的工作原理 libtool 是一个通用库支持脚本,将使.........【阅读全文】
发布时间:2015-10-26 13:32:28
动态库*.so在linux下用c和c++编程时经常会碰到,最近在网站找了几篇文章介绍动态库的编译和链接,总算搞懂了这个之前一直不太了解得东东,这里做个笔记,也为其它正为动态库链接库而苦恼的兄弟们提供一点帮助。1、动态库的编译下面通过一个例子来介绍如何生成一个动态库。这里有一个头文件:so_test.h,三个.c文件:test.........【阅读全文】