2014-11-27 3 views
-1

Я пытаюсь построить hadoop 2.5.0 на окнах, чтобы использовать его в IDEA. Но если я запуск в VisualStudio консоли и использоватьBuilding hadoop на Windows Win32 vs amd64

setenv /x64 
set TARGET_CPU=x64 

Я получаю сообщение об ошибке:

[INFO] --- exec-maven-plugin:1.2:exec (compile-ms-winutils) @ hadoop-common --- 
Building the projects in this solution one at a time. To enable parallel build, please add the "/m" switch. 
Build started 27.11.2014 14:11:31. 
Project "C:\Users\user\hadoop\hadoop-common\hadoop-common-project\hadoop-common\src\main\winutils\winutils.sln" on node 1 (default targets). 
ValidateSolutionConfiguration: 
    Building solution configuration "Release|Win32". 
Project "C:\Users\user\hadoop\hadoop-common\hadoop-common-project\hadoop-common\src\main\winutils\winutils.sln" (1) is building "C:\Users\bachmann.s\R 
CV\hadoop\hadoop-common\hadoop-common-project\hadoop-common\src\main\winutils\winutils.vcxproj.metaproj" (2) on node 1 (default targets). 
Project "C:\Users\user\hadoop\hadoop-common\hadoop-common-project\hadoop-common\src\main\winutils\winutils.vcxproj.metaproj" (2) is building "C:\Users 
\user\hadoop\hadoop-common\hadoop-common-project\hadoop-common\src\main\winutils\libwinutils.vcxproj" (3) on node 1 (default targets). 
C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\Platforms\Win32\PlatformToolsets\Windows7.1SDK\Microsoft.Cpp.Win32.Windows7.1SDK.targets(20,5): error : You ar 
e attempting to build a Win32 application from an x64 environment. If using the Windows 7.1 SDK build environment, type setenv /x86 [C:\Users\user\had 
oop\hadoop-common\hadoop-common-project\hadoop-common\src\main\winutils\libwinutils.vcxproj] 
Done Building Project "C:\Users\user\hadoop\hadoop-common\hadoop-common-project\hadoop-common\src\main\winutils\libwinutils.vcxproj" (default targets) 
-- FAILED. 
Done Building Project "C:\Users\user\hadoop\hadoop-common\hadoop-common-project\hadoop-common\src\main\winutils\winutils.vcxproj.metaproj" (default ta 
rgets) -- FAILED. 
Done Building Project "C:\Users\user\hadoop\hadoop-common\hadoop-common-project\hadoop-common\src\main\winutils\winutils.sln" (default targets) -- FAI 
LED. 

Build FAILED. 

"C:\Users\user\hadoop\hadoop-common\hadoop-common-project\hadoop-common\src\main\winutils\winutils.sln" (default target) (1) -> 
"C:\Users\user\hadoop\hadoop-common\hadoop-common-project\hadoop-common\src\main\winutils\winutils.vcxproj.metaproj" (default target) (2) -> 
"C:\Users\user\hadoop\hadoop-common\hadoop-common-project\hadoop-common\src\main\winutils\libwinutils.vcxproj" (default target) (3) -> 
(_WindowsSDKPrepareForBuild target) -> 
    C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\Platforms\Win32\PlatformToolsets\Windows7.1SDK\Microsoft.Cpp.Win32.Windows7.1SDK.targets(20,5): error : You 
are attempting to build a Win32 application from an x64 environment. If using the Windows 7.1 SDK build environment, type setenv /x86 [C:\Users\user\h 
adoop\hadoop-common\hadoop-common-project\hadoop-common\src\main\winutils\libwinutils.vcxproj] 

в основном о том, чтобы я перейти на 32-битную сборке СРЕДЫ. Но когда я теперь делать

setenv /x86 
set TARGET_CPU=x86 

и начать новую сборку, Maven дает мне следующую ошибку:

[INFO] --- exec-maven-plugin:1.2:exec (compile-ms-native-dll) @ hadoop-common --- 
Building the projects in this solution one at a time. To enable parallel build, please add the "/m" switch. 
Build started 27.11.2014 14:17:06. 
Project "C:\Users\user\hadoop\hadoop-common\hadoop-common-project\hadoop-common\src\main\native\native.sln" on node 1 (default targets). 
ValidateSolutionConfiguration: 
    Building solution configuration "Release|Mixed Platforms". 
Project "C:\Users\user\hadoop\hadoop-common\hadoop-common-project\hadoop-common\src\main\native\native.sln" (1) is building "C:\Users\user\h 
adoop\hadoop-common\hadoop-common-project\hadoop-common\src\main\native\native.vcxproj" (2) on node 1 (default targets). 
C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\Platforms\x64\PlatformToolsets\Windows7.1SDK\Microsoft.Cpp.x64.Windows7.1SDK.targets(20,5): error : You are at 
tempting to build an AMD64 application from an x86 environment. If using the Windows 7.1 SDK, type setenv /x64 [C:\Users\user\hadoop\hadoop-common\had 
oop-common-project\hadoop-common\src\main\native\native.vcxproj] 
Done Building Project "C:\Users\user\hadoop\hadoop-common\hadoop-common-project\hadoop-common\src\main\native\native.vcxproj" (default targets) -- FAI 
LED. 
Done Building Project "C:\Users\user\hadoop\hadoop-common\hadoop-common-project\hadoop-common\src\main\native\native.sln" (default targets) -- FAILED. 


Build FAILED. 

Почему все проекты в различных архитектурах или мне нужно установить некоторые другие параметры полностью построить в одной архитектуре?

ответ

2

Вы также должны правильно установить платформу.

Полные команды, чтобы установить среду сборки для x64 являются:

setenv /x64 
set TARGET_CPU=x64 
set platform=x64