Objective-C编译成C++代码报错
来源:互联网 发布:淘宝相机渠道批发骗 编辑:程序博客网 时间:2024/06/05 11:23
由于想了解OC通过runtime机制转成的C++代码是什么样子的,在进入项目目录中,执行cc -rewrite-objc ViewController.m
时如下错:
In file included from ViewController.m:9:**./ViewController.h:9:9: ****fatal error: ****'UIKit/UIKit.h' file not found**#import <UIKit/UIKit.h>** ^**1 error generated.
遂在Google上找到各种类似的解决办法,但都没有对症下药,无论尝试那种办法都报‘UIKit/UIKit.h’ file not found的错。
但最终还是摸索出解决办法,就是使用:
clang -x objective-c -rewrite-objc -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator.sdk xxxxx.m
当然,不能每次都输入这么长的路径和命令,可通过alias简化工作,步骤:
- 进入终端,键入命令
vim ~/.bash_profile
- 在vim界面输入
i
进入编辑编辑状态并且键入:alias rewriteoc='clang -x objective-c -rewrite-objc -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator.sdk'
- 键入完毕,点
esc
退出编辑状态,再键入:wq
退出vim并保存,执行source ~/.bash_profile
<-这句一定要执行,执行才会生效
图例:
然后进入项目目录,找到你想要编译的文件,执行rewriteoc xxx.m
即可成功,图例
最后感受下这浓浓的情谊:
转自 http://www.jianshu.com/p/43a09727eb2c
阅读全文
0 0
- Objective-C编译成C++代码报错
- Objective-C编译成C++代码报错
- Objective-C编译成C++代码报错
- 将c代码编译成dll文件
- 把proto文件编译成objective-c文件
- 用cython做python3代码保护--编译成c代码
- C代码编译成在android上的可执行程序
- [Objective-C] @property是不能被“预处理”的,而是直接编译成汇编指令
- c程序是如何编译成的
- 多个.c文件编译成运行
- .c文件编译成.so文件
- 把C程序编译成IOS SDK
- vs2015 c文件编译成dll文件
- Common lisp编译成C可执行文件
- 编译成android添加按钮报错
- grunt-ts编译成es5报错
- 把PHP代码编译成C/C++代码,使你的php跑得更快
- 把PHP代码编译成C/C++代码,使你的php跑得更快
- WebService接口客户端(axis2)
- Android NDK之JNI陷阱
- C. Rational Resistance
- Form表单传递参数到Servlet的原理
- Linux下安装JDK的方法
- Objective-C编译成C++代码报错
- 内存泄漏检测和隔离--来自msdn2005
- Python 字符串类型及相关操作
- 键盘回车事件导致页面刷新的问题
- linux分析访问日志,统计每五分钟访问量
- java char全局变量默认值为a的原因
- nginx配置负载均衡
- C#中Task任务和Async、Await异步非阻塞方式
- Linux zip命令压缩文件及unzip命令解压文件