一、HomeBrew相关:

先对HomeBrew做一个简单的介绍吧,之前了解的也不多。

主要就是用于安装Unix的工具包。

注意:HomeBrew依赖于Xcode的 Command Line Tool.

官方的链接:

http://mxcl.github.io/homebrew/

Homebrew作为OS X上强大的包管理器,为系统软件提供了非常方便的安装方式,独特式的解决了包的依赖问题,并不再需要烦人的sudo,一键式编译,无参数困扰,真的,你值得拥有。

安装

Homebrew依赖于XCode,首先需要安装,lion后XCode也是免费的了,直接到App store下载。同时Homebrew也依赖ruby,Mac已经自带ruby。

1
ruby -e "$(curl -fsSL https://raw.github.com/mxcl/homebrew/go)"

使用

  • 查看brew的帮助
1
brew --help
  • 安装软件
1
brew install git
  • 卸载软件
1
brew uninstall git
  • 搜索软件
1
brew search git
  • 显示已经安装软件列表
1
brew list
  • 更新软件,把所有的Formula目录更新,并且会对本机已经安装并有更新的软件用*标明。
1
brew update
  • 更新某具体软件
1
brew upgrade git
  • 查看软件信息
1
brew [info | home] [FORMULA...]
  • 删除程序,和upgrade一样,单个软件删除和所有程序老版删除。
1
2
brew cleanup git
brew cleanup
  • 查看那些已安装的程序需要更新
1
brew outdated

程序安装路径及文件夹

Homebrew将本地的/usr/local初始化为git的工作树,并将目录所有者变更为当前所操作的用户,以后的操作将不需要sudo。

1
2
3
4
5
6
-bin          用于存放所安装程序的启动链接(相当于快捷方式)
-Cellar 所以brew安装的程序,都将以[程序名/版本号]存放于本目录下
-etc brew安装程序的配置文件默认存放路径
-Library Homebrew 系统自身文件夹
+–Formula 程序的下载路径和编译参数及安装路径等配置文件存放地
+–Homebrew brew程序自身命令集

HomeBrew与MacPorts的比较,貌似MacPorts会被人逐渐遗弃

http://hi.hiing.net/2011/06/use-homebrew-package-management.html

二、XCTool相关

xctool是facebook开源的一个命令行工具,用来替代苹果的xcodebuild工具。

功能如下:

  • 像xcode一样跑测试用例
  • 结构化输出编译测试结果
  • 彩色且方便阅读的编译内容输出

示例截图:

如何安装xctool

最简单的办法是通过homebrew安装xctool

brew update
brew install xctool

搞定

如何使用xctool

打包

path/to/xctool.sh \
-workspace YourWorkspace.xcworkspace \
-scheme YourScheme \
archive

build

path/to/xctool.sh \
-workspace YourWorkspace.xcworkspace \
-scheme YourScheme \
build

测试

path/to/xctool.sh \
-workspace YourWorkspace.xcworkspace \
-scheme YourScheme \
test

使用命令如下,上面的命令参照

切换到工程目录下,然后输入如下命令:

xctool -workspace taoappios.xcworkspace -scheme taoappios archive

生成archive文件

xctool -workspace taoappios.xcworkspace -scheme taoappios build

编译

usage: xctool [BASE OPTIONS] [ACTION [ACTION ARGUMENTS]] ...

Examples:

xctool [BASE OPTIONS] clean

xctool [BASE OPTIONS] build

xctool [BASE OPTIONS] build-tests [-only TARGET] [-skip-deps]

xctool [BASE OPTIONS] run-tests [-test-sdk SDK] [-only SPEC] [-freshSimulator] [-freshInstall]

xctool [BASE OPTIONS] test [-test-sdk SDK] [-only SPEC] [-skip-deps] [-freshSimulator] [-freshInstall]

xctool [BASE OPTIONS] archive

Base Options:

-help                    show help

-workspace PATH          path to workspace

-project PATH            path to project

-scheme NAME             scheme to use for building or testing

-find-target TARGET      Search for the workspace/project/scheme to build the target

-find-target-path PATH   Path to search for -find-target.

-find-target-exclude-pathColon-separated list of paths to exclude for -find-target.

-sdk VERSION             sdk to use for building (e.g. 6.0, 6.1)

-configuration NAME      configuration to use (e.g. Debug, Release)

-jobs NUMBER             number of concurrent build operations to run

-arch ARCH               arch to build for (e.g. i386, armv7)

-toolchain PATH          path to toolchain

-xcconfig PATH           path to an xcconfig

-reporter TYPE[:FILE]    add reporter

-showBuildSettings       display a list of build settings and values

-version                 print version and exit

SETTING=VALUE            Set the build 'setting' to 'value'

Options for 'build-tests' action:

-only TARGET             build only a specific test TARGET

-skip-deps               Only build the target, not its dependencies

Options for 'run-tests' action:

-test-sdk SDK            SDK to test with

-only SPEC               SPEC is TARGET[:Class/case[,Class2/case2]]

-freshSimulator          Start fresh simulator for each application test target

-freshInstall            Use clean install of TEST_HOST for every app test run

Options for 'test' action:

