使用Android SDK的gcc -x objective-c

Iva*_*ica 5 android gcc objective-c objective-c++

由于Objective-C存在并且即使在MinGW中也受支持,通过传递-x objective-c,是否存在使用Android SDK实现此目的的黑客攻击?我对同事的机器进行了初步测试,看来语言objective-c不受支持.

我不想让UIKit或AppKit,甚至基金会工作; 我在Objective-C中编写了大部分OpenGLES游戏,并成功将其移植到Mac OS X和Windows上; 我相当肯定,一旦我有时间弄清楚足够的GNUStep,我就可以轻松地将它移植到GNU/Linux(即使没有它,我也可以创建类来让游戏运行).

我只对基本语言和基本运行时感兴趣(如果可能的话包括属性); 甚至NSObject可以很容易地写到我需要的程度.


与此同时,我已经设法编译了一些Objective-C代码,并为此编写了一个指南:

我的答案中有更多细节.

Chr*_*ton 1

您可能必须在启用该选项的情况下重新编译 ndk gcc 的源代码。在极端情况下,您可能必须在上游找到该选项的代码并将其添加到 ndk gcc 的源代码中。

将运行时库移植到 Bionic 之上而不是 glibc 上工作可能更有趣。

请注意,android 并不能很好地处理纯原生二进制文件,您需要从 java 包装应用程序中调用 jni 库,您必须通过该应用程序回调音频或分叉并执行该应用程序一种(不推荐,并且会给您留下依赖于设备的音频技巧)。