Ru-MaNGOS

Вернуться   Ru-MaNGOS > Документация > Установка MaNGOS

Важная информация

Установка MaNGOS Установка MaNGOS

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
Старый 16.11.2010, 08:53   #1
maximt
Гость
 
Сообщений: n/a
По умолчанию ошибка компиляции (undefined reference to `__sync_add_and_fetch_4')

сервер на mandriva 2009.0
Linux 2.6.27 i686 Intel(R) Pentium(R) Dual CPU E2200
версия gcc 4.3.2

компилирую по гайду, на последней (10721) столкнулся с проблемой:
Код:
../shared/libmangosshared.a(Threading.o): In function `ACE_Atomic_Op_GCC<long>::operator--()':
/usr/servers/mangos/compile/objdir/src/shared/../../../dep/ACE_wrappers/ace/Atomic_Op_GCC_T.inl:49: undefined reference to `__sync_sub_and_fetch_4'
/usr/servers/mangos/compile/objdir/src/shared/../../../dep/ACE_wrappers/ace/Atomic_Op_GCC_T.inl:49: undefined reference to `__sync_sub_and_fetch_4'
/usr/servers/mangos/compile/objdir/src/shared/../../../dep/ACE_wrappers/ace/Atomic_Op_GCC_T.inl:49: undefined reference to `__sync_sub_and_fetch_4'
/usr/servers/mangos/compile/objdir/src/shared/../../../dep/ACE_wrappers/ace/Atomic_Op_GCC_T.inl:49: undefined reference to `__sync_sub_and_fetch_4'
../../dep/ACE_wrappers/ace/.libs/libACE.so: undefined reference to `__sync_add_and_fetch_4'
../../dep/ACE_wrappers/ace/.libs/libACE.so: undefined reference to `__sync_fetch_and_sub_4'
collect2: ld returned 1 exit status
пробовал добавить флаги ../configure CFLAGS="-march=i686" ACE_CFLAGS="-march=i686"
не помогло..
  Ответить с цитированием
Старый 16.11.2010, 13:06   #2
Йоха
Умный
 
Регистрация: 02.07.2010
Сообщений: 434
Сказал(а) спасибо: 27
Поблагодарили 73 раз(а) в 45 сообщениях
Йоха Скоро придёт к известности
По умолчанию

это ошибка не компилятора, а линковщика. Проверь настройки/пути наличие библиотек от ACE, возможно сам ACE сперва надо собрать.
Йоха вне форума   Ответить с цитированием
Старый 17.11.2010, 03:27   #3
maximt
Гость
 
Сообщений: n/a
По умолчанию

__sync_add_and_fetch_4 и __sync_fetch_and_sub_4 это функции gcc

организовал простенький тест
Код:
# cat test.c
int main()
{
    int i = 3;
    int j = __sync_add_and_fetch(&i, 1);
    return 0;
}
Код:
# gcc test.c
/tmp/cccOSsgM.o: In function `main':
test.c:(.text+0x27): undefined reference to `__sync_add_and_fetch_4'
collect2: выполнение ld завершилось с кодом возврата 1
#
с ключом ошибок не выдает
Код:
# gcc -march=i686 test.c
#
победил с помощью
Код:
../configure CXXFLAGS="-march=i686" ...

Последний раз редактировалось maximt; 30.11.2010 в 06:47.
  Ответить с цитированием
Старый 16.01.2011, 11:04   #4
WildLynx
Пользователь
 
Аватар для WildLynx
 
Регистрация: 18.08.2010
Сообщений: 33
Сказал(а) спасибо: 1
Поблагодарили 1 раз в 1 сообщении
WildLynx На верном пути
По умолчанию Ошибка при компиляции mangoszero

OS - Mandriva 2010 x86

загрузка - как обычно
autoreconf -fvi
configure - только с путями

при сборке make выдаёт ошибку:

Код:
../shared/libmangosshared.a(Threading.o): In function `ACE_Atomic_Op_GCC<long>::operator--()':
/home/lynx/_MANGOS/dst/z1245/objects/src/shared/../../../dep/ACE_wrappers/ace/Atomic_Op_GCC_T.inl:49: undefined reference to `__sync_sub_and_fetch_4'
/home/lynx/_MANGOS/dst/z1245/objects/src/shared/../../../dep/ACE_wrappers/ace/Atomic_Op_GCC_T.inl:49: undefined reference to `__sync_sub_and_fetch_4'
/home/lynx/_MANGOS/dst/z1245/objects/src/shared/../../../dep/ACE_wrappers/ace/Atomic_Op_GCC_T.inl:49: undefined reference to `__sync_sub_and_fetch_4'
/home/lynx/_MANGOS/dst/z1245/objects/src/shared/../../../dep/ACE_wrappers/ace/Atomic_Op_GCC_T.inl:49: undefined reference to `__sync_sub_and_fetch_4'
../../dep/ACE_wrappers/ace/.libs/libACE.so: undefined reference to `__sync_add_and_fetch_4'
../../dep/ACE_wrappers/ace/.libs/libACE.so: undefined reference to `__sync_fetch_and_sub_4'
collect2: ld returned 1 exit status
make[3]: *** [mangos-realmd] Ошибка 1
make[3]: Leaving directory `/home/lynx/_MANGOS/dst/z1245/objects/src/realmd'
make[2]: *** [all-recursive] Ошибка 1
make[2]: Leaving directory `/home/lynx/_MANGOS/dst/z1245/objects/src'
make[1]: *** [all-recursive] Ошибка 1
make[1]: Leaving directory `/home/lynx/_MANGOS/dst/z1245/objects'
make: *** [all] Ошибка 2
Помогите, пожалуйста понять, в чём дело.

Кстати, в последней (z1245), поправили наконец то патч для scriptdevzero - и тут же поломали - он пишет в configure.ac строчку
scriptdev2.conf.dist
, а файл на самом деле существует и упоминается в исходниках по старому - scriptdevzero.conf.dist.in
WildLynx вне форума   Ответить с цитированием
Старый 16.01.2011, 14:56   #5
Vladimir
MaNGOS Dev
 
Регистрация: 09.02.2010
Сообщений: 594
Сказал(а) спасибо: 315
Поблагодарили 438 раз(а) в 181 сообщениях
Vladimir Как свет с небесVladimir Как свет с небесVladimir Как свет с небесVladimir Как свет с небесVladimir Как свет с небесVladimir Как свет с небес
По умолчанию

проблемы с линоковкой ACE может быть стоит спрашивать в разделах для master-ветки - всеравно никакой разницы нет в использовании ACE в разных ветках мангоса. Выглядит как проблема ACE для конкретной платформы. Может погуглить стоит "ACE Mandriva"
__________________
Так как устал объяснять знайте ICQ не пользуюсь
Vladimir вне форума   Ответить с цитированием
Старый 16.01.2011, 15:13   #6
MaS0n
Модератор
 
Регистрация: 09.03.2010
Адрес: dev/null
Сообщений: 126
Сказал(а) спасибо: 44
Поблагодарили 111 раз(а) в 47 сообщениях
MaS0n Скоро придёт к известностиMaS0n Скоро придёт к известности
Отправить сообщение для MaS0n с помощью ICQ
По умолчанию

имхо стоит обратить внимание в низ страницы, там есть фрейм с названием "Похожие темы" и такая ошибка уже обсуждалась, и вроде бы там даже было найдено решение









------------------
tempura
Слил ветки
MaS0n вне форума   Ответить с цитированием
Пользователь сказал cпасибо:
Vladimir (16.01.2011)
Старый 16.01.2011, 21:13   #7
WildLynx
Пользователь
 
Аватар для WildLynx
 
Регистрация: 18.08.2010
Сообщений: 33
Сказал(а) спасибо: 1
Поблагодарили 1 раз в 1 сообщении
WildLynx На верном пути
По умолчанию

Прошу прощения за повторяющуюся тему. Я за пределами раздела mangoszero не глянул - привык смотреть только там, так как проект вроде обособленный.

Добавление ключа в ./configure ..... не сработало, выдаёт ошибку
Обошел, назначив переменной окружения CXXFLAGS то же значение

вроде помогло, но тут же вылезло вот это:

http://www.ru-mangos.ru/showthread.php?t=989

далее в той теме.
WildLynx вне форума   Ответить с цитированием
Ответ


Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
ошибки при компиляции slon9911 Установка MaNGOS 28 09.06.2011 00:17
Ошибка Git tendy Прочая документация 4 04.05.2011 16:21
Ошибка (ошибки) при компиляции ScriptDev2 lamex Флудильня 44 19.01.2011 13:25
Ошибка компиляции под Mac Os Som Установка MaNGOS 1 09.11.2010 07:43
Ошибка в ДНК Dryg Корзина 3 04.10.2010 09:32


Текущее время: 12:17. Часовой пояс GMT +3.


ru-mangos.ru - Русское сообщество MaNGOS
Главная цель проекта MaNGOS - обучающая, поэтому разрешается использовать исходный код и собранную программу только для образовательных целей.
Вы не можете использовать MaNGOS в коммерческих целях, а также не разрешается устанавливать публичные серверы на базе MaNGOS.
Любое копирование материалов, информации в любом виде без указания источника - форума Ru-MaNGOS будет считаться нарушением авторских прав и нарушением Уголовного Кодекса РФ, ст. 146 ст. 147.
Перевод vBulletin: zCarot