Jump to content

Drool

Muggles
  • Posts

    83
  • Joined

  • Last visited

Everything posted by Drool

  1. Да нет, не только это. У меня при сборке унресолведы сыпались как из рога изобилия
  2. У меня сложилось впечатление что все еще волнуют. Боюсь, что пост выше из-за отсутствия --as-needed в дистрибутиве человека привел именно к критическому унресолведу. Хоть эта фича и затрудняет написание кода, но таки есть большая польза. P.S. Место на сборочном роботе дают, подробности ушли личкой. Всем страждущим придется подождать, если это починится и соберется на альте - соберется и заработает везде
  3. Попробую узнать можно ли выделить Вам место на сборочном роботе под x86_64 для починки. Если дадут - будет, естессно, ALT :-) Со всеми вытекающими --as-needed ;-)
  4. Может потому и не собирается для 64? :-) К сожалению имею доступ к сборочному роботу на x86_64 только под ALT Linux. У кого-то есть возможность проверить?
  5. gcc4.1-4.1.1-alt11 Ошибка воспроизводится стабильно. Грешить на багу компилятора сложно, так как им собран 3-й по количеству пакетов в мире репозиторий. P.S. У кого-нибудь на каком-то дистрибутиве старгайзер собрался для ванильного x86_64, не считая биарч?
  6. Было бы неплохо, если бы кто-то, у кого есть возможность, попытался собрать последние версии Stg под x86_64 и где-нибуть выложить логи компиляции. DONE http://local.com.ua/forum/index.php?showto...t=0entry68566
  7. Заменяю так, чтоб g++ -c users.cpp -O2 было, к примеру, как g++ -c users.cpp -pipe -Wall -O2 -march=athlon -mtune=athlon-xp И тогда получаю: g++ -pipe -Wall -O2 -march=athlon -mtune=athlon-xp -Wall -fPIC -I /usr/src/RPM/BUILD/stg-2.4-2007.10.12-15.36.05/projects/stargazer/../../include -I ./ -DLINUX -DSTG_TIME -c stg_strptime.cpp gmake[2]: *** No rule to make target `-lstg_crypto', needed by `libstg_common'. Stop. Что я делаю не так? Можно, конечно, собирать и так, это не критично для себя, но в дистрибутив недопустимо.
  8. Ой, забыл совсем: http://fly.osdn.org.ua/~drool/stargazer/cc72iUNW.out.tar.bz2
  9. Попытка собрать на x86_64: g++ -c traffcounter.cpp -O2 -Wall -I /usr/src/RPM/BUILD/stg-2.4-2007.10.12-15.36.05/projects/stargazer/../../include -DLINUX g++ -c user.cpp -O2 -Wall -I /usr/src/RPM/BUILD/stg-2.4-2007.10.12-15.36.05/projects/stargazer/../../include -DLINUX g++ -c user_property.cpp -O2 -Wall -I /usr/src/RPM/BUILD/stg-2.4-2007.10.12-15.36.05/projects/stargazer/../../include -DLINUX user.cpp: In member function 'int USER::AddMessage(STG_MSG*)': user.cpp:1325: internal compiler error: in reg_or_subregno, at jump.c:2015 Please submit a full bug report, with preprocessed source if appropriate. See <URL:http://bugzilla.altlinux.ru/> for instructions. g++ -c users.cpp -O2 -Wall -I /usr/src/RPM/BUILD/stg-2.4-2007.10.12-15.36.05/projects/stargazer/../../include -DLINUX g++ -c plugin_runner.cpp -O2 -Wall -I /usr/src/RPM/BUILD/stg-2.4-2007.10.12-15.36.05/projects/stargazer/../../include -DLINUX Preprocessed source stored into /usr/src/tmp/cc72iUNW.out file, please attach this to your bugreport. gmake: *** [user.o] Error 1 gmake: *** Waiting for unfinished jobs....
  10. Для библиотек допустимо иметь неразрешенные символы. Не совсем. Если вы посмотрите мой патч для unresolved-ов - там фикс для pthread, без этого были unresolved-ы, которые вызывали падение самого старгайзера.
  11. Не нужно форкать, есть уже: http://local.com.ua/forum/index.php?act=ST&f=4&t=9466
  12. Было бы неплохо. Моя аська указана в данных P.S. Таки рассылка удобнее
  13. как раз об этом и предупреждают. PS: судя по бинарникам в rpm'ке у вас не пофикшен install_bin. Поправьте как указано тут: http://local.com.ua/forum/index.php?showto...indpost&p=66146 Поправил -fPIC а также install_bin. Собирается, но только с отключенной проверкой на unresolved. Также присутствует жалоба на ненайденные библиотеки при генерировании requires самим rpm-ом. Спек, патчи и лог сборки выложил: http://fly.osdn.org.ua/~drool/stargazer/sp...ild_log.tar.bz2 Хотелось бы увидеть комментарии к этому делу.
  14. ls -l | grep libstg_crypto.so -rw------- 1 builder builder 15172 Sep 16 19:13 libstg_crypto.so objdump -t ./libstg_crypto.so | grep Blowfish (в ответ - тишина, ничегошеньки)
  15. Попробовал - недостаточно. Видать не туды я пихаю этот ключик. =:-/
  16. Относительно 1-го варианта. В Makefile старгайзера: LDFLAGS = -g3 -Wl,-E -L$(DIR_LIB) -Wl,-rpath,$(DIR_LIB) -Wl,-rpath,/usr/lib/stg Корректно ли будет сделать так: LDFLAGS = -Wl,--no-as-needed -g3 -Wl,-E -L$(DIR_LIB) -Wl,-rpath,$(DIR_LIB) -Wl,-rpath,/usr/lib/stg ? Для "себя" по-горячему и на скору руку - пойдет, но мантейнить в сизиф такое - нельзя...
  17. Я так понимаю, эта подстановка - работа автоматизированной системы сборки. Так вот, для библиотек и модулей обязательно нужно указывать -fPIC для генерации позиционно-независимоого кода. Сообщения: как раз об этом и предупреждают. PS: судя по бинарникам в rpm'ке у вас не пофикшен install_bin. Поправьте как указано тут: http://local.com.ua/forum/index.php?showto...indpost&p=66146 /usr/bin/subst 's|gmake|gmake CFLAGS="-pipe -Wall -O2 -march=athlon -mtune=athlon-xp"|g' ./build - это я подставляю в спеке сам, так как существующие ключи не отрабатывают --target для rpm-based дистрибутивов, и если я у себя на athlon соберу с ключем, к примеру --target i586, то на выходе я получу *.i586.rpm-пакет, но истинность архитектуры i586 будет весьма сомнительна. Как правильно подставить флаги архитектуры в спеке: %__subst 's|gmake|gmake CFLAGS="%optflags"|g' ./build чтоб сохранить -fPIC ? %optflags - переменная, которая зависит от указания --target
  18. Эм... Ну дык я о чем и говорю :-) На http://www.freesource.info/wiki/AltLinux/S...earch=as-needed так и сказано: "С марта 2006 в ALT Linux наблюдается ld -Wl,--as-needed по умолчанию"
  19. Относительно --as-needed - насколько я знаю только ALT организовали это дело на уровне компилятора/rpm-буилдера, слыхал что гентушники наступили на эту граблю, но как они это дело решали для себя - не в курсе. По-моему - так и оставили избыточную линковку. Остальные вроде эту бяку попросту проигнорировали. Относительно ключей компилятора - следов предыдущей сборки нет (при сборке с помощью spec/rpm папка сборки перед сборкой вычищается). В данный момент заливаю собранные под athlon пакеты +src.rpm+build.log на http://fly.osdn.org.ua/~drool/stargazer/ В src.rpm можно найти те мои кривопатчи, с которыми оно собирается, в спеке видны дополнительные финты ушами (subst etc) для выравнивания путей под специфику ALT. Там же можно будет ознакомиться с логом сборки. Сборка ведется всегда внутри хашера (http://www.freesource.info/wiki/ALTLinux/Dokumentacija/Hasher)
  20. Это очень ПЛОХОЕ решение Странно что вобще собирается... 1. Обоснуйте чем плохое? 2. Как лучше?
  21. Привожу ниже патч, с которым собирается, хоть и с диким количеством ругани: =========тело патча============ --- stg-2.4-2007.06.26-14.14.41/stglibs/Makefile.in.orig 2007-05-11 17:37:12 +0400 +++ stg-2.4-2007.06.26-14.14.41/stglibs/Makefile.in 2007-09-14 23:32:29 +0400 @@ -68,7 +68,7 @@ endif all: $(PROG) $(PROG): $(OBJS) - g++ -shared -Wl,-soname,$(PROG).so $(OBJS) -o $(PROG).so + g++ -g3 -Wall -fPIC $(OBJS) $(FIX) -Wl,-soname,$(PROG).so -o $(PROG).so ar rc $(PROG).a $(OBJS) ranlib $(PROG).a --- stg-2.4-2007.06.26-14.14.41/stglibs/common.lib/Makefile.orig 2007-05-17 12:43:00 +0400 +++ stg-2.4-2007.06.26-14.14.41/stglibs/common.lib/Makefile 2007-09-14 23:31:49 +0400 @@ -4,6 +4,7 @@ LIB_NAME = stg_common PROG = lib$(LIB_NAME) +FIX = ../crypto.lib/blowfish.o SRCS = debug.c \ stg_error.c \ =========конец патча============ Ругань примерно такого содержания: ============================= verify-elf: WARNING: ./usr/lib/stg/mod_conf_sg.so: undefined symbol: _ZNK5ADMIN7GetPrivEv verify-elf: WARNING: ./usr/lib/stg/mod_conf_sg.so: undefined symbol: _Z8Encode12PcPKci verify-elf: WARNING: ./usr/lib/stg/mod_conf_sg.so: undefined symbol: _ZNK4USER12GetConnectedEv verify-elf: WARNING: ./usr/lib/stg/mod_conf_sg.so: undefined symbol: _ZNK4USER11GetPingTimeEv verify-elf: WARNING: ./usr/lib/stg/mod_conf_sg.so: undefined symbol: _ZNK7TARIFFS13GetTariffsNumEv verify-elf: WARNING: ./usr/lib/stg/mod_conf_sg.so: undefined symbol: _ZN5USERS10GetUserNumEv verify-elf: WARNING: ./usr/lib/stg/mod_conf_sg.so: undefined symbol: _ZNK8SETTINGS9GetDayFeeEv verify-elf: WARNING: ./usr/lib/stg/mod_conf_sg.so: undefined symbol: _ZNK8SETTINGS10GetDirNameEi verify-elf: WARNING: ./usr/lib/stg/mod_conf_sg.so: undefined symbol: _Z12strtodouble2PKcRd verify-elf: WARNING: ./usr/lib/stg/mod_conf_sg.so: undefined symbol: _ZN4USER9WriteConfEv verify-elf: WARNING: ./usr/lib/stg/mod_conf_sg.so: undefined symbol: _ZN4USER9WriteStatEv verify-elf: WARNING: ./usr/lib/stg/mod_conf_sg.so: undefined symbol: _ZNK7TARIFFS10FindByNameERKSs verify-elf: WARNING: ./usr/lib/stg/mod_conf_sg.so: undefined symbol: _ZN4USER15ResetNextTariffEv verify-elf: WARNING: ./usr/lib/stg/mod_conf_sg.so: undefined symbol: _ZNK5ADMIN9GetLogStrEv verify-elf: WARNING: ./usr/lib/stg/mod_conf_sg.so: undefined symbol: _ZNK5ADMIN10GetAdminIPEv verify-elf: WARNING: ./usr/lib/stg/mod_conf_sg.so: undefined symbol: _ZNK8SETTINGS10GetConfDirEv verify-elf: WARNING: ./usr/lib/stg/mod_conf_sg.so: undefined symbol: _Z10ScriptExecRKSs verify-elf: WARNING: ./usr/lib/stg/mod_conf_sg.so: undefined symbol: _ZNK5ADMIN13GetAdminIPStrEv verify-elf: WARNING: ./usr/lib/stg/mod_conf_sg.so: undefined symbol: _ZN7TARIFFS3DelERKSsRK5ADMIN verify-elf: WARNING: ./usr/lib/stg/mod_conf_sg.so: undefined symbol: _ZNK7TARIFFS11GetStrErrorEv verify-elf: WARNING: ./usr/lib/stg/mod_conf_sg.so: undefined symbol: _ZN7TARIFFS3AddERKSsRK5ADMIN verify-elf: WARNING: ./usr/lib/stg/mod_conf_sg.so: undefined symbol: _ZN6TARIFFC1Ev verify-elf: WARNING: ./usr/lib/stg/mod_conf_sg.so: undefined symbol: _Z18ParseTariffTimeStrPKcRiS1_S1_S1_ verify-elf: WARNING: ./usr/lib/stg/mod_conf_sg.so: undefined symbol: _ZN7TARIFFS10OpenSearchEv verify-elf: WARNING: ./usr/lib/stg/mod_conf_sg.so: undefined symbol: _ZN7TARIFFS10SearchNextEiP11TARIFF_DATA verify-elf: WARNING: ./usr/lib/stg/mod_conf_sg.so: undefined symbol: _ZN7TARIFFS11CloseSearchEi verify-elf: WARNING: ./usr/lib/stg/mod_conf_sg.so: undefined symbol: _ZN7TARIFFS3ChgERK11TARIFF_DATARK5ADMIN verify-elf: WARNING: ./usr/lib/stg/mod_conf_sg.so: undefined symbol: _ZN6ADMINS3AddERKSsRK5ADMIN verify-elf: WARNING: ./usr/lib/stg/mod_conf_sg.so: undefined symbol: _ZN6ADMINS11GetStrErrorEv verify-elf: WARNING: ./usr/lib/stg/mod_conf_sg.so: undefined symbol: _ZN6ADMINS3DelERKSsRK5ADMIN verify-elf: WARNING: ./usr/lib/stg/mod_conf_sg.so: undefined symbol: _ZN6ADMINS6ChangeERK10ADMIN_CONFRK5ADMIN verify-elf: WARNING: ./usr/lib/stg/mod_conf_sg.so: undefined symbol: _ZNK6ADMINS10OpenSearchEv verify-elf: WARNING: ./usr/lib/stg/mod_conf_sg.so: undefined symbol: _ZNK6ADMINS10SearchNextEiP10ADMIN_CONF verify-elf: WARNING: ./usr/lib/stg/mod_conf_sg.so: undefined symbol: _ZNK6ADMINS11CloseSearchEi verify-elf: WARNING: ./usr/lib/stg/mod_remote_script.so: TEXTREL entry found: 0x0 ============================= Этой ругани экранов с десяток... На x86_64 сборка не идет вообще: ============================= Makeing stg_logger.lib gmake: Entering directory `/usr/src/RPM/BUILD/stg-2.4-2007.06.26-14.14.41/stglibs/stg_logger.lib' rm -f deps libstg_logger *.o *.a *.so tags *.*~ gmake: Leaving directory `/usr/src/RPM/BUILD/stg-2.4-2007.06.26-14.14.41/stglibs/stg_logger.lib' gmake: Entering directory `/usr/src/RPM/BUILD/stg-2.4-2007.06.26-14.14.41/stglibs/stg_logger.lib' ../Makefile.in:88: deps: No such file or directory gmake: Leaving directory `/usr/src/RPM/BUILD/stg-2.4-2007.06.26-14.14.41/stglibs/stg_logger.lib' gmake: Entering directory `/usr/src/RPM/BUILD/stg-2.4-2007.06.26-14.14.41/stglibs/stg_logger.lib' g++ -pipe -Wall -O2 -I ../../include/ -I ./ -DLINUX -DSTG_TIME -c stg_logger.cpp g++ -shared stg_logger.o -Wl,-soname,libstg_logger.so -o libstg_logger.so /usr/bin/ld: stg_logger.o: relocation R_X86_64_32 against `a local symbol' can not be used when making a shared object; recompile with -fPIC stg_logger.o: could not read symbols: Bad value collect2: ld returned 1 exit status ============================= Ы? :argh:
  22. При сборке наблюдаю такое: g++ -shared -Wl,-soname,libstg_common.so debug.o stg_error.o common.o stg_strptime.o -o libstg_common.so Не может ли быть грабля зарыта здесь? Я среди *.o не вижу blowfish.o.
  23. Проблема изучается. Воспроизвести ошибку не удалось, по этому не могу указать точного решения. Попробуйте переставить местами строки -lstg_common и -lstg_crypto в projects/stargazer/Makefile Библиотека libstg_common.so использует функции шифрования из libstg_crypto.so. Однако, на сегодня, библиотеки собираются без указания зависимостей - они разрешаются при линковке сервера. Возможно, для вашей версии компоновщика важен порядок линковки библиотек. > Попробуйте переставить местами строки -lstg_common и -lstg_crypto в projects/stargazer/Makefile Попробовал. Побоку, та же фигня :-( Проблема явно в --as-needed http://www.freesource.info/wiki/AltLinux/S...earch=as-needed Но не могу понять где собака порылась...
  24. А если найти и заменить libcrypto.a на libcrypto.so ? Автор почему-то сильно любит линковать софину динамикой вперемешку со статикой... Никак не пойму этого магического финта и что он дает :-) -lgnugetopt - попробовать найти какой devel-пакет предоставляет это дело и доустановить. P.S. А на этой же системе, только под x86_32 собирается? Если да - тады начинается именно то веселье относительно гвоздей для 64-битной сборки, о которой я говорил несколько выше. :argh:
  25. Есть опакеченный авторизатор для ALT Linux, думаю проблем его собрать под мандриву - не будет. Решение сделал такое - написал start/stop демон, в /usr/bin положил бинарник с именем sgauth.bin и шелл-скрипт, который нужно подправить руками - указать адрес сервака, логин и пароль. Все.
×
×
  • Create New...