我想用clang转换Object-C到C ++,引用错误如下:
userdeMac-mini:Demo xxx $ clang -rewrite-objc main.m
main.m:9:9:致命错误:' UIKit / UIKit.h'找不到文件
import< #UIKit / UIKit.h>生成了1个错误。
打扰一下,怎么解决?
答案 0 :(得分:2)
这对我有用。您可以尝试根据SDK位置更改路径。
clang -x objective-c -rewrite-objc -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator9.1.sdk ViewController.m
答案 1 :(得分:1)
main.m:9:9: fatal error: 'UIKit/UIKit.h' file not found
这意味着无法找到UIKit标头。你在某处安装了iOS SDK吗?您是否正确配置了makefile(或构建环境)中的搜索路径?
开始调查的最简单方法是从一个有效的Xcode项目开始,编译单个.m文件,然后查看用于编译该文件的命令行。 clang重写器采用略有不同的选项,但搜索路径和许多其他配置是相同的。
答案 2 :(得分:0)
首先,您应该使用“cd”命令进入“clang - rewrite - objc”文件目录,然后使用命令如“clang - x objective - c - rewrite - objc - isysroot / Applications / Xcode。应用程序/内容/开发人员/平台/ iPhoneSimulator平台/ Developer / SDKs / iPhoneSimulatorX Xs dk Xm“,”X“是您的iPhoneSimulator的版本和”clang - rewrite - objc“文件名。