Ошибки CMake - Использование Конана

Я просто не могу понять, почему я получаю эту ошибку, кто-нибудь не возражает мне помочь?

Я добавил Cmake в переменные среды, но все равно получаю сообщение об ошибке. В настоящее время я учусь в университете и пытаюсь заставить SDL работать.

Моя машина x64, у меня Visual Studio 2017 со всеми установленными элементами C ++.

Вот ошибка CMD: Ошибка CMD

Вот ошибка графического интерфейса: Ошибка графического интерфейса

Копировать - Вставить версию CMD:

-- The C compiler identification is unknown
-- The CXX compiler identification is unknown
CMake Error at CMakeLists.txt:1 (PROJECT):
  No CMAKE_C_COMPILER could be found.



CMake Error at CMakeLists.txt:1 (PROJECT):
  No CMAKE_CXX_COMPILER could be found.



-- Configuring incomplete, errors occurred!
See also "C:/Users/Chris Ross/.conan/data/zlib/1.2.8/lasote/stable/build/6cc50b139b9c3d27b3e9042d5f5372d327b3a9f7/_build/CMakeFiles/CMakeOutput.log".
See also "C:/Users/Chris Ross/.conan/data/zlib/1.2.8/lasote/stable/build/6cc50b139b9c3d27b3e9042d5f5372d327b3a9f7/_build/CMakeFiles/CMakeError.log".
zlib/1.2.8@lasote/stable:
zlib/1.2.8@lasote/stable: ERROR: Package '6cc50b139b9c3d27b3e9042d5f5372d327b3a9f7' build failed
zlib/1.2.8@lasote/stable: WARN: Build folder C:\Users\Chris Ross\.conan\data\zlib\1.2.8\lasote\stable\build\6cc50b139b9c3d27b3e9042d5f5372d327b3a9f7
ERROR: zlib/1.2.8@lasote/stable: Error in build() method, line 60
        self.run('%s && cmake .. %s' % (cd_build, cmake.command_line))
        ConanException: Error 1 while executing cd _build && cmake .. -G "Visual Studio 15 2017 Win64" -DCONAN_LINK_RUNTIME="/MD" -DCONAN_EXPORTED="1" -DCONAN_COMPILER="Visual Studio" -DCONAN_COMPILER_VERSION="15" -DCONAN_CXX_FLAGS="/MP4" -DCONAN_C_FLAGS="/MP4" -Wno-dev
INFO: Conan job finished.
INFO: Starting cmake
CMake Error: Error: generator : Visual Studio 14 2015 Win64
Does not match the generator used previously: Visual Studio 15 2017 Win64
Either remove the CMakeCache.txt file and CMakeFiles directory or choose a different binary directory.
INFO: CMake job finished.

Копировать - Вставить версию графического интерфейса:

    CMAKE_CONFIGURATION_TYPES              Debug;Release;MinSizeRel;RelWithDebInfo
    CMAKE_INSTALL_PREFIX                   C:/Program Files (x86)/lab1

Configuring incomplete, errors occurred!
See also "C:/Users/Chris Ross/Desktop/lab2template/bin/CMakeFiles/CMakeOutput.log".
See also "C:/Users/Chris Ross/Desktop/lab2template/bin/CMakeFiles/CMakeError.log".

Мой файл conanfile.txt:

[requires]
SDL2/2.0.5@dotfloat/stable
SDL2_image/2.0.1@lasote/stable
SDL2_mixer/2.0.1@a_teammate/testing
SDL2_ttf/2.0.14@hilborn/stable

[options]
SDL2:shared=True
SDL2_image:shared=False
SDL2_mixer:shared=True
SDL2_ttf:shared=False

[generators]
cmake

[imports]
bin, *.dll -> ./bin # Copies all dll files from packages bin folder to my "bin" folder
lib, *.dylib* -> ./bin # Cop

Используя этот файл .bat:

@echo off

:start
echo INFO: I am running from '%cd%'
if exist src goto changetobin

:conan
echo INFO: Starting conan
conan install --build missing
echo INFO: Conan job finished.
goto cmake

