Size: a a a

2021 June 20

C

Chuvi in pro.buildsystems
источник

O

Ofee in pro.buildsystems
nlohmann_jsonConfig.cmake автоматически установится после сборки библиотеки через cmake в указанный вами(переменная CMAKE_INSTALL_PREFIX или cmake --install <binary-dir/> --prefix <install-dir/>) или системный каталог

После установки он должен лежать по такому пути, чтобы find_package мог его найти

Свой Findnlohmann_json.cmake писать не нужно, это немного устаревший инструмент, рассчитанный преимущественно на библиотеки, собираемые другими билдсистемами


Как альтернативы, упомянутые выше — включить код проекта либо в виде модуля целиком, либо в виде отдельно взятого заголовка
источник

Р

Роман in pro.buildsystems
Благодарю всех за помощь)
источник

II

Igor Ivanov in pro.buildsystems
Как вариант - прикинуться крупной нтырпрайзной кроссплатформенной тулзой вроде clion, и ставиться в /opt вместе со всеми зависимостями, глубоко наплевав на системные пакеты
источник

AN

Alexander N in pro.buildsystems
Так и надо, ещё собираться с старой glibc для обратной совместимости
источник

II

Igor Ivanov in pro.buildsystems
Главное при этом получить старую глибц каким-нибудь более юзабельным путём, нежели "собирать стафф в докере с бубунту12"
источник

ИФ

Имён Фамильонович... in pro.buildsystems
Вопросы по appveyor тут оффтоп ведь?
источник

AS

Anatoly Shirokov in pro.buildsystems
За спрос денег не берем. Просто другой площадки по таким вопросам нет.
источник

ИФ

Имён Фамильонович... in pro.buildsystems
Переслано от Имён Фамильонович...
мне нужно в appveyor создать несколько конфигураций. Так работать будет?
configuration:
   - -lt static -bt Release -bd static_release
   - -lt static -bt Debug -bd static_debug
или каким образом такое можно реализовать?

build_script такой: python shoot_build.py %configuration%
источник

ИФ

Имён Фамильонович... in pro.buildsystems
Переслано от Имён Фамильонович...
или нужно делать как-то так?
configuration:
 - myconf
for:
 -
   matrix:
     only:
       - configuration: myconf
   build_script:
     - python ...
источник

II

Igor Ivanov in pro.buildsystems
Тут уж нужно смотреть в синтаксис конфигурационных ямлов аппвейора, как в них матрицы делаются...
источник

ИФ

Имён Фамильонович... in pro.buildsystems
Второй вариант я как раз взял из документации. На данный момент у меня 4 конфигурации, скоро их будет 8. Писать для каждой такой кусок
 -
   matrix:
     only:
       - configuration: myconf
   build_script:
     - python ...
, мне кажется, как-то не круто
источник

II

Igor Ivanov in pro.buildsystems
Можешь попробовать погуглить yaml anchors и попробовать заюзать в конфигуоациях эти ямловские "переменные"
источник

II

Igor Ivanov in pro.buildsystems
Но вообще я бы сказал, что должно быть нечто вроде

Matrix:
 Only:
   - configuration: foo
   - configuration: bar
 Build:
   - sh ...
   - python %configuration%

Т.е. отдельно один раз раздел со всеми конфигами в виде списка словарей, и отдельно скрипт выполнения, пользующийся ключами из этих словарей
источник

ИФ

Имён Фамильонович... in pro.buildsystems
Спасибо, попробую
источник
2021 June 21

T

Tamer in pro.buildsystems
Товарищи, подскажите пж как правильно залинковать либы, которые я нахожу при парсинге, вот код парсинга
cmake_parse_arguments(_MODULE
       "${_OPTIONS_ARGS}"
       "${_ONE_VALUE_ARGS}"
       "${_MULTI_VALUE_ARGS}"
       ${ARGN})
, он корректный и мои зависимости подтягиваются и ищутся, вот тут я ищу зависимости
foreach(DEPEND ${_MODULE_DEPENDS})
       find_package(${DEPEND} REQUIRED)
   endforeach()
, теперь остаётся один из последних шагов, а именно линковка, я также хочу их залинковать, но при линковке мне пишет, что  некорректно, по всему я как-то неправильно понимаю выходные имена
foreach(DEPEND ${_MODULE_DEPENDS})
       target_link_libraries(${_MODULE_MODULE_NAME} PUBLIC ${DEPEND_LIBRARIES})
   endforeach()
источник

T

Tamer in pro.buildsystems
В ${DEPEND_LIBRARIES} просто пустые значения
источник

T

Tamer in pro.buildsystems
Если что, то я просто написал макрос, аля модуль, который просто динамически сам формирует модуль с зависимости которыми ему передают, по типу MODULE(MODULE_NAME test_module DEPENDS Qt5Widgets Qt5Core Qt5Gui)
источник

T

Tamer in pro.buildsystems
Если я явно пропишу target_link_libraries(${_MODULE_MODULE_NAME} PUBLIC Qt5::Widgets Qt5::Core Qt5::Gui), то всё робит как надо, но я хочу это дело автоматизировать
источник

II

Igor Ivanov in pro.buildsystems
переменной DEPEND_LIBRARIES не существует, нужно ${DEPEND}_LIBRARIES
foreach(DEPEND ${_MODULE_DEPENDS})
 set(libs ${${DEPEND}_LIBRARIES})
 if(NOT libs)
   message(FATAL_ERROR "DEPEND ${DEPEND}: empty ${DEPEND}_LIBRARIES var")
 endif()
 message(${libs})
endforeach()
источник