自己生成非官方iPhone toolchain的头文件
如果你已经搭建好非官方iPhone toolchain开发包,如果缺少某些头文件,可以用以下方法自己生成。
首先下载class-dump:
http://www.codethecode.com/projects/class-dump/
接着建立一个headers的目录。
然后使用以下代码:
-
#!/usr/bin/perl
-
-
use strict;
-
-
my $directory = "/usr/local/share/iphone-filesystem/System/Library/Frameworks/";
-
my $command = "/usr/bin/class-dump";
-
-
opendir(DIR, $directory) || die("Cannot open directory " . $directory . "!\n");
-
my @dirContents = readdir(DIR);
-
closedir(DIR);
-
-
foreach my $child (@dirContents)
-
{
-
if(!(($child eq ".") || ($child eq "..")))
-
{
-
my @fileNameParts = split(/\./, $child);
-
my $fileToDump = $directory . $child . "/" . @fileNameParts[0];
-
my $outputFile = "headers/" . @fileNameParts[0];
-
my @args = ($command, "-H", "-A", "-s", "-S", "-o", $outputFile, $fileToDump);
-
system(@args) == 0 or die "system @args failed: $?"
-
}
-
}
将执行权限修改为755,执行即可在headers目录中找到所有的头文件了。
然后将需要使用的头文件中的
#import "NSObject.h"
替换成
#import <NSObject.h>
把需要的头文件复制到/usr/local/arm-apple-darwin/include中即可使用。