5

在过去,我可以编译objective-c .m 文件

$ gcc -fobjc-gc-only -framework Foundation sample.m
$ ./a.out

但现在它不起作用,因为该程序很有可能

@autoreleasepool { ... }

条款。我现在如何在命令行上编译一个 Objective-C?

4

2 回答 2

8

所以我只是试了一下clang,效果很好。

$ clang -fobjc-gc-only -framework Foundation  sample.m
$ ./a.out
2013-09-22 20:17:57.150 a.out[19858:903] Hello world.    

结案!:)

于 2013-09-22T11:18:31.323 回答
1

xcodebuild是 XCode IDE 在后台使用来构建你的应用程序,以及你在 CI 服务器之类的东西中使用的东西来从命令行启动构建。它使用您的 .xcproj 或 .xcworkspace 文件来确定要构建的内容,因此这对您来说可能仍然太高了。

在这种情况下,在 xcodebuild 下是 clang 和 llvm。Clang取代了 gcc,并且在某种程度上向后兼容,所以我想这就是你想要开始的地方。

于 2013-09-22T11:20:56.330 回答