:cmake
echo INFO: Starting cmake
cmake .. -G "Visual Studio 14 2015 Win64"
echo INFO: CMake job finished.
goto end

:changetobin
echo ERROR: I'm in the wrong directory.. moving into bin
cd bin
echo INFO: Retrying..
goto start

:end
if exist bin goto quit
cd ..
goto quit

:quit
echo.
echo.
echo INFO: Conan and CMake ran successfully. Open up your solution file (listed below) to open your project.
echo.
dir /b *.sln

(Я также попытался выполнить сборку вручную (conan install --build missing))


person Christopher Ross    schedule 18.10.2017    source источник
comment
Скопируйте и вставьте ошибки вместо того, чтобы публиковать их скриншоты.   -  person Algirdas Preidžius    schedule 18.10.2017
comment
Ошибка указывает на то, что CMake не может найти компилятор MSVC, установленный с Visual Studio. Можете ли вы подтвердить, что вы установили VS 2015 и выбрали компилятор C ++ в составе установленных компонентов?   -  person dlasalle    schedule 18.10.2017
comment
В настоящее время я использую VS 2017 (установлен C ++, и я могу создавать проекты), мой друг порекомендовал мне удалить VS 2015, чтобы устранить проблему, но это не сработало: / Visual Studio 15 2017 был выбран в CMake gui.   -  person Christopher Ross    schedule 18.10.2017
comment
Есть ли причина, по которой вы не используете этот пакет conan для zlib? bintray.com/conan-community/conan/zlib%3Aconan/ 1.2.8% 3Astable   -  person legalize    schedule 18.10.2017
comment
К сожалению, я не понимаю, что означает этот последний комментарий.   -  person Christopher Ross    schedule 18.10.2017
comment
Вам также необходимо предоставить все воспроизводимые шаги к этой ошибке. Типа: 1) это мой conanfile.txt, который я использую. 2) У меня есть эта установка (машина, компилятор и т. Д.) 3) Я выполняю эти команды: conan install ... 4) Мой результат таков   -  person drodri    schedule 18.10.2017
comment
Учтите, что существующий пакет SDL в репозитории conan-transit bintray может быть несовершенным. Эти пакеты предоставляются сообществом и не проверяются, что не гарантирует их работу. Постоянно прилагаются усилия по обеспечению высококачественных пакетов в репозитории conan-center.   -  person drodri    schedule 18.10.2017
comment
Все обновлено, если есть что-то, пожалуйста, не стесняйтесь спрашивать   -  person Christopher Ross    schedule 18.10.2017
comment
@ChristopherRoss, вы заявляете, что используете Visual Studio 2017, почему тогда вы создаете решение для VS2015? cmake .. -G "Visual Studio 14 2015 Win64"   -  person Cinder Biscuits    schedule 18.10.2017


Ответы (1)


«Моя машина x64, у меня Visual Studio 2017 со всеми установленными элементами C ++».

Вы создаете решение для неправильной версии Visual Studio ..

cmake .. -G "Visual Studio 14 2015 Win64"

Измените эту строку в своем пакетном скрипте на:

cmake .. -G "Visual Studio 15 2017 Win64"

Затем вы должны удалить все сгенерированные файлы (CMakeCache.txt', 'CMakeFiles каталог и т. Д.) И повторите попытку. Также дважды проверьте, что настройки вашего профиля conan соответствуют используемому вами компилятору.

person Cinder Biscuits    schedule 18.10.2017
comment
Я сделал это, все еще без надежды. Точно такая же ошибка. Я перепробовал их все, все до единого. - person Christopher Ross; 18.10.2017
comment
Я бы посоветовал вам попробовать удалить CMake, удалить все его файлы (убедитесь, что Program Files\CMake на 100% пуст и ушел) и переустановить его, где он повторно обнаружит ваш компилятор, а затем использовать генератор для версии Visual Studio. только вы установили. Я чувствовал эту боль раньше и добился успеха, выполнив чистую переустановку. - person Cinder Biscuits; 19.10.2017