设为首页 收藏本站
查看: 1283|回复: 0

[经验分享] IBM X系列手提 成功安装MAC OS 并实现IPhone真机调试 教程

[复制链接]

尚未签到

发表于 2015-12-29 12:58:42 | 显示全部楼层 |阅读模式
  

前言
  我和同事奋斗了2个星期,终于能在自己的笔记本上成功安装了苹果操作系统,并实现了真机调试。剩下了99$!
  
  过程简直是心酸,艰苦。苹果一个文件都几个G,下错了、版本错了就全部重来,甚至一个步骤错了,也会卡死几天,这篇文章就详细的介绍整个安装过程。
  
  安装前检测
  
  首先要查看自己的机器能不能安装虚拟机,下载个 securable.exe, 检测下。
  
  其次要看看硬件是否够强,我的IBM笔记本是x201i, i3芯片,4G内存,跑起来非常流畅,和macbook一样速度。
  
  安装雪豹虚拟机
  
  下载 VMware-workstation-full-7.1.5-491717.exe
  下载 darwin.iso
  下载 LeoSnow.DMG
  下载 VMWare 注册机
  下载 MacOSXUpdCombo10.6.8.dmg
  
  安装VMWare还是很简单的,一步步next就行了,最后用注册机注册了就完成。
  
  运行VMWare, 新建一个虚拟机
DSC0000.png
  接下来弹出框,选择Typical如图:
DSC0001.png
  在installer disc image file中选择,引导镜像文件路径如图:
DSC0002.png
  选择other,FreeBSD 64bit如图
DSC0003.png
  输入虚拟机名称和安装路径如图;
DSC0004.png
    输入系统占用大小如图这里是40G:
DSC0005.png
  最后一步单击完成就行了
  这一步很重要,打开刚才新建虚拟机的安装目录,找到后缀为. vmx的文件用记事本打开,然后找到guestOS =这一行,把这行改成guestOS = "darwin10"。保存关闭。
  启动虚拟机,单击power on this virtual machine如图
DSC0006.png
  当安装界面提示:please insert the mac os x dvd时,设置虚拟机的镜像文件路径,如图
DSC0007.png
  接下来
DSC0008.png
  单击ok,接下来
DSC0009.png
  完成。接下来就按章系统的提示进行安装
  
    安装mac os补丁(如果没有安装补丁可能导致开发环境安装不了)
  下载补丁(MacOSXUpdCombo10.6.8.dmg)拷贝到虚拟机中(怎么拷贝下面会介绍)此补丁是把虚拟机升级到10.6.8版本
  双击打开MDG文件,运行pkg文件如图  
DSC00010.png
  

  
  安装XCODE和IPhone的SDK
  
  下载 xcode_3.2.5_and_ios_sdk_4.2_final.dmg
  
  l 网上下载文件,把文件放到u盘或者移动硬盘之类的设备

    l 通过u盘把文件移动到mac虚拟机上,注意插进u盘后虚拟机不能识别u盘需要做一下操作
  在VMWare右下角有个按钮如图
DSC00011.png
  1、 单击Connect虚拟机就能识别到u盘了,u盘将会在虚拟机的桌面右上角显示。

    l 找文件双击打开
DSC00012.png
  打开xcode and ios sdk直接按照提示安装就行了
  
  破解XCode
  1.       创建证书
DSC00013.png
  进去后,选择钥匙串访问 ,在进入目录:
DSC00014.png
DSC00015.png
  2.       破解XCode
  进入终端:
DSC00016.png
  修改SDKSettings.plist

    
  先备份原文件:
cd /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.3.sdk/
sudo cp SDKSettings.plist SDKSettings.plist.orig
  
  进行编辑:
sudo vi SDKSettings.plist
  
  将以下两段中的YES改为NO
<key>CODE_SIGNING_REQUIRED</key>
<string>YES</string>
...
<key>ENTITLEMENTS_REQUIRED</key>
<string>YES</string>
  
  修改Info.plist
  
  同样先备份原文件:
cd /Developer/Platforms/iPhoneOS.platform/
sudo cp Info.plist Info.plist.orig
  
  进行编辑:
sudo vi Info.plist
  
  将全部的XCiPhoneOSCodeSignContext 修改成 XCCodeSignContext,一共有 3 处。
  
  (3)在桌面上新建并编辑名为script的脚本:
cd ~/Desktop
vi script

