
老板让搞 c,我用 vs 在 win 下是能编译和调用的,然后把项目放到 linux 上生成 so 就报错了,一堆错。我只想确定是否能这么做,我好有个排除错误的思路
1 soli 2018-03-28 15:53:08 +08:00 可以。前提是你的 C 代码里没有使用系统调用相关的函数。 |
4 lalal0410 2018-03-28 17:03:02 +08:00 完全用标准 c 写的,应该是可以跨平台的。。就怕你用了 Win 家的私货 |
5 liangdi 2018-03-28 17:28:25 +08:00 show me the code |
6 wzhndd2 2018-03-28 17:36:41 +08:00 show your code |
7 koushiro 2018-03-28 17:48:04 +08:00 用的如果是 ANSI C 应该是没什么问题的 |
8 matsuz 2018-03-28 17:56:43 +08:00 只要代码或者依赖的库里面没有系统调用相关的代码,或者用了一些特定编译器的私货,C 语言可以被视作是跨平台的 |
9 Keyes 2018-03-28 17:58:36 +08:00 via Android 这些错误应该这样解决,改一下这里的函数和那里的逻辑就可以了 提问的艺术 贴代码贴错误吧,跨平台 c 还是要点小技巧 |
10 Keyes 2018-03-28 17:59:28 +08:00 via Android 平台肯定是可以跨的,你给的资料,好吧基本上就没给 |
11 waruqi 2018-03-28 18:50:06 +08:00 via Android 可以用跨平台的 c 库,https://github.com/tboox/tbox |
12 forestyuan 2018-03-28 21:29:02 +08:00 不同厂家的编译器,对标准的支持程度不同,也会造成在 linux 上出现编译错误。 |
13 we2ex 2018-03-28 21:41:43 +08:00 via Android msvc 和 gcc 不一样的,先在 Windows 下用 gcc 编译一下试试 |
14 we2ex 2018-03-28 21:44:21 +08:00 via Android 别说你按 vs 的提示用了 printf_s 这些玩意儿 |
15 pkookp8 2018-03-29 01:06:34 +08:00 via Android 标准 c 库是跨平台的,除非夹杂使用了系统调用或者包含了平台相关的头文件。错误这么多,还是贴个代码来的方便 |
16 zonyitoo 2018-03-29 08:27:10 +08:00 连错误都没放出来,除了来吹水还能怎么办…… |