Невозможно сгенерировать 32-разрядную конфигурацию для Visual Studio 2019 с host = x86 или -A Win32 - PullRequest
1 голос
/ 29 апреля 2020

Я пытаюсь настроить cmake для сборки для 32-битной и 64-битной систем отдельно ...

Пока что 64-битная система проста, так как мне просто нужно добавить -A x64

cmake -G "Visual Studio 16 2019" -A x64

Но я Я не могу установить 32-битную арку. Официальная документация предлагает -A Win32 или -T host = x86
https://cmake.org/cmake/help/latest/generator/Visual%20Studio%2016%202019.html
Даже с ними я не могу установить x86 host

Что я пробовал:

cmake -G "Visual Studio 16 2019" -DCMAKE_GENERATOR_PLATFORM=x86

cmake -G "Visual Studio 16 2019" -A Win32

cmake -G "Visual Studio 16 2019" -A Win32 -T host=x86

cmake -G "Visual Studio 16 2019" -A Win32 host=x86

Ничего не работает, вот журнал я получаю все время ...

-- Selecting Windows SDK version 10.0.18362.0 to target Windows 10.0.18363.
-- The C compiler identification is MSVC 19.25.28612.0
-- The CXX compiler identification is MSVC 19.25.28612.0
-- Check for working C compiler: C:/Program Files (x86)/Microsoft Visual Studio/2019/Community/VC/Tools/MSVC/14.25.28610/bin/Hostx64/x64/cl.exe
-- Check for working C compiler: C:/Program Files (x86)/Microsoft Visual Studio/2019/Community/VC/Tools/MSVC/14.25.28610/bin/Hostx64/x64/cl.exe -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Detecting C compile features
-- Detecting C compile features - done
-- Check for working CXX compiler: C:/Program Files (x86)/Microsoft Visual Studio/2019/Community/VC/Tools/MSVC/14.25.28610/bin/Hostx64/x64/cl.exe

1 Ответ

1 голос
/ 29 апреля 2020

Это было связано с node-js ...
Я только что написал генератор с Win32 и передал arch в node-js части пакета. json

npm config set cmake_js_arch ia32 && cmake-js compile cmake -G \"Visual Studio 16 2019\" -A Win32

Я использую cmake для сборка DLL-кода c ++ для проекта узла, поэтому необходимо запустить его из командной строки.

cmake- js - это пакет узлов для Cmake, а эта команда сообщает cmake- js об установке arch ia32

...