Russian Qt Forum

Qt => Установка, сборка, отладка, тестирование => Тема начата: xokc от Август 20, 2020, 23:59



Название: vcpkg + MinGW + QtCreator + Windows
Отправлено: xokc от Август 20, 2020, 23:59
У кого нибудь получилось подружить subjs?
Устанавливаю пакет в vcpkg, добавляю в параметры cmake CMAKE_TOOLCHAIN_FILE, делаю внутри CMakeList
Код:
set(CMAKE_TOOLCHAIN_FILE "c:/vcpkg/scripts/buildsystems/vcpkg.cmake")
set(VCPKG_DEFAULT_TRIPLET "x86-mingw-static")
find_package(LibSndFile CONFIG REQUIRED)
target_link_libraries(main PRIVATE sndfile-static)
на всё ответ один:
Код:
CMake Error at C:/vcpkg/scripts/buildsystems/vcpkg.cmake:455 (_find_package):
  Could not find a package configuration file provided by "LibSndFile" with
  any of the following names:

    LibSndFileConfig.cmake
    libsndfile-config.cmake
При этом под тем же CLion все собирает влет. Куда копать?


Название: Re: vcpkg + MinGW + QtCreator + Windows
Отправлено: Пантер от Август 21, 2020, 09:57
Тебе не надо эти данные засовывать внуть CMakeLists.txt, тебе нажно их указать при конфигурировании. Вообще, ты можешь сам сконфигурировать проект в каталог и затем скормить его Креатору. (mkdir build && cd build && cmake -DCMAKE_TOOLCHAIN_FILE=.....)


Название: Re: vcpkg + MinGW + QtCreator + Windows
Отправлено: xokc от Август 21, 2020, 18:46
Тебе не надо эти данные засовывать внуть CMakeLists.txt
Это понятно, это я уже от бессилия и отчаяния >:(

тебе нажно их указать при конфигурировании
Вот в каком месте Creator это делается?

И вообще, судя по сообщению об ошибке "CMake Error at C:/vcpkg/scripts/buildsystems/vcpkg.cmake:455 (_find_package)...", cmake откуда-то всё же знает, что vcpkg существует, но не может потом найти в нем libsndfile, хотя он и установлен


Название: Re: vcpkg + MinGW + QtCreator + Windows
Отправлено: RedDog от Август 21, 2020, 19:09
Tools->Options->Kits->CMake Configuration->Change


Название: Re: vcpkg + MinGW + QtCreator + Windows
Отправлено: xokc от Август 21, 2020, 19:13
Там уже сделал - один фиг not found :(


Название: Re: vcpkg + MinGW + QtCreator + Windows
Отправлено: Пантер от Август 21, 2020, 19:36
Я в Креаторе просто делал "импорт существующей конфигурации" или что-то типа.


Название: Re: vcpkg + MinGW + QtCreator + Windows
Отправлено: xokc от Август 21, 2020, 19:45
Как я понял Creator искал не пакеты для mingw, а пакеты для триплета x64:windows. Какими-то странными манипуляциями мне удалось установить на нужный мне x86-mingw-static. И после этого лог cmake выглядит вот так
Код:
Работа c:\Qt\Tools\CMake_32\bin\cmake.exe "-GCodeBlocks - Ninja" C:/Docs/~DP/demodulators/examples/jsm-qt на C:\Docs\~DP\.tmp\demodulators\examples\build-jsm-qt-Desktop_Qt_5_15_0_MinGW_32_bit-Debug.
CMake Error at C:/Docs/~DP/vcpkg/scripts/buildsystems/vcpkg.cmake:455 (_find_package):
  Could not find a configuration file for package "LibSndFile" that is
  compatible with requested version "".

  The following configuration files were considered but not accepted:

    C:/Docs/~DP/vcpkg/installed/x86-mingw-static/share/libsndfile/LibSndFileConfig.cmake, version: 1.0.29 (64bit)

Call Stack (most recent call first):
  CMakeLists.txt:15 (find_package)

То есть теперь он ищет "что-то где-то" и не находит, сообщая, что Could not find compatible with requested version "".
Осталось понять, что ему не нравится.


Название: Re: vcpkg + MinGW + QtCreator + Windows
Отправлено: kuzulis от Август 21, 2020, 20:44
[offtop]Фу на ваш cmake :)[/offtop]


Название: Re: vcpkg + MinGW + QtCreator + Windows
Отправлено: xokc от Август 21, 2020, 20:51
Не то слово, но весь мир сошел с ума, и кроссплатформенно подключить чужую либу без cmake - это то еще приключение.


Название: Re: vcpkg + MinGW + QtCreator + Windows
Отправлено: Пантер от Август 22, 2020, 08:51
При чем тут cmake если проблема только в QtCreator? У меня ни с CLion, ни с VSCode проблем нет ни с conan, ни с vcpkg.


Название: Re: vcpkg + MinGW + QtCreator + Windows
Отправлено: xokc от Август 22, 2020, 23:27
Не, тут наброс на cmake в целом без привязки к Creator. После qmake & qbs синтаксис cmake мне не заходит. Хотя, может дело во мне)