xcode select install怎么用

Xcode7 使用iOS7模拟器 - 简书
下载简书移动应用
写了12373字,被48人关注,获得了46个喜欢
Xcode7 使用iOS7模拟器
本文参考方法已过时,谢谢大家关注~
开发中发现Xcode7已经无法下载iOS7的模拟器了。而以前那种直接拷贝模拟器目录或文件到Xcode7对应目录下的方法已经不行了。
使用xcrun命令,打印如下,iOS7的sdk都unavailable了(需要安装Command Line Tools for Xcode才能运行xcrun)
我们可以用Xcode6.4来编译运行并运行iOS7,但是只能用低于iOS9的sdk来编译。如果我们想测试使用iOS9 sdk编译的app在iOS7上跑是否用有问题,并且没有iOS7真机,那么可以使用如下步骤:
我们可以使用Xcode7来编译生成调试app,
使用xcode-select切换commandline tool到Xcode6.4
运行xcode6.4的iOS7模拟器
使用xcrun simctl安装测试app到xcode6.4的iOS7模拟器上
运行查看效果(无法调试)
注1: 现在苹果官方在Xcode6.4中也无法下载到iOS7的模拟器了,所以如果是新装的Xcode6.4,可以从网上找iOS 7.1.simruntime 这个文件,并拷贝到/Library/Developer/CoreSimulator/Profiles/Runtimes 目录即可。
注2: 需要分别安装Xcode7和Xcode6.4的Command Line Tools
下面我们结合一个具体的例子,来讲解测试iOS7兼容性的过程
我们使用Xcode7新建一个工程SimTest。在SimTest的第一个界面ViewController的viewDidAppear中使用iOS8后才有的UIAlertController,如下:
- (void)viewDidAppear:(BOOL)animated {
UIAlertController *alert = [UIAlertController alertControllerWithTitle:@"title" message:@"message" preferredStyle:(UIAlertControllerStyleAlert)];
UIAlertAction* defaultAction = [UIAlertAction actionWithTitle:@"OK" style:UIAlertActionStyleDefault
handler:^(UIAlertAction * action) {}];
[alert addAction:defaultAction];
[self presentViewController:alert animated:YES completion:nil];
预期的结果是在iOS9的模拟器中运行能够弹出警告框,而在iOS7的模拟器中运行崩溃。
1. 生成模拟器调试app
在Xcode7中设置Base SDK 为iOS 9.0, Deployment Target 为7.1,运行模拟器:
该调试产生了模拟器测试版本的app,目录通过工程的Derived Data 目录查找。在Xcode的Window-&Projects中,找到SimTest工程的Derived Data 目录
记录生成的app的路径:
2. 切换commandline tools版本到Xcode6.4
首先使用如下命令,查看当前使用的commandline tools对应的Xcode应用的路径
$ xcode-select -p
/xcode/Xcode7.app/Contents/Developer
我们把它切换到Xcode6.4的路径
$ sudo xcode-select -s /xcode/Xcode6.4.app
$ xcode-select -p
/xcode/Xcode6.4.app/Contents/Developer
3. 启动Xcode6.4的iOS7模拟器
关闭所有的模拟器,然后打开Xcode6.4,并在Xcode6.4图标上右键,选择Open Developer Tool-&iOS Simulator,打开模拟器
在模拟器菜单中选择 Hardware-&Device-&iOS 7.1-&iPhone 5 切换到iOS7的模拟器
4. 安装应用到iOS7模拟器上
使用xcrum simctl 来查看当前模拟器的guid
$ xcrun simctl list | grep "Booted"
iPhone 5 (4BFF949C-E2D5--1BE38E6F7DC1) (Booted)
如上面的guid就是4BFF949C-E2D5--1BE38E6F7DC1 。
进入前面记录的app的路径下,如:
$ cd ~/Library/Developer/Xcode/DerivedData/SimTest-gladxzhqjphxduffeaqtliwshqjn/Build/Products/Debug-iphonesimulator
SimTest.app
执行安装命令:
$ xcrun simctl install 4BFF949C-E2D5--1BE38E6F7DC1
SimTest.app
此时应该可以在iOS7模拟器上看到安装的SimTest应用了。
5. 运行测试
在iOS7模拟器上运行SimTest,发现应用启动后不仅界面没有铺满,而且一会就闪退了,因为iOS7上没有UIAlertController相关的api。
通过以下修改,查看结果:
注释掉viewDidAppear中的代码
关闭Xcode6.4的模拟器,并在Xcode7的模拟器中调试SimTest(生成调试版本app)
关闭Xcode7模拟器,打开Xcode6.4对应的iOS7模拟器,并卸载SimTest
使用xcrum重新安装SimTest(app路径和模拟器guid都不会变)
运行,查看结果
可以看到虽然界面没有铺满(需要设置LaunchImage),但是app已经不会再崩溃了。
通过以上方法,可以测试iOS9编译的app在iOS7上是否存在一些问题。但是上面方法还存在如下缺点:
无法在iOS7模拟器上调试
模拟器上像通知等部分功能无法模拟,只能用真机
所以,如果有iOS7的真机设备,还是推荐使用真机测试,如果手头实在没有这些设备,可以使用本文方法简单测试下iOS7兼容性。
如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
打开微信“扫一扫”,打开网页后点击屏幕右上角分享按钮
被以下专题收入,发现更多相似内容:
玩转简书的第一步,从这个专题开始。
想上首页热门榜么?好内容想被更多人看到么?来投稿吧!如果被拒也不要灰心哦~入选文章会进一个队...
· 126909人关注
学习从点滴开始 !
(PS: 拒绝部分投稿的文章仅仅是由于专题内已收录相关知识点的文章, 并非是投稿的文章技术含量不够好, 望谅解.)
· 4916人关注
提供高质量的IOS技术性文章,供大家学习
· 69人关注
如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
选择支付方式:svn:error use xcode-select to change - 推酷
svn:error use xcode-select to change
error: active developer path (&/Applications/Xcode.app/Contents/Developer&) does not exist, use xcode-select to change
之前遇到过这个问题,忘记怎么解决了,回头翻看自己的博客发现没有记录.今天真是浪费了30分钟来搞这个.
第一遇到的问题是 路径问题
/Applications/Xcode 5.1.1.app/Contents/Developer 注意 这是不对的 因为有空格!!!
正确的应该是
/Applications/Xcode\ 5.1.1.app/Contents/Developer/
第二 遇到的问题没有用sudo
xcode-select --switch /Applications/Xcode\ 5.1.1.app/Contents/Developer/
xcode-select: error: --switch must be run as root (e.g. sudo xcode-select --switch &xcode_folder_path&) 注意 这是不对的
正确的应该是
sudo xcode-select --switch /Applications/Xcode\ 5.1.1.app/Contents/Developer/
已发表评论数()
请填写推刊名
描述不能大于100个字符!
权限设置: 公开
仅自己可见
正文不准确
标题不准确
排版有问题
主题不准确
没有分页内容
图片无法显示
视频无法显示
与原文不一致当系统中有多个版本的 Xcode 时,可以使用‘xcode-select’工具选择默认版本
例: sudo xcode-select -switch /Applications/Xcode.app/Contents/Developer
& 开源中国(OSChina.NET) |
开源中国社区(OSChina.net)是工信部
指定的官方社区Mac OS X 中一些常用的命令行技巧 - 推酷
Mac OS X 中一些常用的命令行技巧
一、网络设置相关
1、网卡的物理地址的动态重置
出于某些需求,例如网络中的 IP 地址或网络帐号与网卡物理地址绑定,使得多个设备无法切换上网,可尝试临时更改物理地址。不过,系统偏好设置是不能修改网卡物理地址的,这就是命令行的用武之地了。具体来说,若心中已有想修改的物理地址,例如 00:1f:3c:93:b5:99,可执行
$ sudo ifconfig en1 ether 00:1f:3c:93:b5:99
来临时修改网卡的物理地址;若没有物理地址,只是想临时启用尝试一下,可用 openssl 生成一个随机的物理地址:
$ openssl rand -hex 6 | sed 's/\(..\)/\1:/g; s/.$//'
当然,用 openssl 生成的物理地址可能会与网络中的网卡地址有冲突,在启用随机生成的网卡地址之前,最好先确认一下是否已有 IP 地址已绑定该物理地址:
2、主机名、计算机名的重置
默认的主机名让人非常无语,特别是出现了一些与 locale 有关的特殊字符。通常情况下,这些并不可见,但是,频繁使用终端时,就会被这些莫名其妙的主机名恶心到了。因此,修改主机名成了当务之急,不过修改的方法很简单。顺次点击左上角的苹果图标-&系统偏好设置-&共享,接着修改主机电脑名与局域网主机名即可。话说回来,Unix 的命令行是强大的,因此,主机名与计算机名的修改也可以通过命令行修改。
$ sudo scutil --set ComputerName newnameformacosx
$ sudo scutil --set HostName newhostnameformacosx
好了,查看一下修改是否成功:
$ scutil --get ComputerName
$ scutil --get HostName
将主机名放入 /etc/hosts 文件
$ echo 127.0.0.1 newhostnameformacosx && /etc/hosts
重启网络服务让上述修改立马生效:
$ sudo dscacheutil -flushcache
$ sudo killall -HUP mDNSResponder
3、命令行下载工具的使用
众所周知,wget 是大多是 *nix 系统中标准的命令行下载工具。不过 Mac OS X 中并不自带 wget,取而代之的是命令行下载工具 curl。下面来介绍一下 curl 的基本用法,例如直接下载
$ curl -O http://wordpress.org/latest.zip
若想将下载文件重命名
$ curl -o wordpress-3.8.zip 'http://wordpress.org/latest.zip'
若想在下载过程中显示进度,可执行
$ curl -# -O http://wordpress.org/latest.zip
如果下载的 url 链接需要重定向,可试试下述方式
$ curl -L -o 'file.zip' '/download.php?fileID=foo'
若想节省带宽,可执行
$ curl -L -O --compressed '/large.report-tab.html'
若下载链接需要输入用户名与密码,可试试
$ curl ftp://james:.121.137.58:21/path/to/backup.tar.gz
$ curl http://james:.121.137.58/file/path/data.tar.gz
若下载的是带加密的链接,例如下载链接由 SSL/HTTPS/SFTP 提供,可试试
$ curl --ftp-ssl -u james:123456 ftp://202.121.137.58:21/backups/07/07/2012/mysql.blog.sql.tar.gz
$ curl -u james sftp://202.121.137.57/backups/data.tar.gz
4、系统更新与 Xcode.app 的命令行工具安装
通常,Mac OS X 上的软件更新是通过 App Store 完成,但是对于那些 geek 来说,可以试试下述命令:
$ sudo softwareupdate --list
会列出所有可能的更新,然后选择需要的更新进行安装
$ sudo softwareupdate --install SomeApp
若不想选择直接更新所有可能的更新,可执行
$ sudo softwareupdate -i -a
Xcode 是 Apple 推出的集成开发环境,它带有 Apple 改良过的 GCC 版本 llvm-gcc。安装它,非常容易,仅需去 App Store 下载 Xcode.app 即可。不过对于 Unix geek 来说,这是不能让人满意的。因为 Xcode.app 不自带命令行工具,需要单独安装它。在 Xcode 5.0 之前,命令行工具的安装非常简单,仅需打开 Xcode.app,然后点击偏好设置-&下载-&组件,然后选择 Xcode 命令行工具安装即可。但是自 Xcode 5.0 开始,安装 Xcode 的命令行工具,须在终端执行下述命令:
$ xcode-select --install
二、文件系统的相关操作
1、HFS 文件系统的扩展属性
在 Mac OS X 下的 hfs+ 文件系统上,文件经常会被附加上 Mac 专有的扩展属性。比如
-rw-r--r--@ 1 daniel
0 16 jul 19:28 1.txt
-rw-r--r--
0 16 jul 19:28 2.txt
会有 @ 标志。这个属性是用户在 Finder 里对文件进行任意操作时就会附加上的。比如右键查看 Get Info,然后在 spotlight commands 里写上几个字再删掉,此时,该文件就会附带有 @ 属性。如果想手动去除掉文件的 @ 属性,可以使用命令 xattr。例如
$ xattr -l 1.txt
com.apple.metadata:kmditemfindercomment
$ xattr -d com.apple.metadata:kmditemfindercomment 1.txt
$ xattr -l 1.txt
$ ls -al 1.txt
此时就没有特殊属性了。
2、文件或文件夹的复制、打包与解包
由于 Mac OS X 文件系统中的扩展属性,若将 Mac OS X 系统中的文件直接用打包释放到 Linux 系统中造成莫名奇妙的错误。这里就需要处理一下文件在复制、打包过程中的扩展属性。首先,Mac OS X 的 cp 命令有一个选项 -X,用它可在复制过程中忽略这些文件的扩展属性。因此,在打包前,先可复制出一份没有扩展属性的文件包,例如
$ cp -Xr /path/to/src - | tar czvf src.tar.gz -
当然,除去扩展属性之外,通常,文件直接打包作成中还会出现 Mac OS X 系统专有的隐藏文件,流入 _MACOSX、._Filename 与 .DS_Store 等。在打 zip 包时,可使用 -X 选项排除这些文件,例如
$ zip -r -X archive_name.zip folder_to_compress
不过,对于 *nix 系统中专有的打包命令 tar,可就没有 -X 选项这么好的东西了。好在 Mac OS X 还是提供了专门的方法,例如,在打 gzip 包时,可使用如下命令
$ COPYFILE_DISABLE=1 tar -zcvf archive_name.tar.gz folder_to_compress
打 bzip2 包也很简单:
$ COPYFILE_DISABLE=1 tar -jcvf archive_name.tar.bz2 folder_to_compress
对于其他格式的 tar 包照此处理。解包过程相对简单,这里附上一段与解包相关的 Bash 配置:
$ echo &# ignore useless invisible files or extended attributes on Mac OS X for cp and tar
export COPYFILE_DISABLE=true
# extract: Extract most know archives with one command
extract () {
if [ -f $1 ] ; then
case $1 in
*.tar.bz2) tar xjf $1 ;
tar xzf $1 ;
bunzip2 $1 ;
unrar e $1 ;
tar xjf $1 ;
tar xzf $1 ;
uncompress $1;
echo &'$1' cannot be extracted via extract()& ;;
echo &'$1' is not a valid file&
}& && ~/.bashrc
3、DMG 格式文件的制作以及 ISO 转换互转
DMG 格式是 Mac OS X 中常用的打包格式,创建 DMG 格式的文件,可直接利用系统自带的磁盘工具(Disk Utils)完成。不过这里稍微介绍一下命令行 hdiutil 的用法。创建 DMG 格式的文件
$ hdiutil create -size 100M -stdinpass -format UDZO -srcfolder folder_to_compress archive_name.dmg
其中可以选用的 DMG 格式有 UDZO(压缩格式,默认)、UDRO(只读格式)、UDBZ(Better compressed image)、UDRW(可读写格式)UDTO(DVD 格式)。若想修改 DMG 文件的大小,可执行
$ hdiutil resize 150M /path/to/the/diskimage
若想修改 DMG 格式中的加密口令,可执行
$ hdiutil chpass /path/to/the/diskimage
挂载 DMG 格式的文件可用
$ hdiutil attach archive_name.dmg
它的挂载点在 /Volumes 目录的同名目录下
$ ls -lah /Volumes/archive_name/
卸载 DMG 文件的方法是:
$ hdiutil eject /Volumes/archive_name/
将 ISO 格式的文件转为 DMG 格式的文件
$ hdiutil convert /path/imagefile.iso -format UDRW -o /path/convertedimage.dmg
将 DMG 格式的文件转为 ISO 格式的文件
$ hdiutil convert /path/imagefile.dmg -format UDTO -o /path/convertedimage.cdr
$ hdiutil makehybrid /path/convertedimage.cdr -iso -joliet -o /path/convertedimage.iso
4、文件系统的挂载
大多数情况下,文件管理器 Finder 会自动发现诸如 USB 等外部设备,因此无须用户自行挂载分区;但是,有的时候,例如 Mac OS X 硬盘重新分区后,划出了 msdos 分区或者 ext4 等非 HFS 文件系统的分区,如果要读写这些分区,就需要手动挂载这些文件系统了。挂载文件系统的第一步是建立挂载点,例如
$ sudo mkdir /Volumes/Foo
$ sudo mkdir /Volumes/bar
接着查看有哪些设备需要手动挂载并挂载它们
$ ls /dev/disk*
$ sudo mount -t msdos /dev/disk1s1 /Volumes/Foo
$ sudo mount -t hfs /dev/disk1s2 /Volumes/bar
最后,卸载这些不在需要的分区
$ diskutil eject /dev/disk1s1
$ diskutil eject /dev/disk1s2
4、文件或文件夹的隐藏属性
通常,为了保护 Mac OS X 系统中的文件不会被用户随意修改,文件管理器 Finder 是不会显示带隐藏属性的文件与系统文件。但是,有些时候,需要操作这些文件(夹), 此时就需要让 Finder 找到这些文件,方法也很简单。在 Finder 的菜单栏中点击 Go -& Go to folder,与之对应的,可使用快捷键
shift+command+G
。 当然,如果对于 Mac OS X 自带的文件管理器不满意,可安装第三方文件管理器,例如 totalfinder。其实,单就隐藏文件来说,Mac OS X 还提供了其他方法,下面逐一介绍它们。
4.1 修改 Finder 配置文件 让 Finder 程序显示隐藏文件
$ defaults write com.apple.finder AppleShowAllExtensions TRUE
让 Finder 程序不显示隐藏文件
$ defaults write com.apple.finder AppleShowAllExtensions FALSE
Finder 的配置文件影响到整个文件系统,属于比较暴力的方法。
4.2、开启或关闭某些文件或文件夹的隐藏属性 用下面命令可以解除文件夹的隐藏属性:
$ chflags nohidden ~/Library
恢复文件夹的隐藏属性:
$ chflags hidden ~/Library
事实上,HFS+ 文件系统中文件和目录的隐藏属性也可通过 SetFile 命令来修改。例如,执行
$ mkdir -p ~/Sites
$ SetFile -a V ~/Sites
可开启文件夹 ~/Sites 的隐藏属性;而执行
$ SetFile -a v ~/Sites
可以关闭它的隐藏属性。
1、重置被遗忘的管理员密码
首先,在系统开机还未进入登录界面时按下
进入单用户模式。然后输入
$ mount -rw /
以读写方式挂载文件系统;接着重置管理员 james 的密码
$ passwd james
完成后,输入
重启开机即可。
2、重建 Spotlight 数据库
比较简单的办法是用鼠标顺次点击系统偏好-& Spotlight -&重建数据库;对于命令行发烧友来说,可以试试
$ sudo mdutil -E /
3、清理缓存
$ sudo purge
已发表评论数()
请填写推刊名
描述不能大于100个字符!
权限设置: 公开
仅自己可见
正文不准确
标题不准确
排版有问题
主题不准确
没有分页内容
图片无法显示
视频无法显示
与原文不一致石炉 for Mac移植版V0.16.0 r559已上传至百度云,可以正常下载了
> 使用xcode-select命令选择默认的Xcode
在Mac里面可能装了许多版本的,在某些特殊情况下,要更改系统当前环境默认的的话,只需一句命令即可
打开Terminal终端,输入下面的代码,[ Path]为需要更改的的路径
xcode-select --switch [Xcode Path]
xcode-select --switch [Xcode Path]
K猫私站 , 版权所有丨本站资源解压密码为:kcat.co|如未注明 , 均为原创丨转载请注明!
or分享 (0)
喜欢IOS开发,熟悉各种乱七八糟的技术,喜欢音乐,喜欢钻研}

我要回帖

更多关于 xcode select install 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信