Mac編譯開源庫需要的工具

  1. 安裝Xcode携悯,APP STORE下載即可伐庭。
  2. 安裝git
1. 命令行安裝
/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
brew install git
2. 通過Xcode安裝
直接從AppStore安裝Xcode印蔬,Xcode集成了Git誊酌,不過默認(rèn)沒有安裝振诬,你需要運(yùn)行Xcode,選擇菜單“Xcode”->“Preferences”雨涛,在彈出窗口中找到“Downloads”枢舶,選擇“Command Line Tools”,點(diǎn)“Install”就可以完成安裝了替久。
  1. Homebrew
安裝:/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
卸載:/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/uninstall)"
  1. Mac升級(jí)nasm
ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"< /dev/null 2> /dev/null
brew install nasm
查看版本nasm -v
查看支持的格式列表nasm -hf
  1. yasm
1.去yasm官網(wǎng)下載yasm凉泄,點(diǎn)標(biāo)題可直接下載。
2.解壓
3.進(jìn)入目錄執(zhí)行./configure && make -j 4 && sudo make install
  1. 升級(jí)bash蚯根。
# [Mac升級(jí)bash到最新版本](https://www.cnblogs.com/litifeng/p/8448019.html)
mac自帶的bash為3.2版本旧困,而最新的bash是4.9,需要升級(jí)了,才能支持關(guān)聯(lián)數(shù)組等新特性吼具。
1. brew install bash
2. 安裝到/usr/local/bin/bash里面僚纷。可以通過修改/etc/shells文件拗盒,來完成開機(jī)使用新版本的bash
3. 但是怖竭,無法改變/bin/bash的版本,這里仍舊為3.2版本陡蝇,這給使用腳本帶來不便痊臭,因?yàn)槟J(rèn)都是#!/bin/bash
4. 細(xì)查后,發(fā)現(xiàn)原來mac系統(tǒng)禁止更改系統(tǒng)目錄的權(quán)限登夫,引入sip機(jī)制广匙,需要先關(guān)閉,修改恼策,再打開這一系列操作鸦致。
5. 下面是打開和關(guān)閉sip的步驟。
(1)重啟OSX系統(tǒng)涣楷,然后按住Command+R
(2)出現(xiàn)界面之后分唾,選擇Utilities menu中Terminal
(3)在Terminal中輸入csrutil disable關(guān)閉SIP(csrutil enable打開SIP)
(4)重啟reboot OSX
6. 關(guān)閉sip后,加入軟連接狮斗,在打開sip
sudo mv /bin/bash  /bin/bash.origin
sudo ln -s /usr/local/bin/bash /bin/bash
  1. 安裝Command Line Tools命令行工具
xcode-select --install
  1. 配置ADB工具
brew cask install android-platform-tools
  1. 配置Mac電腦端FFmpeg
brew install ffmpeg
  1. 配置Mac電腦端openCV
brew install opencv
  1. 配置全局變量
    在根目錄 ~ 下創(chuàng)建.bash_profile文件,注意是你的用戶名文件夾下
Android SDK 配置
export ANDROID_SDK=/Users/axing/Documents/android-sdk-macosx
export PATH=$ANDROID_SDK/platform-tools:$PATH
export PATH=$ANDROID_SDK/tools:$PATH

Android NDK 配置
export ANDROID_NDK=/Users/axing/Documents/android-ndk-r14b
export PATH=$ANDROID_NDK:$PATH

Android Flutter配置
export PUB_HOSTED_URL=https://pub.flutter-io.cn
export FLUTTER_STORAGE_BASE_URL=https://storage.flutter-io.cn
export PATH=/Volumes/document/flutter/bin:$PATH

執(zhí)行命令source .bash_profile更新

測(cè)試:輸入ndk-build -v
  1. 配置host
打開終端绽乔,輸入sudo vi /etc/hosts,按i鍵即可進(jìn)入編輯模式碳褒。
編輯完成之后保存退出折砸。
執(zhí)行命令
sudo dscacheutil -flushcache
sudo killall -HUP mDNSResponder
say DNS cache flushed
刷新DNS緩存。
  1. 配置代理加速
打開終端沙峻,執(zhí)行
export {http,https}_proxy='http://ip:port'
僅對(duì)當(dāng)前終端有效
  1. 安裝make
終端執(zhí)行:brew install make
  1. 安裝libsdl
終端執(zhí)行:brew install sdl
  1. 安裝gnupg
終端執(zhí)行:brew install gnupg2
  1. Mac上使用objdump和readelf
首先睦授,mac系統(tǒng)下的文件格式是mach-o,并不支持objdump和readelf专酗;
退而求其次,使用brew update && brew install binutils盗扇,然后用greadelf和gobjdump祷肯;
注意,使用使用brew update && brew install binutils會(huì)有如下提示:
binutils is keg-only, which means it was not symlinked into /usr/local,
because because Apple provides the same tools and binutils is poorly supported on macOS.

