免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
12下一页
最近访问板块 发新帖
查看: 8503 | 回复: 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 |显示全部楼层
貌似gcc -c *.h会产生文件?

论坛徽章:
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
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

SACC2019中国系统架构师大会

【数字转型 架构演进】SACC2019中国系统架构师大会
2019年10月31日~11月2日第11届中国系统架构师大会(SACC2019)将在北京隆重召开。四大主线并行的演讲模式,1个主会场、20个技术专场、超千人参与的会议规模,100+来自互联网、金融、制造业、电商等领域的嘉宾阵容,将为广大参会者提供一场最具价值的技术交流盛会。




----------------------------------------

大会官网>>
  

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

清除 Cookies - ChinaUnix - Archiver - WAP - TOP