您好,登錄后才能下訂單哦!
這篇文章主要講解了“Win7 64bit hadoop-2.6.0源碼如何編譯部署包”,文中的講解內(nèi)容簡單清晰,易于學(xué)習(xí)與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學(xué)習(xí)“Win7 64bit hadoop-2.6.0源碼如何編譯部署包”吧!
1. 需要準(zhǔn)備的工具有:
a. hadoop-2.6.0 源碼 (hadoop-2.6.0-src .tar.gz): https://hadoop.apache.org/releases.html
b. Windows 7 64bits
c. Microsoft Windows SDK v7.1
在安裝SDK v7.1過程中可能會遇到問題,問題解決參考:https://support.microsoft.com/zh-cn/kb/2934068/zh-cn
d. maven 3.0或更新版本,本例中用maven3.0.4
e. Protocol Buffers 2.5.0:http://protobuf.googlecode.com/files/protoc-2.5.0-win32.zip
注:需要的是2.5.0版本
f. jdk(1.6 或更新版本),本例中用jdk1.7.0_67
g. CMake (cmake-3.3.0-rc3-win32-x86.exe):http://www.cmake.org/download/
h. zlib headers:http://code.google.com/p/psi-dev/downloads/detail?name=zlib-1.2.7-win.7z
i. Ant:http://ant.apache.org/bindownload.cgi
2. 具體步驟
在build 之前,仔細閱讀源碼根目錄中的 BUILDING.txt 文件,其中 Building on Windows部分有詳細說明
a. 把 hadoop-2.6.0-src .tar.gz 解壓到某個目錄,路徑長度越短越好,如:D:\hadoop,結(jié)構(gòu)圖:
b. 安裝cmake-3.3.0-rc3-win32-x86.exe
安裝到指定目錄(如:f:\cmake),再把bin目錄(f:\cmake\bin)添加到環(huán)境變量Path中,
注:如果已在windows安裝了cygwin,由于cygwin中也帶了個cmake,所以在Path中,cmake 的bin目錄得加在cygwin的bin 目錄之前,不然會報如下錯誤:
[exec] CMake Error: Could not create named generator Visual Studio 10 Win64 [ERROR] Failed to execute goal org.apache.maven.plugins:maven-antrun-plugin:1.7:run (make) on project hadoop-hdfs: An Ant BuildException has occured: exec returned: 1 [ERROR] around Ant part ...<exec dir="D:\hadoop\hadoop-hdfs-project\hadoop-hdfs\target/native" executable="cmake" failonerror="true">... @ 5:109 in D:\hadoop\hadoop-hdfs-project\hadoop-hdfs\target\antrun\build-main.xml
c. 下載Protocol Buffers 2.5.0,解壓,將protoc.exe拷貝到C:\Windows\System32下,不然會報如下錯誤:
Failed to execute goalorg.apache.hadoop:hadoop-maven-plugins:2.6.0:protoc (compile-protoc)on project hadoop-common
d. 下載zlib,解壓,把x86_64目錄下所有內(nèi)容拷貝到指定目錄(如:D:\zlib-1.2.7),把bin目錄(D:\zlib-1.2.7\bin)添加到Path中
e. 安裝Ant(本例用:apache-ant-1.9.5-bin.zip),解壓,安裝到指定目錄,把bin目錄添加到Path中
f. 設(shè)置環(huán)境變量
(1) JAVA_HOME
(2) M2_HOME:maven安裝目錄(如: f:\maven304)
(3) Platform:指定在32位還是64位系統(tǒng)上面build,可以設(shè)置為 x64 或 Win32,
本例中設(shè)置的是x64,另單詞"Platform"是大小寫敏感的,不要拼錯
(4)ZLIB_HOME: (如:D:\zlib-1.2.7)
(5)Path:把maven的bin 目錄添加到Path中;
把Microsoft Windows SDK的bin 目錄添加到Path中;
g. 打開 Windows SDK 7.1 Command Prompt(開始 -> 所有程序 -> Microsoft Windows SDK v7.1)
在命令窗口中,切換目錄,進入hadoop-2.6.0 源碼目錄(如:D:\hadoop),然后執(zhí)行以下命令:
mvn package -Pdist,native-win -DskipTests -Dtar
在build的過程中可能會遇到一些錯,跟Visual Studio 2010 Professional有關(guān),本機沒有安裝Visual Studio 2010 Professional,但安裝有Visual Studio 2012 Professional,遇到的問題有:
a. org.apache.maven.lifecycle.LifecycleExecutionException: Failed to execute goal org.codehaus.mojo:exec-maven-plugin:1.2:exec (compile-ms-winutils) on project hadoop-common: Command execution failed.
問題解決:進入源碼目錄(如:D:\hadoop\hadoop-common-project\hadoop-common\src\main\winutils),用VS2012重新打開winutils.sln 工程,再重新編譯一次,編譯過程中可能會有錯誤出現(xiàn),不用管
b. org.apache.maven.lifecycle.LifecycleExecutionException: Failed to execute goal org.codehaus.mojo:exec-maven-plugin:1.2:exec (compile-ms-native-dll) on project adoop-common: Command execution failed.
問題解決:進入源碼目錄(如:D:\hadoop\hadoop-common-project\hadoop-common\src\main\native),用VS2012重新打開native.sln 工程,再重新編譯一次,編譯過程中可能會有錯誤出現(xiàn),不用管
如果一切都順利的話,將會迎來期待已久的畫面:
感謝各位的閱讀,以上就是“Win7 64bit hadoop-2.6.0源碼如何編譯部署包”的內(nèi)容了,經(jīng)過本文的學(xué)習(xí)后,相信大家對Win7 64bit hadoop-2.6.0源碼如何編譯部署包這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是億速云,小編將為大家推送更多相關(guān)知識點的文章,歡迎關(guān)注!
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。