C 语言开发后的软件如何分发?
- windows 中开发编译后是否可以直接放到 linux 中运行
- 如果有 cmake 做编译管理是不是需要把整个构建包放到目标主机再构建
- 可不可以在 windows 上面编译出所有平台都可执行的 exe
看主的问题,感觉是从 0 开始。建议找个专门弄 c / c++的来弄这个吧。
2.可以
3 同 1,可以,但除非有绝对的必要(如目标机器缺乏编译环境,锻炼自己交叉编译水平),否则不要这么干
最方便的应该是配置一套编译环境,编译 4-5 种软件
而不是部署 4-5 个平台,clone 4-5 次代码,再去编译自己的软件
@misaka19000
CI 本质还是你写的脚本吧,当然可以交给 CI
[^1]: PETERSEIBEL. 编程人生:15 位软件先驱访谈录[M]. 人民邮电出版社, 2011.
如果你打算发布跨平台产品,历史会告诉你绝不要抱着“以后再移植”这样的想法。真想做到跨平台的话,就必须同时开发。所谓的移植只会令产品在第二平台上蹩脚不堪。 —— Jamie Zawinski
[^2]: 格拉斯. (2006). 软件工程的事实与谬误 = Facts and fallacies of software engineering. 中国电力出版社.
到目前为止,有关复用的讨论都相当让人失望。小规模复用已经有超过 45 年的历史了,其中的问题已经得到很好的解决。大规模复用问题似乎难以解决,只不过对于相似的问题有一点希望。修改可复用组件通常非常困难,不是一种非常好的方法。那么,当程序员面对一个新问题时,如何能避免彻底从头再来?软件实践者常用的方法之一是根据以往问题的处理方法来解决当前的问题。
然后“来都来了”,测试平台都有了,再弄个编译平台也不多。
注:不现实的意思就是,基本没有人这么做;除了部分用来做嵌入式开发的除外(因为第三方库及工具链都是单独编译的)