Модераторы: xvr
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> KDevelop - сборка проекта, как правильно настроить configure 
V
    Опции темы
kometa_75
Дата 24.1.2008, 11:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 62
Регистрация: 24.10.2007

Репутация: нет
Всего: нет



При сборке в KDevelop проект собирается с установленными опциями компилятора. При "ручной сборке" (т.е. ./configure, make) надо устанавливать опции CXXFLAGS, иначе соберётся дефолтная конфигурация. Интересно, что при указании нужных опций для этой же дефолтной конфигурации в IDE - всё собирается как положено, а вот в ручном режиме или через source archive эти опции не учитываются. 
Вопрос: что и как надо настроить в проекте, чтобы configure вызывалась с заданными опциями ?
PM MAIL   Вверх
powerfox
Дата 24.1.2008, 14:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


I wanna fork()
****


Профиль
Группа: Комодератор
Сообщений: 3990
Регистрация: 1.10.2005
Где: Санкт-Петербург

Репутация: 5
Всего: 97



kometa_75, у KDevelop есть Build options. параметры нужно прописать туда.
Советую посмотреть FAQ по KDevelop.


--------------------
user posted image
PM WWW   Вверх
kometa_75
Дата 24.1.2008, 14:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 62
Регистрация: 24.10.2007

Репутация: нет
Всего: нет



Цитата(powerfox @ 24.1.2008,  14:24)
kometa_75, у KDevelop есть Build options. параметры нужно прописать туда.
Советую посмотреть FAQ по KDevelop.

Куда конкретно и что писать ? Перепробовал все возможные варианты. В факе по этому поводу ничего не нашёл. Всё упорно собирается в конфигурации default, причём если собирать в самой IDE -то все опции выполняются нормально, а вот если руками собирать - то опции игнорируются.
PM MAIL   Вверх
powerfox
Дата 24.1.2008, 19:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


I wanna fork()
****


Профиль
Группа: Комодератор
Сообщений: 3990
Регистрация: 1.10.2005
Где: Санкт-Петербург

Репутация: 5
Всего: 97



Проект->Параметры проекта -> Опции configure + в параметрах проекта есть всё, что может потребоваться.


--------------------
user posted image
PM WWW   Вверх
kometa_75
Дата 25.1.2008, 10:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 62
Регистрация: 24.10.2007

Репутация: нет
Всего: нет



Цитата(powerfox @ 24.1.2008,  19:01)
Проект->Параметры проекта -> Опции configure + в параметрах проекта есть всё, что может потребоваться.

Конечно ! Я здесь в первую очередь и пишу... Только когда руками вызываю ./configure, а затем make эти опции почему-то не учитываются. А вот если явно указывать ./configure CXXFLAGS=... всё собирается как-надо.
Может я не всё или не правильно заполняю в Проект->Параметры проекта -> Опции configure ? Почему, собственно, и возник вопрос.
ЗЫ. Мне в другом месте посоветовали пойти через переменные окружения, но как-то этот способ не вдохновляет.
PM MAIL   Вверх
bsa
Дата 26.1.2008, 19:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Модератор
Сообщений: 9185
Регистрация: 6.4.2006
Где: Москва, Россия

Репутация: 16
Всего: 196



kometa_75, если честно, не очень понятно, что ты хочешь.
KDevelop вызывает configure с указанием значений CXXFLAGS и CFLAGS. Если тебе надо свои значения, то это надо редактировать configure.in, добавляя определения переменных CPPFLAGS, CXXFLAGS, CFLAGS и т.п... Только это не очень правильно. Настройки оптимизации логично передавать через configure. Если же тебе нужно подключать библиотеки или указывать пути к каталогам, то это делается в другом месте - в настройках цели и подпроекта соответственно.
PM   Вверх
kometa_75
Дата 28.1.2008, 10:31 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 62
Регистрация: 24.10.2007

Репутация: нет
Всего: нет



Цитата(bsa @ 26.1.2008,  19:08)
kometa_75, если честно, не очень понятно, что ты хочешь.

Всё что я хочу - это собрать пакет и передать его, скажем, третьей стороне(допустим - пользователю). И чтобы пользователь мог собрать пакет традиционно, через ./configure, make, make install. И очень хочется, чтобы пользователь не ломал голову ключами оптимизации и т.д. Во-всяком случае, большинство сторонних приложений я собирал и устанавливал у себя подобным образом.
PM MAIL   Вверх
codelord
Дата 28.1.2008, 10:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 777
Регистрация: 7.5.2005
Где: ты моя темноглаза я где?!