If you need to have binutils first in your PATH run:
  echo 'export PATH="/usr/local/opt/binutils/bin:$PATH"' >> ~/.bash_profile

For compilers to find binutils you may need to set:
  export LDFLAGS="-L/usr/local/opt/binutils/lib"
  export CPPFLAGS="-I/usr/local/opt/binutils/include"

18 在mac os 中安裝 autoconf and automake

你需要安裝很多東西疗隶,請(qǐng)按照以下順序安裝:

安裝的版本包也不能錯(cuò):

curl -O http://mirrors.kernel.org/gnu/m4/m4-1.4.13.tar.gz
tar -xzvf m4-1.4.13.tar.gz
cd m4-1.4.13
./configure --prefix=/usr/local
make
sudo make install
cd ..
curl -O http://mirrors.kernel.org/gnu/autoconf/autoconf-2.65.tar.gz
tar -xzvf autoconf-2.65.tar.gz
cd autoconf-2.65
./configure --prefix=/usr/local # ironic, isn't it?
make
sudo make install
cd ..
# here you might want to restart your terminal session, to ensure the new autoconf is picked up and used in the rest of the script
curl -O http://mirrors.kernel.org/gnu/automake/automake-1.11.tar.gz
tar xzvf automake-1.11.tar.gz
cd automake-1.11
./configure --prefix=/usr/local
make
sudo make install
cd ..
curl -O http://mirrors.kernel.org/gnu/libtool/libtool-2.2.6b.tar.gz
tar xzvf libtool-2.2.6b.tar.gz
cd libtool-2.2.6b
./configure --prefix=/usr/local
make
sudo make install

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末佑笋,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子斑鼻,更是在濱河造成了極大的恐慌蒋纬,老刑警劉巖,帶你破解...
    沈念sama閱讀 206,214評(píng)論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異蜀备,居然都是意外死亡关摇,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,307評(píng)論 2 382
  • 文/潘曉璐 我一進(jìn)店門碾阁,熙熙樓的掌柜王于貴愁眉苦臉地迎上來输虱,“玉大人,你說我怎么就攤上這事脂凶∠芏茫” “怎么了?”我有些...
    開封第一講書人閱讀 152,543評(píng)論 0 341
  • 文/不壞的土叔 我叫張陵蚕钦,是天一觀的道長(zhǎng)亭病。 經(jīng)常有香客問我,道長(zhǎng)嘶居,這世上最難降的妖魔是什么罪帖? 我笑而不...
    開封第一講書人閱讀 55,221評(píng)論 1 279
  • 正文 為了忘掉前任,我火速辦了婚禮食听,結(jié)果婚禮上胸蛛,老公的妹妹穿的比我還像新娘。我一直安慰自己樱报,他們只是感情好葬项,可當(dāng)我...
    茶點(diǎn)故事閱讀 64,224評(píng)論 5 371
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著迹蛤,像睡著了一般民珍。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上盗飒,一...
    開封第一講書人閱讀 49,007評(píng)論 1 284
  • 那天嚷量,我揣著相機(jī)與錄音,去河邊找鬼逆趣。 笑死蝶溶,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的宣渗。 我是一名探鬼主播抖所,決...
    沈念sama閱讀 38,313評(píng)論 3 399
  • 文/蒼蘭香墨 我猛地睜開眼,長(zhǎng)吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼痕囱!你這毒婦竟也來了田轧?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 36,956評(píng)論 0 259
  • 序言:老撾萬榮一對(duì)情侶失蹤鞍恢,失蹤者是張志新(化名)和其女友劉穎傻粘,沒想到半個(gè)月后每窖,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 43,441評(píng)論 1 300
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡弦悉,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 35,925評(píng)論 2 323
  • 正文 我和宋清朗相戀三年窒典,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片警绩。...
    茶點(diǎn)故事閱讀 38,018評(píng)論 1 333
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡崇败,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出肩祥,到底是詐尸還是另有隱情后室,我是刑警寧澤,帶...
    沈念sama閱讀 33,685評(píng)論 4 322
  • 正文 年R本政府宣布混狠,位于F島的核電站岸霹,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏将饺。R本人自食惡果不足惜贡避,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,234評(píng)論 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望予弧。 院中可真熱鬧刮吧,春花似錦、人聲如沸掖蛤。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,240評(píng)論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽蚓庭。三九已至致讥,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間器赞,已是汗流浹背垢袱。 一陣腳步聲響...
    開封第一講書人閱讀 31,464評(píng)論 1 261
  • 我被黑心中介騙來泰國(guó)打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留港柜,地道東北人请契。 一個(gè)月前我還...
    沈念sama閱讀 45,467評(píng)論 2 352
  • 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像夏醉,于是被迫代替她去往敵國(guó)和親爽锥。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 42,762評(píng)論 2 345

推薦閱讀更多精彩內(nèi)容