У меня есть проект на C++, который я создаю с помощью Microsoft Visual Studio Express 2015 для Windows Desktop. Я могу создать его в среде IDE для Debug | x64 без проблем.MSBuild не удается создать x64 исполняемый файл
Я хочу построить его непосредственно с MSBuild из командной строки, так что я называю:
C: \ Program Files (x86) \ Microsoft Visual Studio 14.0 \ VC \ vcvarsall.bat
MSBuild \ LedaAP.sln/р: Конфигурация = "Debug"/р: PreferredToolArchitecture = 64/р: useenv = истина /flp:logfile=LedaAp.log;verbosity=normal
Рычажный терпит неудачу:
C: \ Program Files (x86) \ Microsoft Visual Studio 14.0 \ VC \ BIN \ link.exe/ERRORREPORT: QUEUE/OUT: "C: \ Jenkins \ workspace \ LedaAP_VisualStudio \ software \ Source \ LedaAP \ x64 \ Debug \ LedaAP.exe "/ INCREMENTAL/NOLOGO ws2_32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib/MANIFEST/MANIFESTUAC: "level = 'asInvoker' uiAccess = 'false'"/manifest: embed/Debug /PDB:"C:\Jenkins\workspace\LedaAP_VisualStudio\software\Source\LedaAP\x64\Debug\LedaAP.pdb "/ SUBSYSTEM : CONSOLE/TLBID: 1/DYNAMICBASE/NXCOMPAT /IMPLIB:"C:\Jenkins\workspace\LedaAP_VisualStudio\software\Source\LedaAP\x64\Debug\LedaAP.lib "/ MACHINE: X64 x64 \ Debug \ Configuration.obj x64 \ Debug \ Configuration.obj: фатальная ошибка LNK1112: тип модуля модуля «X86» конфликтует с типом целевой машины «x64» [C: \ Jenkins \ workspace \ LedaAP _VisualStudio \ software \ Source \ LedaAP \ LedaAP.vcxproj] 12:15:05 Done Building Project "C: \ Jenkins \ workspace \ LedaAP_VisualStudio \ software \ Source \ LedaAP \ LedaAP.vcxproj" (цели по умолчанию) - FAILED. 12:15:05 Done Building Project "C: \ Jenkins \ workspace \ LedaAP_VisualStudio \ software \ Source \ LedaAP \ LedaAP.sln" (цели по умолчанию) - FAILED. Сборка НЕИСПРАВНО.
Я предполагаю, что сбой вызван тем, что компоновщик вызывается с несколькими 32-разрядными библиотеками, но я не указываю их явно на страницах свойств проекта.
Любые идеи, как исправить это, пожалуйста?
Используйте «vcvarall.bat x64» и повторите попытку. –
У меня есть только: «C: \ Program Files (x86) \ Microsoft Visual Studio 14.0 \ VC \ vcvarsall.bat" – DavidA
x64 - это * аргумент * на vcvarsall.bat. Он сообщает файлу .bat для настройки среды сборки для создания исполняемых файлов x64. Прямо сейчас, без аргументов, вы получаете среду сборки x86. –