protobuf 3.0 與 之前的 protobuf 2.6 的語法是不一樣的。需要重新安裝一下,本機的環境是 OS X Yosemite 10.10.2
1. 不采用home brew安裝,用homebrew安裝的話會遇到一個open issue
https://github.com/Homebrew/homebrew/issues/30320 的問題,沒有仔細研究,索性就直接進行手工安裝了;
不過這里可以記錄一下自定義brew的 formula的方法:
(1) 如果直接使用 brew
INSTALL
protobuf 進行安裝的話,目前默認的安裝版本還是 2.6.1的,所以需要修改一個brew 的formula,讓brew去尋找3.0的版本;方法如下:

sudo brew create
https://github.com/google/protobuf/archive/v3.0.0-alpha-3.tar.gz
之后會要求輸入formula的名字,輸入protobuf即可,
如果之前已經安裝過protobuf,會報出protobuf.rb已經存在的錯誤,直接刪除那個protobuf.rb文件就可以;
還有如果之前安裝了別的版本的protobuf,可以用sudo brew remove protobuf刪除;
(2) 上述部署做完之后,會彈出一個vim的編輯頁面,直接保存就可以;
(3) 接着就直接安裝 sudo brew
INSTALL
protobuf,brew就會去下載3.0的版本,然后進行安裝,進而就報出
https://github.com/Homebrew/homebrew/issues/30320 的問題了。有興趣的可以研究一下。。。。

2. 直接進入正題,手工安裝protobuf,
(1)下載
https://github.com/google/protobuf/archive/v3.0.0-alpha-3.tar.gz ,解壓縮,cd 到壓縮后的目錄下;
(2)本來按照正常安裝linux 軟件的步驟安裝就行,但是發現沒有configure腳本。。。不知道為啥搞了個autogen.sh 腳本,用來生成 configure腳本的,運行一下sudo ./autogen.sh,發現出問題。。。。
(3)autogen.sh腳本好像要去搞一下gtest,是需要翻牆的,
掛了vpn翻牆之后,gtest運行成功;
(4)gtest成功后,還會報缺autoreconf包的錯誤,用sudo brew automake 來解決這個問題;
(5)還會報錯。。。會報缺少libtool的問題,用sudo brew libtool來解決;
(6)然后,沒問題了。可以直接按順序運行 ./configure ; make ; make
CHECK
; make install ;安裝成功后,直接protoc --version 來查看一下安裝的版本是否正確,返回 libprotoc 3.0.0,說明成功安裝;

3. 由於要配置 protobuf的golang環境,還需要安裝golang的插件,插件的安裝方法比較簡單;
(1) go get -u -v
github.com/golang/protobuf/proto
go get -u -v
github.com/golang/protobuf/protoc-gen-go
兩個步驟就可以安裝好 go的插件,還需要做的一個步驟是:
sudo cp $GOPATH/bin/protoc-gen-go /usr
LOCAL
/bin 將protoc-gen-go移動到系統$PATH中,
否則在使用protoc的時候會報錯: 找不到 protoc-gen-go

4. 到目前為止,mac 下protobuf 3.0的golang環境就配置好了。可以使用 protoc --go_out=. *.proto 來生成proto對應的go文件了