Перейти к содержимому

Новая сборка СТГ 2.4


Рекомендованные сообщения

ааааааааааааааааааааааааааааа!!!!

тарифы, админов перенес...

 

main.cpp > 15:40:54 > Importing users:

main.cpp > 15:40:54 > - Popov_Konstantin

firebird_store_users.cpp > 15:40:54 > *** IBPP::SQLException ***

Context: Statement::Execute( update tb_users set address = ?, always_online = ?, credit = ?, credit_expire = ?, disabled = ?, email = ?, grp = ?, note = ?, passive = ?, passwd = ?, phone = ?, fk_tariff = (select pk_tariff from tb_tariffs where name = ?), fk_tariff_change = (select pk_tariff from tb_tariffs where name = ?), fk_corporation = (select pk_corporation from tb_corporations where name = ?), real_name = ? where pk_user = ? )

Message: isc_dsql_execute2 failed

 

SQL Message : -413

can't format message 13:587 -- message file /opt/firebird/firebird.msg not fo main.cpp > 15:40:54 > Error saving user's conf: IBPP exception

Ссылка на сообщение
Поделиться на других сайтах
  • Ответы 545
  • Created
  • Последний ответ

Top Posters In This Topic

stglibs/common.lib/common.cpp:78

 

Замените 1024 на, скажем, 4096, соберите заново и еще раз получите эту ошибку. fbclient очень многословен - не влазит в буфер :)

Ссылка на сообщение
Поделиться на других сайтах
По идее --as-needed уже не должны волновать :)

А баба Яга против ;-) Не все так просто:

http://fly.osdn.org.ua/~drool/stargazer/stg-build.log

Ссылка на сообщение
Поделиться на других сайтах

unresolved'ы плагинов не могут не быть. Это, фактически, API сервера. Функции импортируемые из ядра. Там только в mod_cap_ipq.so несколько незаконных unresolved - см. решение тут.

Ссылка на сообщение
Поделиться на других сайтах

main.cpp > 10:17:21 > - Popov_Konstantin

main.cpp > 10:17:21 > (adding passed)

firebird_store_users.cpp > 10:17:21 > *** IBPP::SQLException ***

Context: Statement::Execute( update tb_users set address = ?, always_online = ?, credit = ?, credit_expire = ?, disabled = ?, email = ?, grp = ?, note = ?, passive = ?, passwd = ?, phone = ?, fk_tariff = (select pk_tariff from tb_tariffs where name = ?), fk_tariff_change = (select pk_tariff from tb_tariffs where name = ?), fk_corporation = (select pk_corporation from tb_corporations where name = ?), real_name = ? where pk_user = ? )

Message: isc_dsql_execute2 failed

 

SQL Message : -413

can't format message 13:587 -- message file /opt/firebird/firebird.msg not found

 

Engine Code : 335544334

Engine Message :

conversion error from string "F"

 

 

гыгы

эт какое поле он пытается перевести?!

Ссылка на сообщение
Поделиться на других сайтах
conversion error from string "F"

 

 

гыгы

эт какое поле он пытается перевести?!

О, отлично!

Так, 00-base-00.sql точно последний? Там на каком-то из старых это наблюдалось. Это какое-то из булевых полей.

Ссылка на сообщение
Поделиться на других сайтах
unresolved'ы плагинов не могут не быть. Это, фактически, API сервера. Функции импортируемые из ядра. Там только в mod_cap_ipq.so несколько незаконных unresolved - см. решение тут.

А откуда десятки "RPATH entry contains" ?

Ссылка на сообщение
Поделиться на других сайтах

Для .so-шек я добавляю два элемента RPATH: сборочный каталог для возможности запуска из места сборки и каталог установки (дабы не заморачиваться с конфигурированием ld.so-кэша). Я так понимаю, оно ругается на то, что RPATH содержит нестандартные пути расположения библиотек. Интересно, почему...

Ссылка на сообщение
Поделиться на других сайтах

Почитал про verify-elf. Подумал. Может, включать сборочный каталог в RPATH только для отладочных билдов?

Кто-нибуть запускает рабочий сервер без установки?

Ссылка на сообщение
Поделиться на других сайтах
Почитал про verify-elf. Подумал. Может, включать сборочный каталог в RPATH только для отладочных билдов?

Кто-нибуть запускает рабочий сервер без установки?

Такое чаще бздяшники практикуют... Я лично сразу делаю rpm-пакет - проще управлять/удалять/обновлять.

Ссылка на сообщение
Поделиться на других сайтах
Почитал про verify-elf. Подумал. Может, включать сборочный каталог в RPATH только для отладочных билдов?

Кто-нибуть запускает рабочий сервер без установки?

Кстати, я заметил отсутствие -fPIC, о которых когда-то мне поясняли что оно и зачем. Я их добавляю в спеке при сборке таким образом:

subst 's|gmake|gmake CFLAGS="%optflags -fPIC"|g' ./build

Получается вроде такого:

g++ -c admin.cpp -pipe -Wall -O2 -march=i686 -mtune=i686 -fPIC

Или не нужно? Что с ним, что без - "RPATH entry contains" сыпятся щедро, только без -fPIC еще наблюдаю такое:

/usr/bin/ld: warning: creating a DT_TEXTREL in a shared object.

Ссылка на сообщение
Поделиться на других сайтах
Кстати, я заметил отсутствие -fPIC, о которых когда-то мне поясняли что оно и зачем. Я их добавляю в спеке при сборке таким образом:

