摘要:為糾正這個問題,需要將包含以太坊共享庫的文件添加到環境變量為安裝依賴警告應用沒有在上嘗試過。在寫本文檔時,這些交叉建立二進制已經成功地使用在以下設備上待辦的有下一篇文章我們將會介紹以太坊連載九客戶端的安裝與定制三感謝朝夕
從源安裝客戶端
概覽
cpp-ethereum 代碼庫在幾個Git庫中傳播,庫在Git上被分組為webthree-umbrella庫下的子模塊。
我們用一般的CMake編譯系統來生成平臺特定的架構文件,這意味著工作流程和你用的任何操作系統都非常類似:
安裝編譯工具和外部程序包(這些是平臺獨立的)
從webthree-umbrella git庫克隆源代碼
運行CMake來生成編譯文件(makefile,Visual Studio解決方案等)
編譯
特定操作系統安裝說明
為Linux創建 注意 —— 通過從源建立和禁用 VMJIT及其他特征,也能夠讓客戶端適用于32位 Ubuntu。我們可能會接受 pull請求來增加這樣的支持,但不會投入任何時間來專門開發支持 Ubuntu 32位架構。
Linux有個發行版特定程序包系統步驟的幻燈片,這是我們在開始從源建立之前要做的第一件事。下面的章節試圖體現這些步驟。如果你正在使用不同的發行版和hit版本,請告訴我們。
克隆資源庫 要克隆源代碼,請執行以下指令:
git clone —recursive https://github.com/ethereum/w...
安裝依賴(發行版特定)
為Ubuntu安裝依賴
Ubuntu Trusty Tahr (14.04) 步驟:
Ubuntu Utopic Unicorn (14.10) 步驟:
Ubuntu Vivid Vervet (15.04) 步驟:
Ubuntu WilyWerewolf (15.10) 步驟:
Ubuntu Xenial Xerus (16.04) 步驟:
為Fedora安裝依賴
Fedora 20 步驟:
Fedora 21 步驟:
從github建立json-rpc作為每個https://github.com/ethereum/c...:
Fedora 22 Fedora 22依賴可能會比已經安裝的更多:
安裝 gcc 4.9版本!Fedora 22 和一個不同的編譯器 (CC v5.3)一起。它 不能編譯 webthreeumbrella,所以我從SRC安裝了 gcc 4.9版本!
檢查一下你有可用的 gcc4.9安裝在/usr/local ,我把它安裝在了 /home/app/gcc49,你可以自己選擇在google上閱讀說明怎么編譯 gcc! 以后在每個 cmake之前,你都要這樣用gcc4.9編譯 webthree-umbrella所需的所有東西:
有了這個,你用 gcc4.9而不是和發行版F22一起的來編譯。不推薦卸載和你發行版一起的編譯器!你也可以用符號鏈接來工作。
從 Fedora COPR REPO LLVM3.7安裝,使用:
我必須要這樣做是因為 Fedora 22從股票資源庫和 llvm-3.5一起!可能也有其他解決方法,但是這個方法對我來說管用。 從 SRC安裝CryptoPP https://github.com/weidai11/c... CRYPTOPP_5_6_2:
從COPR “dnf copr enable @kdesig/Qt5”安裝QT5,更新的QT5版本:
這應該在 COPR repo安裝QT5 5.6.0 版本。 其他用戶的程序包,我沒有測試。 從 https://github.com/qtproject/... 安裝 qtwebengine,我安裝5.6.0 版本,其他的也有用,找找看 :D
從github安裝json-rpc https://github.com/ethereum/c...
確保檢查jsonrpcstub是否在控制臺有效,輸入“jsonrpcstub” 查看是否有回答。如果答案是沒有參數或s-l-t,就說明有效,但如果沒有得到的文件,你就得把丟失的部分符號連接到libs dir /usr/local/lib64或者usr/local/lib,取決于文件blabla的位置。試著用 “updatedb” 找到然后“locate blabla.so”
現在試著編譯,應該會有效,否則就是有丟失的符號連接因為沒有這樣的易嵌適文件或有一些丟失的數據包,試著用像這樣“dnf search packname”或 “dnf list packname”的dnf找到它們。我要說的是這不是個5分鐘的webthree-umbrella編譯,享受Tflux99。
為OpenSUSE安裝依賴
這是為在OpenSUSE上建立最新webthreeumbrella獲取所需依賴的方法。它在Leap 42.1上完成了,但是應該有Tumbleweed和13.x可用的同等數據包。 主要資源庫提供的第一個依賴:
可以用通用的libOpenCL1,但是我只用來自AMD驅動器資源庫fglrx64_opencl_SUSE421的AMD 專有包測試過。
這些包裹不在標準的資源庫,但是可以用OpenSUSE 創建服務包搜索和YaST 1-Click安裝找到:
libargtable2-devel
libv8-3
v8-devel
為OpenSUSE安裝依賴 在Arch Linux編譯webthree-umbrella需要來自官方資源庫和Arch User資源庫(AUR)的依賴。要從官方資源庫安裝,使用pacman。要從AUR安裝包裹,有很多可用的AUR助手。 在本指南中,使用的是AUR助手yaourt。
安裝依賴
編譯源代碼 在這一步,可以規定以太坊安裝文件夾,盡管文件夾的規定是可選的。如果不指定,二進制文件夾會位于創建文件夾。然而,就本向導,假定以太坊文件會被安裝在/opt/eth下面。使用/opt的原因是比起安裝在比如說/usr下面,這樣能使以后刪除以太坊文件夾更容易。而且/opt通常用于安裝不受包裹系統管理的軟件,比如手動編譯程序。
成功編譯和安裝之后,以太坊二進制可以在/opt/eth/bin,/opt/eth/lib的共享庫和/opt/eth/include標題文件中找到。
規定以太坊庫路徑 由于以太坊被安裝在/opt/eth,執行它的二進制會導致不能找到以太坊共享庫引起的鏈接錯誤。為糾正這個問題,需要將包含以太坊共享庫的文件添加到LD_LIBRARY_PATH環境變量:
為Debian安裝依賴
Debian Jessie (8.5)
警告:GUI應用沒有在Debian上嘗試過。所以,不用GUI應用創建要使用:cmake .. -DGUI=0
步驟:
確保你安裝的是cmake version 3.5.2。如果apt-get安裝了一個舊版本,需要按照這個鏈接里的指示,把它從源編譯。
要安裝cryptopp,很有必要從創建:
測試安裝:
驗證結果,再進行一個測試:
驗證成功?繼續:
CryptoPP安裝完成!
現在從源安裝LLVM建立:
回到apt-get:
從源安裝json-rpc-cpp建立:
在命令行建立 只有在你安裝完依賴以后(文件的剩余部分!)
為Windows建立
我們只支持64位架構并且只適用于以下Windows版本:
Windows 7
Windows 8/8.1
Windows 10
Windows Server 2012 R2
通過從源建立和禁用VMJIT及其他特征,也能夠讓客戶端適用于32位Windows。我們可能會接受拉取請求來增加這樣的支持,但不會投入任何時間來專門開發支持Windows32位架構。
首要之事 你需要安裝下面的依賴
軟件備注 Git for Windows從Github檢索源的命令行工具CMake交叉平臺建構文件生成器Visual Studio 2015C++編譯器和dev環境
獲取源 通過執行下面命令來克隆包含所有源代碼的git資源庫:
獲取外部依賴 執行CMake腳本,下載并打開建立項目所需的先建的外部二進制:
通用Visual Studio項目文件 然后執行下列指令,它會用CMake生成Visual Studio解決方案文件:
這會導致在建立目錄中創建cpp-ethereum.sln。
雙擊文件會啟動Visual Studio。我們建議建立RelWithDebugInfo配置,但是所有其他都有效。
在命令行建立 或者,你可以在命令行建立這個項目,像這樣:
為OS X建立
概覽 – 龍來了! 我們不可能避免OS X建立中斷,因為Homebrew是 “滾動發布”程式包管理者,這意味著平面會一直移動到我們下面,除非我們把所有的外部依賴都添加到Homebrew分接頭,或者把它們作為git子模塊添加到umbrella項目。Enduser 的結果隨著建立項目的時間而變化。昨天建立可能有效,但不能保證你的朋友今天在他們的機器上建立也會有同樣的結果。毋庸置疑,這不是個讓人高興的情況。
如果你撞上了OS X建立中斷,請瀏覽Github問題查看你遇到的問題是否已經被報告過。如果是,請在現存的問題下面評論。如果沒有看到任何相似的問題,請創建一個新問題,具體描述你的OS X版本,cpp-ethereum 版本,硬件及其他你認為相關的細節。
請通過gist.github.com或相似服務添加verbose日志文件。
cpp-ethereum-development gitter頻道是我們常去的地方,在那里共同合作解決問題。
我們只支持兩個最新的OS X 版本:
OS X Yosemite (10.10)
OS X El Capitan (10.11)
cpp-ethereum代碼基在舊版本的OS X上不能建立,我們一向不支持。 如果你在用舊版本的OS X,我們推薦你更新到最新版本,不僅僅是為了建立cpp-ethereum,也是為了你的安全考慮。
首要之事和外部依賴 確保你有最新版本的xcode安裝。這包括Clang C++ 編譯器,xcode IDE和其他在OS X上建立C++應用所必須的蘋果開發工具。如果你是第一次安裝xcode,或是剛剛安裝了一個新版本,你需要在進行命令行建立之前接受許可:
如果你想建立圖形用戶界面應用(AlethZero和Mix),你需要安裝XQuartz X11Window系統,因為OS X上的Qt使用那個X11層。
我們的OS X建立需要你安裝Homebrew程式包管理者,以安裝外部依賴。
如果你想從頭開始,這是卸載Homebre的方法。
使用Homebre安裝所有必須的外部依賴
下面是建立圖形用戶界面應用:
注意1:Qt5步驟在大多數人機器上花費很多小時。這是因為它使用非默認的設置,會導致從源建立。它似乎使用大約20G臨時磁盤空間。當心! 注意2:Qt和Qt5程式包不能在Homebrew共存。如果你已經安裝了Qt,你需要在成功建立cpp-ethereum之前卸載它:
克隆資源庫 克隆源代碼,執行下列命令:
你可以生成Makefile并在命令行上建立,或者生成X代碼項目,在IDE建立。
命令行建立 從項目根:
安裝你自己的建立 你也可以用同樣的Makefile,在你的機器上全局安裝你自己的建立:
生成xcode項目 從項目根:
這會生成叫做cpp-ethereum.xcodeproj的Xcode項目文件,你可以用x代碼和build/debug/run打開。
為FreeBSD建立 注意-程式包一旦在FreeBSD主要端口中,這個指南應該變得更簡單。
手動安裝端口 對于一些步驟,你必須要求修正端口目錄的根權限。
webthree-umbrella取決于libjson-rpc-cpp.shar,它也不在端口系統中。
首先你要下載shar文件,把它放在“devel”會話下的端口目錄,通常是/usr/ports/devel
現在我們用以下執行腳本:
這會創建libjson-rpc-cpp端口。現在你應該為webthree-umbrella端口做同樣的事,我們應該獲得webthree-umbrella文件并在“net-p2p”目錄下創建端口。
創建與安裝 現在你可以導航到webthree-umbrella目錄并安裝端口:
為Android建立
我們現在沒有有效的Android建立,盡管它在doublethinkco的路徑圖中。Android使用Linu內核,但是與ARM Linux交叉建立有不同的應用程序界面,意味著需要特定的二進制。
ARM Linux發行版使用GLIBC執行庫,Android使用bionic。
為iOS建立
我們現在沒有有效的iOS建立,盡管它在doublethinkco的路徑圖中。iOS是類似UNIX的操作系統,基于Darwin (BSD),使用ARM芯片。這是與ARM Linux交叉建立不同的應用程序界面,意味著需要特定的二進制。
為Raspberry Pi Model A, B+, Zero, 2和3建立
EthEmbedded 為所有的Raspberry Mi模塊保持建立腳本。它們在Raspi-Eth-Install資源庫的Github上。也可能為這些平臺交叉建立。
為Odroid XU3/XU4建立
EthEmbedded為Odroid模塊保持建立腳本。支持更多的Odroid設備在將來是有可能的。它們在OdroidXU3-Eth-Install資源庫的Github上。也可能為這些平臺交叉建立。
為BeagleBone Black建立
EthEmbedded為BBB-Eth-Install資源庫里Github上的BBB保持建立腳本。也可能為這個平臺交叉建立。
為WandBoard建立
EthEmbedded為WandBoard-Eth-Install資源庫里Github上的WandBoard保持建立腳本。也可能為這個平臺交叉建立。
為Linux for ARM (cross builds)建立
doublethinkco保持基于Docker的交叉建立基礎設施,它寄宿在cpp-ethereum-cross資源庫的Github上。
在寫本文檔時,這些交叉建立二進制已經成功地使用在以下設備上:
Jolla Phone (Sailfish OS)
Nexus 5 (Sailfish OS)
Meizu MX4 Ubuntu Edition (Ubuntu Phone)
Raspberry Pi Model B+, Rpi2 (Raspbian)
Odroid XU3 (Ubuntu MATE)
BeagleBone Black (Debian)
Wandboard Quad (Debian)
C.H.I.P. (Debian)
待辦的有:
Tizen
Android
iOS
下一篇文章我們將會介紹《以太坊連載(九):C++客戶端的安裝與定制(三)》
感謝朝夕團隊Azure, Bob參與《Ethereum Homestead Documentation》的翻譯和校驗。
汪曉明
HPB芯鏈創始人,巴比特專欄作家。十余年金融大數據、區塊鏈技術開發經驗,曾參與創建銀聯大數據。主創區塊鏈教學視頻節目《明說》30多期,編寫了《以太坊官網文檔中文版》,并作為主要作者編寫了《區塊鏈開發指南》,在中國區塊鏈社區以ID“藍蓮花”知名。
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/24266.html
摘要:以太坊客戶端快速入門以太坊客戶端的項目是。參考資料文章中的列表對應的鏈接可以參考第頁下一篇文章我們將會介紹以太坊連載八客戶端的安裝與定制二感謝朝夕團隊參與的翻譯和校驗。 以太坊C++客戶端:cpp-ethereum 快速入門 以太坊C++客戶端的Github項目是 webthree-umbrella。 我們將恢復到 cpp-ethereum-github 作為項目重啟的一部分。 如果...
摘要:一選擇客戶端為什么有多個以太坊客戶端以太坊客戶端與虛擬機和運行環境類似,能夠讓你在電腦上運行以太坊程序。參考資料文章中的列表對應的鏈接可以參考第頁下一篇文章我們將會介紹以太坊連載七客戶端的安裝與定制感謝朝夕團隊參與的翻譯和校驗。 一、選擇客戶端 為什么有多個以太坊客戶端? 以太坊客戶端與Java虛擬機和.NET運行環境類似,能夠讓你在電腦上運行以太坊程序。以太坊客戶端按照書面說明(黃皮...
摘要:以太坊論壇大名鼎鼎的以太坊論壇將不再維護,可能很快就會停用。以太坊基金會以太坊基金會是在瑞士注冊的非營利性機構,旨在管理以太幣銷售中籌措的基金,以更好地為以太坊和去中心化技術生態系統服務。 社區發起討論和問問題,請明智選擇論壇,并協助我們維護論壇環境整潔。 Reddit以太坊reddit分論壇是最全面的以太坊論壇,這里是大部分社區討論發生的地方和核心開發者最活躍的地方。如果你想對新聞、...
摘要:以太坊的使用基礎指南通過本節可以獲取用戶參與到以太坊項目中的基本方法。的發布是以太坊平臺的第二個主要版本,也是以太坊發布的第一個正式版本。硬分叉變更以太坊從狹義上來說,是一系列協議。 以太坊的使用:基礎指南通過本節可以獲取用戶參與到以太坊項目中的基本方法。首先,要想成為網絡中的節點,需要運行一個以太坊客戶端。在選擇客戶端這一節中列出了多重實現,同時針對不同的安裝應選擇什么樣的客戶端給出...
摘要:以太坊發布加密貨幣網絡年月初文章在上宣布以太坊首次向比特幣社群宣布以太坊。銷售所得首先用于償還日益增加的法律債務,回報開發者們數月以來的努力,以及資助以太坊的持續開發。以太坊安全審查開始于年末,持續到年上半年。 以太坊歷史最近歷史記錄,請查看Taylor Gerring博客發帖。 誕生2013年末Vitalik Buterin第一次描述了以太坊,作為他研究比特幣社群的成果,不久后,Vi...
閱讀 3102·2021-10-15 09:41
閱讀 3171·2021-09-22 16:05
閱讀 2414·2021-09-22 15:19
閱讀 2878·2021-09-02 15:11
閱讀 2453·2019-08-30 15:52
閱讀 841·2019-08-30 11:06
閱讀 1006·2019-08-29 16:44
閱讀 1256·2019-08-23 18:18