免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
12下一页
最近访问板块 发新帖
查看: 8598 | 回复: 16

[C++] 头文件怎么编译? [复制链接]

论坛徽章:
0
发表于 2010-01-11 22:07 |显示全部楼层
10可用积分
有些类库是以头文件形式提供的
用起来虽然方便
但是每个引用了该头文件的cpp编译时都要将该类库编译一次
速度N慢

有什么办法像vs的预编译一样 提前编译头文件?

最佳答案

查看完整内容

预编译不是标准的东西,是各个编译器自己的扩展,如果是gcc,可以参考:http://gcc.gnu.org/onlinedocs/gcc/Precompiled-Headers.html

论坛徽章:
0
发表于 2010-01-11 22:07 |显示全部楼层

回复 #1 皇家救星 的帖子

预编译不是标准的东西,是各个编译器自己的扩展,如果是gcc,可以参考:
http://gcc.gnu.org/onlinedocs/gcc/Precompiled-Headers.html

论坛徽章:
0
发表于 2010-01-11 22:11 |显示全部楼层
目前用的是xlc  程序的编译方法是遍历每一个.cpp文件 生成.o 最后链接在一起

怎么优化成预编译模式呢?

论坛徽章:
0
发表于 2010-01-11 23:30 |显示全部楼层
把你的类库编译成so?

论坛徽章:
0
发表于 2010-01-12 08:37 |显示全部楼层
类库是纯头文件形式提供的 整个类库就是一个头文件 编译成.so也不行啊  还是要引用头文件

论坛徽章:
0
发表于 2010-01-12 15:22 |显示全部楼层
这样搞法链接的时候不会报重复定义?
除非你人肉保证所有c文件中,每个头文件只能被include一次。

论坛徽章:
0
发表于 2010-01-12 16:25 |显示全部楼层
我用的是c++类库 没出现这个问题

c++的stl库也是头文件形式提供的

论坛徽章:
0
发表于 2010-01-12 17:25 |显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽

论坛徽章:
0
发表于 2010-01-12 20:07 |显示全部楼层
查了一下 gcc果然有这个功能

杯具的是 我用的是xlc - -!

论坛徽章:
1
申猴
日期:2014-02-11 14:50:31
发表于 2010-01-12 20:52 |显示全部楼层
xlc好像是没有预编译功能的

要不像gcc一样试试:

xlc -c **.h
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

DTCC2020中国数据库技术大会

【架构革新 高效可控】2020年12月21日-23日第十一届中国数据库技术大会将在北京隆重召开。

大会设置2大主会场,20+技术专场,将邀请超百位行业专家,重点围绕数据架构、AI与大数据、传统企业数据库实践和国产开源数据库等内容展开分享和探讨,为广大数据领域从业人士提供一场年度盛会和交流平台。

http://dtcc.it168.com


大会官网>>
  

北京盛拓优讯信息技术有限公司. 版权所有 16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122
中国互联网协会会员  联系我们:huangweiwei@it168.com
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP