自己生成非官方iPhone toolchain的头文件

如果你已经搭建好非官方iPhone toolchain开发包,如果缺少某些头文件,可以用以下方法自己生成。

 

首先下载class-dump:

http://www.codethecode.com/projects/class-dump/

 

接着建立一个headers的目录。

然后使用以下代码:

 

  1. #!/usr/bin/perl
  2.  
  3. use strict;
  4.  
  5. my $directory = "/usr/local/share/iphone-filesystem/System/Library/Frameworks/";
  6. my $command = "/usr/bin/class-dump";
  7.  
  8. opendir(DIR, $directory) || die("Cannot open directory " . $directory . "!\n");
  9. my @dirContents = readdir(DIR);
  10. closedir(DIR);
  11.  
  12. foreach my $child (@dirContents)
  13. {
  14.         if(!(($child eq ".") || ($child eq "..")))
  15.     {
  16.                 my @fileNameParts = split(/\./, $child);
  17.                 my $fileToDump = $directory . $child . "/" . @fileNameParts[0];
  18.                 my $outputFile = "headers/" . @fileNameParts[0];
  19.                 my @args = ($command, "-H""-A""-s""-S""-o"$outputFile, $fileToDump);
  20.                 system(@args) == 0 or die "system @args failed: $?"
  21.     }
  22. }

将执行权限修改为755,执行即可在headers目录中找到所有的头文件了。

然后将需要使用的头文件中的

#import "NSObject.h"

替换成

#import <NSObject.h>

把需要的头文件复制到/usr/local/arm-apple-darwin/include中即可使用。

posted @ 2016-02-20 15:26  starainDou  阅读(198)  评论(0编辑  收藏  举报