-test-sdk SDK            SDK to test with

-only SPEC               SPEC is TARGET[:Class/case[,Class2/case2]]

-skip-deps               Only build the target, not its dependencies

-freshSimulator          Start fresh simulator for each application test target

-freshInstall            Use clean install of TEST_HOST for every app test run

Mac 安装 home Brew以及 XCTool的过程记录的更多相关文章

  1. Mac 安装工具包brew

    linux有命令行工具 apt-get ,Mac 下也有类似的brew 也就是HomeBrew 网址:http://brew.sh/index_zh-cn.html 可以看到mac安装的时候只需要执行 ...

  2. mac安装神器brew

    安装方法:命令行输入 /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/ma ...

  3. mac安装卸载brew

    1.安装 访问https://brew.sh,copy图中的命令到命令行中,进行下载安装 2.卸载 官方版本的卸载: /usr/bin/ruby -e "$(curl -fsSL https ...

  4. Mac安装最新tensorflow遇到的坑,记录下方便后人

    之前其他mac电脑安装tensorflow时候一切顺利,一行命令sudo pip install tensorflow就高搞定了,但是今天在新mac上安装tensorflow时候出现了一个bug,搞了 ...

  5. Mac旧机「焕」新机过程记录

    一.首先我做了非硬件上的优化处理,在升级到10.14之前还是挺管用的.但是为了使用最新的iOS SDK,升级到10.14以后,已经不管用了. 1.设置->通用 将动画相关的选项去掉. 2.设置- ...

  6. ubuntu16.04x64环境下 tar方式 安装mysql-5.7.21 试水过程记录

    前几天读研时候上铺的同学和我说到了一个问题,就是他们单位的redhat服务器给MySQL服务的数据库文件所在的磁盘空间不够了,对于这个问题我也是没有想过的,在受朋友之托下考虑自己做下复现,由于同学所在 ...

  7. docker安装CentOS7及JNI使用相关过程记录

    docker pull centos:centos7(拉取镜像) docker run -itd --name centos-test centos:centos7 (运行容器) docker exe ...

  8. mac安装brew, bower

    Mac安装Brew 安装命令如下:curl -LsSf http://github.com/mxcl/homebrew/tarball/master | sudo tar xvz -C/usr/loc ...

  9. 关于docker-环境部署及拉取镜像创建容器的过程记录

    背景:因安全部门要求对特定几台应用主机的进行漏洞及脆弱性扫描,使用的工具需要基于docker环境,即他们提供镜像,让我们创建成容器,于是将整个环境安装及创建docker容器的过程记录于此 1.还是先得 ...

随机推荐

  1. c#开发Mongo笔记第六篇

    之前写的五篇比较得到了大家的积极反馈,也有个别高手对我写我写出的代码进行了指教. 其中提到的我写的查询方法性能有问题,我想了想,如果mongo不是延时加载的话,那我的查询就真的有问题了,就成了查询出来 ...

  2. Asp.net mvc上传多张图片后台存储

    前台页面通过<file name="img">标签数组上传图片,后台根据Request.Files["img"]来接收前台上传的图片. 1 Syst ...

  3. 20145225《Java程序设计》 2015—2016年学期课程总结

    20145225<Java程序设计> 2015—2016年学期课程总结 读书笔记链接汇总 1.2016年2月25日 <Java程序设计>课程准备之问卷调查 摘要: 一.你对自己 ...

  4. js 获取时间差

    写这片博客 ,下面代码虽然简单,但却很实用...默默留下来... var minute = 1000 * 60;var hour = minute * 60;var day = hour * 24;v ...

  5. 基本套接字编程(5) -- epoll篇

    1. epoll技术 epoll是Linux内核为处理大批量文件描述符而作了改进的poll,是Linux下多路复用IO接口select/poll的增强版本,它能显著提高程序在大量并发连接中只有少量活跃 ...

  6. [SmartFoxServer概述]SFS2X协议

    SFS2X 客户端-服务器协议 SFS2X使用了一种高效的二进制协议,这种协议可以使服务器在各方面都表现出色.消息通过客户端和服务器引擎得到快速转换,在带宽上传输可更加轻便.附加的即时压缩,能够在不影 ...

  7. JSONP跨域数据调用

    引自:http://kb.cnblogs.com/page/139725/ Web页面上调用js文件时则不受是否跨域的影响(不仅如此,我们还发现凡是拥有”src”这个属性的标签都拥有跨域的能力,比如& ...

  8. IOS笔记之UIKit_UIAlertView、UIActionSheet

    //首先必须继承协议 @interface TRViewController : UIViewController<UIAlertViewDelegate,UIActionSheetDelega ...

  9. JqueryEasyUI浅谈---视频教程公布

    http://pan.baidu.com/s/1pJqGXez 前两天我在博客园发了一个关于JqueryEasyUI浅谈本地化应用的博客,我简单的介绍了JqueryEasyUI的应用,今天我录制了了一 ...

  10. 【转载】php中iconv函数使用方法

    原文:http://www.phpweblog.net/star65225692/archive/2011/03/23/7524.html     在选择用什么工具开发,唯一的指导标准就是:用最少的人 ...