У меня есть libssh 0.8.2 и cmake 3.12.2.

Сборка успешно завершена с использованием параметра создания в cmake. После этого процесса cmake не создается файл ssh.lib, но были созданы некоторые файлы (ALL_BUILd, INSTALL, ssh_shared, ZERO_CHECK).

Следовательно, после успешного создания cmake я нажал на опцию «открыть проект» в cmake. При компиляции файлов в Visual Studio C ++ отображаются две ошибки No such file or directory и:

Severity    Code    Description Project File    Line    Suppression State
Error   MSB3073 The command "setlocal
"C:\Program Files\CMake\bin\cmake.exe" -DBUILD_TYPE=Debug -P cmake_install.cmake
if %errorlevel% neq 0 goto :cmEnd
:cmEnd
endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone
:cmErrorLevel
exit /b %1
:cmDone
if %errorlevel% neq 0 goto :VCEnd
:VCEnd" exited with code 1. INSTALL C:\Program Files (x86)\Microsoft Visual Studio\2017\Professional\Common7\IDE\VC\VCTargets\Microsoft.CppCommon.targets   133 
2
user10330249 11 Сен 2018 в 10:55

1 ответ

Лучший ответ

Вы все еще используете CMakeLists.txt из каталога libssh-0.8.2/src (как я предполагаю из вашего предыдущего вопроса)? Это не правильно. Вам необходимо использовать верхний уровень CMakeLists.txt из каталога libssh-0.8.2.

Каждый уровень каталогов этого проекта может содержать CMakeLists.txt. Тот, который содержит оператор project, вероятно, тот, который вам нужен. Создание файла решения Visual Studio (.sln) может быть выполнено в командной строке из каталога верхнего уровня (libssh-0.8.2) с помощью cmake . -Bbuilddir -G "Visual Studio 15 2017 Win64". Согласно документации в файле INSTALL вам может потребоваться добавить -DOPENSSL_ROOT_DIR=C:\Users\Sami\<install path here> и -DZLIB_ROOT_DIR=C:\Users\Sami\<install path here> к этому вызову.

Позже вы можете построить из командной строки с помощью cmake --build builddir --target ALL_BUILD --config Release. После успешной сборки вы можете установить проект с помощью cmake --build builddir --target INSTALL --config Release.

1
vre 11 Сен 2018 в 11:11