作者joylintp (全力冲的筑梦少年)
看板C_and_CPP
标题[问题] 菜鸟对跨作业系统编译的疑问
时间Sun Sep 24 13:28:56 2017
====初学者发文,不专业请见谅m(._.)m====
小弟电脑是Win10 64位元系统,
写的是C语言 IDE用CodeBlocks,
请问有没有办法用现在的作业系统编译出
可在其他作业系统运作的执行档?
--
☆═╦═ \(・ω・)/ /(╦_╦)\ ☆
║ ║ ★
║╔═╗║ ║║ ║╠═╗═╬★ ★═╗
║║★║╚═╣║ ║║ ║ ║ ║ ║
╚═╝╚═╝★ ║║ ║║ ║ ║ ╠═╝
☆\(⊙▽⊙)/╚═╝ >(>_<)< ╚╝ ║ ☆
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 61.230.136.157
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/C_and_CPP/M.1506230942.A.1DB.html
1F:→ damody: 很难 不适合新手 09/24 13:33
2F:→ damody: 还是乖乖用vm或双系统 09/24 13:34
3F:推 chuegou: 就跨平台编译阿 常见的像是在windows写MCU code 09/24 14:18
4F:→ Lipraxde: cross compiler用来跨平台的,可以跨作业系统吗? 09/24 14:20
5F:→ caras: 楼上你再想想你自己说的话是什麽意思 09/24 14:23
6F:→ testPtt: 也可以用docker 09/24 14:29
7F:→ Lipraxde: 感觉我好智障Q_Q 09/24 14:33
8F:推 eye5002003: 就virtual machine罗 09/24 14:46
9F:→ cortex1234: gcc 不是办不到,但是设定起来非常麻烦 09/24 15:12
10F:→ cortex1234: 先练习写出 Windows 和 Linux 都可以跑的 code 就行了 09/24 15:13
11F:→ cortex1234: 刚开始问题不大,学得越多就越容易触及跨平台的毛病 09/24 15:15
12F:→ cortex1234: 编译可以用 VM 装另一个作业系统来编,简单多了 09/24 15:16
13F:→ cortex1234: 当然你硬要挑战 cross compiler 我也不会反对的 09/24 15:16
14F:→ cortex1234: 难归难,办得到的人薪水绝对不会太低 09/24 15:17
15F:推 oToToT: Windows要编linux用bad in windows可吗? 09/25 15:54
16F:→ oToToT: *bash 09/25 15:54
17F:推 Neisseria: Bash on Windows 出来的执行档不是原生的 09/25 16:18
18F:→ Neisseria: 那个东西比较像 Cygwin,是一个特殊的子系统 09/25 16:19
19F:→ Neisseria: 可以考虑 msys2,比原来的 mingw + msys 友善一些 09/25 16:19
20F:→ Neisseria: 看错了,要 cross compile 到 Linux 不是用 msys2 09/25 16:20
21F:推 Neisseria: 我也只会开 VM,能编译就好了 = =... 09/25 16:24
22F:→ sa73157: 楼上完全误解WSL 在WSL里跑的就是原生执行档 09/25 17:01
23F:→ sa73157: 在WSL里用Linux的toolchain build出来的就是ELF 09/25 17:03
24F:推 Neisseria: 感谢楼上说明。小弟所谓「不是原生的」指的是 09/26 04:30
25F:→ Neisseria: 「不是原生的 Windows 执行档」,不过小弟没注意到 09/26 04:30
26F:→ Neisseria: WSL 里面跑的是真的 ELF 09/26 04:31
27F:推 soheadsome: vs 不是可以remote compile 吗 09/27 21:16
28F:→ Killercat: 基本上 只要没有include/link到os specified的档案 09/27 21:35
29F:→ Killercat: 都可以用不同toolchain来换平台。 09/27 21:36
30F:→ Killercat: 当然里面还有很多眉角(如endian) 不过大致能编过 09/27 21:36