Репутация: нет
Всего: 39



Цитата(kometa_75 @  28.1.2008,  06:31 Найти цитируемый пост)
Всё что я хочу - это собрать пакет и передать его, скажем, третьей стороне(допустим - пользователю). И чтобы пользователь мог собрать пакет традиционно, через ./configure, make, make install. И очень хочется, чтобы пользователь не ломал голову ключами оптимизации и т.д. Во-всяком случае, большинство сторонних приложений я собирал и устанавливал у себя подобным образом. 

а почему тогда не rpmbuild ?



--------------------
Доступен поиск по исходным кодам в GOOGLE.
http://www.google.com/codesearch
PM MAIL   Вверх
kometa_75
Дата 28.1.2008, 10:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 62
Регистрация: 24.10.2007

Репутация: нет
Всего: нет



Цитата(codelord @ 28.1.2008,  10:42)
а почему тогда не rpmbuild ?

Дык, rpm не во всех же версиях линуха поддерживаются, не говоря уже о фре... Да это в принципе и не проблема. Просто я никогда с этим не сталкивался в KDevelop, а сейчас возникла необходимость.  
PM MAIL   Вверх
powerfox
Дата 28.1.2008, 12:58 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


I wanna fork()
****


Профиль
Группа: Комодератор
Сообщений: 3990
Регистрация: 1.10.2005
Где: Санкт-Петербург

Репутация: 5
Всего: 97



Цитата(kometa_75 @  28.1.2008,  11:51 Найти цитируемый пост)
Просто я никогда с этим не сталкивался в KDevelop, а сейчас возникла необходимость.   

Для этого, на сколько я знаю, нужен не IDE.
cmake, scons - рульные штуки. 
autoconf и automake - традиционные утилиты для создания пакетов с исходниками (чтобы просто распаковать и "./configure && make && make install")


--------------------
user posted image
PM WWW   Вверх
bsa
Дата 28.1.2008, 14:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Модератор
Сообщений: 9185
Регистрация: 6.4.2006
Где: Москва, Россия

Репутация: 16
Всего: 196



Цитата(kometa_75 @ 28.1.2008,  10:31)
Всё что я хочу - это собрать пакет и передать его, скажем, третьей стороне(допустим - пользователю). И чтобы пользователь мог собрать пакет традиционно, через ./configure, make, make install. И очень хочется, чтобы пользователь не ломал голову ключами оптимизации и т.д. Во-всяком случае, большинство сторонних приложений я собирал и устанавливал у себя подобным образом.

Вообще-то тебе и не надо включать какие-либо ключи оптимизации в конфигуратор. Если надо, пользователь сам их укажет. Если нет - то не укажет. Большинство пакетов (в исходниках), например, и не включают никаких собственных ключей оптимизации.
Если тебе уж очень хочется, то повесь на параметр --enable-debug. Если этого параметра нет, то задавай ключи через CXXFLAGS/CFLAGS. Делается это в configure.in:
Код
AC_ARG_ENABLE([debug],
     AC_HELP_STRING([Disable optimisation]),
     DEBUG_BUILD=$enableval,
     DEBUG_BUILD=no)
if test "x$DEBUG_BUILD" != "xno"; then
     CPPFLAGS="$CPPFLAGS -Wall"
else
     CXXFLAGS="$CXXFLAGS -O2 -g0"
     CFLAGS="$CFLAGS -O2 -g0"
fi


PM   Вверх
kometa_75
Дата 28.1.2008, 16:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 62
Регистрация: 24.10.2007

Репутация: нет
Всего: нет



Спасибо. Этот способ подходит. 
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "С/С++: Программирование под Unix/Linux"
xvr
  • Проставьте несколько ключевых слов темы, чтобы её можно было легче найти.
  • Не забывайте пользоваться кнопкой "Код".
  • Вопросы мобильной разработки тут
  • Телепатов на форуме нет! Задавайте чёткий, конкретный и полный вопрос. Указывайте полностью ошибки компилятора и компоновщика.
  • Новое сообщение должно иметь прямое отношение к разделу форума. Флуд, флейм, оффтопик запрещены.
  • Категорически запрещается обсуждение вареза, "кряков", взлома программ и т.д.

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, xvr.

 
 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C/C++: Программирование под Unix/Linux | Следующая тема »


 




[ Время генерации скрипта: 0.0574 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.