跨平台软件编译为什么那么难

1、文件路径问题:/和/处理,有些工具不能正常识别
2、构建工具问题,nmake和make语法不一样,make多个版本之间语法也不一样,make windows port多个版本之间也不一样(常见有cygwin、msys、unixtools、gunwin32、mingw等等)
3、同类工具参数不同,比如mkdir在windows和linux都有,但是参数用法不一样
4、一些工具生成的代码文件不一样,有些工具产生的源码文件会在每行加上双引号
5、编译工具支持的语法不一样,例如vc对一些标准支持不够,导致ffmpeg无法在vc上编译通过,汇编语法也不一样
6、构建工具过多,有些工具很生僻,甚至有些工具就是为作者自己使用开发的,简直就是折磨人呀

7、有些软件虽然能跨平台,但是软件作者只维护一两个平台的版本,其他平台的支持是由贡献者提供的,所以其他平台的编译脚步可能是过时的,源码也有可能不能正常编译
8、构建一个软件可能需要很多依赖库,而各个依赖库的平台支持情况各不相同,重复1~7情况

 

 

以上是我编译webkit时遇到的一些问题,整理的不完整,欢迎补充

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值