subst 's|gmake|gmake CFLAGS="%optflags -fPIC"|g' ./build

Получается вроде такого:

g++ -c admin.cpp -pipe -Wall -O2 -march=i686 -mtune=i686 -fPIC

Все! Сам дурак! Это CFLAGS="%optflags" подменяет это дело. Значит нужно именно CFLAGS="%optflags -fPIC"

Ссылка на сообщение
Поделиться на других сайтах
Кстати, я заметил отсутствие -fPIC, о которых когда-то мне поясняли что оно и зачем. Я их добавляю в спеке при сборке таким образом:

subst 's|gmake|gmake CFLAGS="%optflags -fPIC"|g' ./build

Получается вроде такого:

g++ -c admin.cpp -pipe -Wall -O2 -march=i686 -mtune=i686 -fPIC

Или не нужно? Что с ним, что без - "RPATH entry contains" сыпятся щедро, только без -fPIC еще наблюдаю такое:

/usr/bin/ld: warning: creating a DT_TEXTREL in a shared object.

-fPIC указывает компилятору генерировать позиционно-независимый код. Это абсолютно необходимо для динамический библиотек aka .so-файлов. Собственно, в stglibs и в плагинах он везде есть. В приведенном кусочке лога он совершенно не нужен, т.к. admin.cpp - это часть ядра Stg, а не кусок библиотеки.

Ворнинг /usr/bin/ld: warning: creating a DT_TEXTREL in a shared object говорит о том, что в .so при компоновке попадает не позиционно-независимый код. Хотелось бы увидеть предыдущую строчку лога, в которой указывается, что это собирается и из чего.

Ссылка на сообщение
Поделиться на других сайтах
В приведенном кусочке лога он совершенно не нужен, т.к. admin.cpp - это часть ядра Stg, а не кусок библиотеки.

Ворнинг /usr/bin/ld: warning: creating a DT_TEXTREL in a shared object говорит о том, что в .so при компоновке попадает не позиционно-независимый код. Хотелось бы увидеть предыдущую строчку лога, в которой указывается, что это собирается и из чего.

Да это мои кривые попытки ввести оптимизацию под архитектуру процессора. Существующая на данный момент система сборки не реагирует на это дело, и собранный rpm-пакет с ключем --target (например --target athlon) даст на выходе bla-bla.athlon.rpm, но это будет ложно, так как бинарники собирались без -march=athlon -mtune=athlon. Мне нужно только понять куда именно вставить переменную, передающую в CFLAGS ключи оптимизации под конкретную архитектуру. То, куда и как подставляю сейчас я дает это дело во все выражения g++, мне так кажется...

Ссылка на сообщение
Поделиться на других сайтах

А, ну это просто.

7 и 8 строка скрипта build

Там стоят по умолчанию пустые значения, к которым в процессе настройки билда цепляются необходимые ключи (-g3 для отладочного билда, -O2 для рабочего билда, -fPIC и -Wl,-rpath,<путь> и т.д.). Туда и нужно прописать -march=athlon -mtune=athlon

Ссылка на сообщение
Поделиться на других сайтах
А, ну это просто.

7 и 8 строка скрипта build

Там стоят по умолчанию пустые значения, к которым в процессе настройки билда цепляются необходимые ключи (-g3 для отладочного билда, -O2 для рабочего билда, -fPIC и -Wl,-rpath,<путь> и т.д.). Туда и нужно прописать -march=athlon -mtune=athlon

Брр.. У меня лыжи не едут... 7 и 8 строки скрипта build совсем не похожи на нужные :-) Может в районе 57? Там, где определяется CFLAGS?

 

P.S. Кстати, по сборочным зависимостям вылез не только gcc, но и gcc++. А определения ключа CXXFLAGS я не нашел.

Ссылка на сообщение
Поделиться на других сайтах

Да, это я глянул в CVS'ную версию, где я вынес уже эти переменные на "передний план". Лучше вставить перед блоком echo примерно в 178 строке.

stg собирается с помощью g++, т.к. проект написан на С++. Однако, в отличие от Autotools, где для g++ используется CXXFLAGS тут этой переменной нету. Компилятору передается переменная CFLAGS, с которой и надо работать.

Можно закоментировать последнюю строчку скрипта, в которой запускается сборка вызовом gmake и проконтролировать его работу: все сборочные переменные будут определены в файле Makefile.conf, находящемся в самом корневом каталоге stg.

Ссылка на сообщение
Поделиться на других сайтах
Куда он установлен? В /usr/local ??

Сделай симлинки в /usr

так и сделано:

оригинал /usr/local/include/expat.h

на него симлинк /usr/include/expat.h

 

до последнего билда это проканывало, щас ошибка

Ссылка на сообщение
Поделиться на других сайтах
Куда он установлен? В /usr/local ??

Сделай симлинки в /usr

так и сделано:

оригинал /usr/local/include/expat.h

на него симлинк /usr/include/expat.h

 

до последнего билда это проканывало, щас ошибка

Нужен не только заголовочный файл, но и сама библиотека. То есть, если expat установлен в /usr/local, то нужно или переконфигурировать ld.so (/etc/ld.so.conf), либо сделать симлинк на /usr/local/lib/libexpat.so в /usr/lib.

Ссылка на сообщение
Поделиться на других сайтах
Гость
Эта тема закрыта для публикации сообщений.
  • Сейчас на странице   0 пользователей

    Нет пользователей, просматривающих эту страницу.


×
×
  • Создать...