背景:今天在另一台电脑上安装appium,这台电脑是别人用过的,上面已经装了不少工具,遇到了ideviceinstaller报错的问题,搞了几乎一天,记录一下解决的过程。ios
因为ideviceinstaller是appium 1.4 ios自动化的必备工具,因而用brew install ideviceinstaller安装了ideviceinstaller,恶梦今后开始。git
而后就是用appium跑ios脚本的时候提示ideviceinstaller错误,因而单独用ideviceinstaller命令来检查,发现ideviceinstaller –l提示Segmentation fault: 11的错误,咱们知道Segmentation fault通常是C++内存的错误,这里怎么会报错?github
首先想到的办法是重装ideviceinstaller,可是,不管先uninstall再install仍是reinstall,错误都是依旧。因而百度查找问题的根源,果真,这种冷门的问题度娘十分不给力,彻底不知道我想搜什么。因而找google,google搜到在github有一个讨论,讨论的就是这个问题,地址是:app
https://github.com/libimobiledevice/ideviceinstaller/issues/4ide
还一个讨论工具
https://github.com/libimobiledevice/ideviceinstaller/issues/15google
看了这两个讨论,有人建议blog
brew uninstall ideviceinstaller内存
brew install --HEAD ideviceinstallerget
可是这个方法对我没用,依然报一样的错误,这时我几乎已经绝望了。休息了一下,看了看大跌的股市,静下心来从新找问题的根源,再次google,再次去看github上的讨论。发现有人提到多是Home Brew的问题,个人brew是何时安装的,完成记不起来了,细想才发现brew是电脑上原来就安好的,由于我用的是旧的imac。因而把原来的brew彻底卸载,还不放心,再把usr/bin下面的brew用rm –f删除,而后根据官网brew.sh从新安装brew。安好brew后再brew install ideviceinstaller,终于,问题解决了。
回想起来,为何花了这么长时间才找到问题的根本?由于一开始就找错了方向,由于ideviceinstaller报错,因此一直在找ideviceinstaller的缘由。根本缘由多是老版本的brew安新版本的ideviceinstaller会出问题,因此升级一下brew或者从新安装新版本的brew问题就解决了。