当Mac升级了OSX 10.11后,配置class-dump的时候,会发现逆向书上推荐的class-dump存放目录/usr/bin,class-dump存放不进去,尝试过用sudo 还是不被允许。

  • 原因是 OSX10.11的一个新特性 Rootless,也叫System Integrity Protection(SIP)和SELinux差不多,都是限制root用户的权限。
    其实可以在RecoveryMode关闭这个特性,这样就直接可以读写/usr/bin了,不过不建议。
    (关闭方法:开机的时候按住option出现选择磁盘的界面按command + R进入RecoveryMode,选择实用工具终端,输入csrutil disable回车搞定)

查找网上的资料,目前我用的方法是改变 class-dump 的环境变量来使用。
class-dump下载地址:http://stevenygard.com/projects/class-dump/

  1. 首先打开Terminal,输入mkdir ~/bin,在当前用户根目录下创建一个bin目录。
  2. 把下载下来的 dmg 打开,复制文件里面的class-dump到创建的bin目录下。赋予其可执行权限:
    chmod +x ~/bin/class-dump
  3. 打开bash_profile文件配置环境变量:
    vim ~/.bash_profile
    按下 i 键进入编辑状态,在最下方加一行 
    export PATH=$HOME/bin/:$PATH
    按下esc键,再按shift+: 输入 wq进行保存退出编辑
  4. 在Terminal中执行source ~/.bash_profile
  5. 测试是否改变成功

测试结果为:

MelodydeMBP:~ melody$ class-dump
class-dump 3.5 (64 bit)
Usage: class-dump [options] <mach-o-file> where options are:
-a show instance variable offsets
-A show implementation addresses
--arch <arch> choose a specific architecture from a universal binary (ppc, ppc64, i386, x86_64, armv6, armv7, armv7s, arm64)
-C <regex> only display classes matching regular expression
-f <str> find string in method name
-H generate header files in current directory, or directory specified with -o
-I sort classes, categories, and protocols by inheritance (overrides -s)
-o <dir> output directory used for -H
-r recursively expand frameworks and fixed VM shared libraries
-s sort classes and categories by name
-S sort methods by name
-t suppress header in output, for testing
--list-arches list the arches in the file, then exit
--sdk-ios specify iOS SDK version (will look in /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS<version>.sdk
--sdk-mac specify Mac OS X version (will look in /Developer/SDKs/MacOSX<version>.sdk
--sdk-root specify the full SDK root path (or use --sdk-ios/--sdk-mac for a shortcut)
MelodydeMBP:~ melody$

到了这里 class-dump的安装基本完成了^ ^

class-dump在osx 10.11以后安装方法的更多相关文章

  1. OSX 10.11 cocoapods安装命令: sudo gem install -n /usr/local/bin cocoapods

    10.11 cocoapods安装命令: sudo gem install -n /usr/local/bin cocoapods

  2. Windows环境下使用Clover四叶草引导双硬盘安装OSX 10.11.5原版镜像

    作为一个穷逼大学生,想搞iOS开发 买不起Mac只能鼓捣鼓捣黑苹果啦........ 之前我的电脑通过变色龙引导的方式装了个OSX10.10和win8.1双系统,因为自学的是Swift语言之前装的OS ...

  3. osx 10.11.5 El Capitan U盘制作安装

    osx 10.11.5 El Capitan U盘制作安装 1. 下载osx10.11.5 从mac的 appstore下载(官方原版) 2. U盘8G起(注意备份重要资料) 3. 下载完成之后在Fi ...

  4. XE6移动开发环境搭建之IOS篇(7):在Mac OSX 10.8中安装Xcode4.6.3(有图有真相)

    网上能找到的关于Delphi XE系列的移动开发环境的相关文章甚少,本文尽量以详细的图文内容.傻瓜式的表达来告诉你想要的答案. 原创作品,请尊重作者劳动成果,转载请注明出处!!! 在安装Xcode前, ...

  5. Setup Tensorflow with GPU on Mac OSX 10.11

    Setup Tensorflow with GPU on OSX 10.11 环境描述 电脑:MacBook Pro 15.6 CPU: 2.7GHz 显卡: GT 650m 系统:OSX 10.11 ...

  6. osx 10.11 一键制作U盘傻瓜工具最新版 无需任何命令

    osx 10.11 最新版U盘制作工具   无需任何命令   纯傻瓜式  !!!只要把app下载下来放在应用程序  鼠标点点就可以做了... 下载地址:http://diskmakerx.com/do ...

  7. XE6移动开发环境搭建之IOS篇(7):在Mac OSX 10.8中安装XE6的PAServer(有图有真相)

    XE6移动开发环境搭建之IOS篇(7):在Mac OSX 10.8中安装XE6的PAServer(有图有真相) 2014-08-22 21:06 网上能找到的关于Delphi XE系列的移动开发环境的 ...

  8. OSX 10.11 El Caption USB安装盘制作方法

    OSX 10.11 El Caption USB安装盘制作方法 官方在线下载地址:https://developer.apple.com/osx/download/ 1. 用磁盘工具将USB盘抹掉或者 ...

  9. 关闭 OSX 10.11 SIP (System Integrity Protection) 功能

    关闭 OSX 10.11 SIP (System Integrity Protection) 功能 来源 https://cms.35g.tw/coding/%E9%97%9C%E9%96%89-os ...

随机推荐

  1. mongodb最大连接数、最大连接数修改

        mongodb最大连接数是20000. 所以业界流传一段话,千万级以下的用mysql.千万级以上的用mongodb,亿级以上的用hadoop.   查看mongodb最大连接数 mongodb ...

  2. 例子:使用Grunt创建一个Node.js类库

      创建一个文件夹. 打开命令行或者powershell, 运行npm init,根据提示填入package的信息. 在文件夹中创建index.js文件. /*! * mymongolib * Cop ...

  3. OpenGL book list

      From: https://www.codeproject.com/Articles/771225/Learning-Modern-OpenGL   A little guide about mo ...

  4. ASP入门(十九)- SELECT 语句

    SELECT 语法 Access 中 SELECT 完整语法如下: SELECT [predicate] { * | table.* | [table.]field1 [AS alias1] [, [ ...

  5. Word2007视频教程

    超级好教程 http://v.youku.com/v_show/id_XMTAwOTgwNTIw.html 视频: oeasy教你玩转office系列之Word视频教程01 http://v.youk ...

  6. Linux中Centos7下安装Mysql(更名为Mariadb)

    一.安装: yum install mariadb-server mariadb 二.启动服务: systemctl start mariadb 三.配置大小写敏感问题.和字符为utf8: vim / ...

  7. 013-Go通archive/zip生成ZIP文件

    package main import( "io/ioutil" "os" "bytes" "archive/zip" ...

  8. VB6 获取和设置默认打印机

    Private Declare Function GetProfileString Lib "kernel32" Alias "GetProfileStringA&quo ...

  9. 字符串匹配算法——BF、KMP、Sunday

    一:Brute force 从源串的第一个字符开始扫描,逐一与模式串的对应字符进行匹配,若该组字符匹配,则检测下一组字符,如遇失配,则退回到源串的第二个字符,重复上述步骤,直到整个模式串在源串中找到匹 ...

  10. Definitaion of 'utsname' must be imported from module 'Darwin.POSIX.sys.utsname' before it is required

    https://stackoverflow.com/questions/34430354/objective-c-gettimeofday-must-be-imported