Название: cmake запросы о пакетах Отправлено: virtual_root от Сентябрь 25, 2012, 15:17 Доброго времени суток. Изучаю cmake и мне нужна ваша помощь. Ребята подскажите, пожалуйста, какой функцией проверить установлен тот или иной пакет(Linux)/программа(windows) в системе? Знаю что есть в cmake способ это проверить, ну что-то никак не могу найти как..
Название: Re: cmake запросы о пакетах Отправлено: Пантер от Сентябрь 25, 2012, 15:19 http://www.cmake.org/cmake/help/v2.8.9/cmake.html#module:FindQt4
И остальные вида Find*. Название: Re: cmake запросы о пакетах Отправлено: virtual_root от Сентябрь 25, 2012, 15:26 спасибо! а в qmake функция packagesExist(packages) не сможет выполнить ли тоже самое?
Название: Re: cmake запросы о пакетах Отправлено: Пантер от Сентябрь 25, 2012, 15:40 спасибо! а в qmake функция packagesExist(packages) не сможет выполнить ли тоже самое? С qmake не работаю уже очень давно, так что, жди других комментаторов.Название: Re: cmake запросы о пакетах Отправлено: virtual_root от Сентябрь 26, 2012, 10:17 у меня что-то не получается проверить наличие установленного пакета.. Пожалуйста подскажите, что я делаю не так:
Код: cmake_minimum_required (VERSION 2.6) я получаю следующий вывод: Код: cmake ./ список установленных программ, чтобы проверить название установленного пакета, он так и называется postgresql. Проверяла и на машине где не установлен postgresql вывод тот же самый... У меня ещё вопрос, как мне так сделать чтобы если пакет не найден то файлы сборки не сформировались? Название: Re: cmake запросы о пакетах Отправлено: virtual_root от Сентябрь 26, 2012, 10:26 нашла функцию find_program() , ну что-то не пойму чего ей не хватает в параметрах? У меня выдается сообщение что postgresql не установлен, хотя это не так! Ругается и на message...
Код: set(PSQLPROG) вывод cmake: Код: cmake ./ Название: Re: cmake запросы о пакетах Отправлено: virtual_root от Сентябрь 26, 2012, 11:46 решила проблему следующим образом:
Код: cmake_minimum_required (VERSION 2.6) Название: Re: cmake запросы о пакетах Отправлено: Пантер от Сентябрь 26, 2012, 11:48 В /usr/bin лучше ищи.
Название: Re: cmake запросы о пакетах Отправлено: Пантер от Сентябрь 26, 2012, 11:49 Да, cmake предназначен для происка прог, которые нужны для сборки, а ты фигню порешь. Сказали же, оформляй в пакет и прописывай зависимости.
Название: Re: cmake запросы о пакетах Отправлено: vregess от Сентябрь 27, 2012, 06:50 У тебя синтаксическая ошибка здесь (запятая не нужна):
Цитировать find_package(postgresql,REQUIRED) О чем и говорится: Цитировать Could not find module Findpostgresql,REQUIRED.cmake or a configuration file Так должно заработать: Цитировать find_package(PostgreSQL REQUIRED) Цитировать У меня ещё вопрос, как мне так сделать чтобы если пакет не найден то файлы сборки не сформировались? По идее, если что-то не найдено, то процесс конфигурирования будет прерван, также find_package() устанавливает переменную <package>_FOUND, если все ок.На примере PostgreSQL: Цитировать find_package(PostgreSQL REQUIRED) if (NOT PostgreSQL_FOUND) message(FATAL_ERROR "Can't find PostgreSQL") endif() |