输入以下内容:(点击&#8220;i&#8221;进入编辑模式)
#!/bin/bash
cd /Developer/Platforms/iPhoneOS.platform/Developer/Library/Xcode/Plug-ins/iPhoneOS\ Build\ System\ Support.xcplugin/Contents/MacOS/
dd if=iPhoneOS\ Build\ System\ Support of=working bs=500 count=255
printf "xc3x26x00x00" >> working
/bin/mv -n iPhoneOS\ Build\ System\ Support iPhoneOS\ Build\ System\ Support.original
/bin/mv working iPhoneOS\ Build\ System\ Support
chmod a+x iPhoneOS\ Build\ System\ Support

保存并退出(点击Esc,输入:wq)。
授予这个脚本执行权限并执行它
chmod 777 script
./script
  运行成功会输出类似结果:
223+1 records in
223+1 records out
111648 bytes transferred in 0.002678 secs (41692099 bytes/sec)
  (4)生成脚本
执行命令:
mkdir /Developer/iphoneentitlements401
cd /Developer/iphoneentitlements401
curl -O http://www.alexwhittemore.com/iphone/gen_entitlements.txt
mv gen_entitlements.txt gen_entitlements.py
chmod 777 gen_entitlements.py
  
如果上面的代码运行有问题,也可以在/Developer目录下新建一个entitlements.py文件,并把下面的代码复制到该文件中,最后赋予777权限:


#!/usr/bin/env python

import sys

import struct

if len(sys.argv) != 3:

         print "Usage: %s appname dest_file.xcent" % sys.argv[0]

         sys.exit(-1)

APPNAME = sys.argv[1]

DEST = sys.argv[2]

if not DEST.endswith('.xml') and not DEST.endswith('.xcent'):

         print "Dest must be .xml (for ldid) or .xcent (for codesign)"

         sys.exit(-1)

entitlements = """

<?xml version="1.0" encoding="UTF-8"?>

<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">

<plist version="1.0">

<dict>

    <key>application-identifier</key>

    <string>%s</string>

    <key>get-task-allow</key>

    <true/>

</dict>

</plist>

""" % APPNAME

f = open(DEST,'w')

if DEST.endswith('.xcent'):

         f.write("\xfa\xde\x71\x71")

         f.write(struct.pack('>L', len(entitlements) + 8))

f.write(entitlements)

f.close()

  
  3.       项目配置
  一定要安装xcode 4.2,新建一个项目 helloworld3
DSC00017.png
DSC00018.png
DSC00019.png
DSC00020.png
  2.脚本设置,将下面的代码添加到Phase中:

export
CODESIGN_ALLOCATE=/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/codesign_allocate
if [ "${PLATFORM_NAME}" == "iphoneos" ]; then
/Developer/iphoneentitlements401/gen_entitlements.py "my.company.${PROJECT_NAME}" "${BUILT_PRODUCTS_DIR}/${WRAPPER_NAME}/${PROJECT_NAME}.xcent";
codesign -f -s "iPhone Developer" --entitlements "${BUILT_PRODUCTS_DIR}/${WRAPPER_NAME}/${PROJECT_NAME}.xcent" "${BUILT_PRODUCTS_DIR}/${WRAPPER_NAME}/"
fi


DSC00021.png
DSC00022.png
DSC00023.png
  
  完成
  
   后续
  不要看本文短短几行,只要走错一步,都会浪费一天时间,我们可是花了2个星期,才成功进入果粉时代。
  
  如果有朋友看本文还是觉得模糊,可以加入我们的讨论群: 192700436
  
  如果有需要文中涉及到的所有文件,一共13个G,可以联系我们 pixysoft.taobao.com,我们发个U盘给你,188元。还有iPHone入门教材的视频,保证1天能够成功开发个QQ Iphone版本的界面的软件出来。
  
  参考文献:
  http://www.iinterest.net/2011/10/03/xcode4-port-program-to-idevice-without-idp/

    http://www.codeios.com/thread-1054-1-1.html
  http://www.cocoachina.com/bbs/read.php?tid-45032.html
  http://www.cnblogs.com/flyingzl/articles/2207717.html

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-157982-1-1.html 上篇帖子: 在 Mac OS X 下使用 Android NDK r5b 编译 FFmpeg 0.8 下篇帖子: 在MAC OS X下安装usb转串口驱动(PL2303主控芯片)
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表