Ru-MaNGOS

Вернуться   Ru-MaNGOS > Флуд > Флудильня

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

Флудильня Разговоры на любые темы.

Мы устаем постоянно работать. Иногда надо где-то немного отдохнуть. Пожалуйста, не надо здесь устраивать бардак.

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
Старый 06.08.2010, 00:20   #1
KiriX
Умный
Старожил
 
Аватар для KiriX
 
Регистрация: 06.03.2010
Сообщений: 886
Сказал(а) спасибо: 698
Поблагодарили 433 раз(а) в 181 сообщениях
Записей в дневнике: 4
KiriX Реально хороший человекKiriX Реально хороший человекKiriX Реально хороший человекKiriX Реально хороший человекKiriX Реально хороший человек
По умолчанию Линковка в VS

Решил тут поэкспериментировать Скучно стало
Захотелось собрать пак патчей от rsa с его же скриптами. Ядро скомпилилось нормально, а вот скрипты... Скомпилировались, но не проходит линковка объектов:
Код:
1>sc_boss_spell_worker.obj : error LNK2001: неразрешенный внешний символ ""class SpellAuraHolder * __cdecl CreateSpellAuraHolder(struct SpellEntry const *,class Unit *,class WorldObject *,class Item *)" (?CreateSpellAuraHolder@@YAPAVSpellAuraHolder@@PBUSpellEntry@@PAVUnit@@PAVWorldObject@@PAVItem@@@Z)"
или (самые простые примеры)
Код:
1>ScriptLoader.obj : error LNK2019: ссылка на неразрешенный внешний символ "void __cdecl AddSC_boss_infinite_corruptor(void)" (?AddSC_boss_infinite_corruptor@@YAXXZ) в функции "void __cdecl AddScripts(void)" (?AddScripts@@YAXXZ)
rsa говорит, что у него на линухе компилится всё без проблем, а VS он не поддерживает и ничего под него не пишет.
С первым примером - вызывается SpellAuraHolder, но этот класс не разрешён. Каким образом и где происходит это самое разрешение.
Уже просто ради собственного интереса и развития интересует
KiriX вне форума   Ответить с цитированием
Старый 06.08.2010, 00:30   #2
LordJZ
Супер-модератор
 
Аватар для LordJZ
 
Регистрация: 07.03.2010
Сообщений: 647
Сказал(а) спасибо: 100
Поблагодарили 252 раз(а) в 123 сообщениях
LordJZ Как самоцвет среди гранитаLordJZ Как самоцвет среди гранитаLordJZ Как самоцвет среди гранита
По умолчанию

Буквально вчера, в рамках тестирования новой проги, подгонял репозиторий rsa на Win.

Рева, правда, старая совсем, где-то в районе 10190
Код:
diff --git a/src/game/SpellAuras.h b/src/game/SpellAuras.h
index d77df82..c6ad856 100644
--- a/src/game/SpellAuras.h
+++ b/src/game/SpellAuras.h
@@ -197,7 +197,7 @@ typedef void(Aura::*pAuraHandler)(bool Apply, bool Real);
 class MANGOS_DLL_SPEC Aura
 {
     friend struct ReapplyAffectedPassiveAurasHelper;
-    friend Aura* CreateAura(SpellEntry const* spellproto, SpellEffectIndex eff, int32 *currentBasePoints, SpellAuraHolder *holder, Unit *target, Unit *caster, Item* castItem);
+    friend MANGOS_DLL_SPEC Aura* CreateAura(SpellEntry const* spellproto, SpellEffectIndex eff, int32 *currentBasePoints, SpellAuraHolder *holder, Unit *target, Unit *caster, Item* castItem);
 
     public:
         //aura handlers
@@ -522,6 +522,6 @@ class MANGOS_DLL_SPEC SingleEnemyTargetAura : public Aura
         uint64 m_casters_target_guid;
 };
 
-Aura* CreateAura(SpellEntry const* spellproto, SpellEffectIndex eff, int32 *currentBasePoints, SpellAuraHolder *holder, Unit *target, Unit *caster = NULL, Item* castItem = NULL);
-SpellAuraHolder* CreateSpellAuraHolder(SpellEntry const* spellproto, Unit *target, WorldObject *caster, Item *castItem = NULL);
+MANGOS_DLL_SPEC Aura* CreateAura(SpellEntry const* spellproto, SpellEffectIndex eff, int32 *currentBasePoints, SpellAuraHolder *holder, Unit *target, Unit *caster = NULL, Item* castItem = NULL);
+MANGOS_DLL_SPEC SpellAuraHolder* CreateSpellAuraHolder(SpellEntry const* spellproto, Unit *target, WorldObject *caster, Item *castItem = NULL);
 #endif
diff --git a/src/game/SpellMgr.h b/src/game/SpellMgr.h
index 40dd69a..8ecc62a 100644
--- a/src/game/SpellMgr.h
+++ b/src/game/SpellMgr.h
@@ -532,7 +532,7 @@ bool IsDiminishingReturnsGroupDurationLimited(DiminishingGroup group);
 DiminishingReturnsType GetDiminishingReturnsGroupType(DiminishingGroup group);
 int32 GetDiminishingReturnsLimitDuration(DiminishingGroup group, SpellEntry const* spellproto);
 
-SpellEntry const* GetSpellEntryByDifficulty(uint32 id, Difficulty difficulty);
+MANGOS_DLL_SPEC SpellEntry const* GetSpellEntryByDifficulty(uint32 id, Difficulty difficulty);
 
 // Spell proc event related declarations (accessed using SpellMgr functions)
 enum ProcFlags
LordJZ вне форума   Ответить с цитированием
Старый 06.08.2010, 00:59   #3
KiriX
Умный
Старожил
 
Аватар для KiriX
 
Регистрация: 06.03.2010
Сообщений: 886
Сказал(а) спасибо: 698
Поблагодарили 433 раз(а) в 181 сообщениях
Записей в дневнике: 4
KiriX Реально хороший человекKiriX Реально хороший человекKiriX Реально хороший человекKiriX Реально хороший человекKiriX Реально хороший человек
По умолчанию

LordJZ, огромное спасибо Я же писал, что прога твоя и вправду полезная
Надо будет всё-таки скачать
KiriX вне форума   Ответить с цитированием
Старый 06.08.2010, 07:21   #4
rsa
Почетный флудер
Старожил
 
Аватар для rsa
 
Регистрация: 08.03.2010
Адрес: Мурманск, Россия
Сообщений: 788
Сказал(а) спасибо: 55
Поблагодарили 333 раз(а) в 151 сообщениях
Записей в дневнике: 1
rsa Как самоцвет среди гранитаrsa Как самоцвет среди гранитаrsa Как самоцвет среди гранитаrsa Как самоцвет среди гранита
По умолчанию

Цитата:
Сообщение от KiriX Посмотреть сообщение
rsa говорит, что у него на линухе компилится всё без проблем, а VS он не поддерживает и ничего под него не пишет.
С первым примером - вызывается SpellAuraHolder, но этот класс не разрешён. Каким образом и где происходит это самое разрешение.
Уже просто ради собственного интереса и развития интересует
только давайте не будем на меня катить бочку. я не "не поддерживаю", а у меня его просто нет (как и виндоуса) и я с ним работать не умею. пару раз на пробу пытался скомпилить в VC10 - все было нормально (когда проект ручками накидал), но запускать студию в qemu - тот еще геморрой...

а что до первой ошибки - просто линкуй статик.
rsa вне форума   Ответить с цитированием
Старый 06.08.2010, 08:27   #5
KiriX
Умный
Старожил
 
Аватар для KiriX
 
Регистрация: 06.03.2010
Сообщений: 886
Сказал(а) спасибо: 698
Поблагодарили 433 раз(а) в 181 сообщениях
Записей в дневнике: 4
KiriX Реально хороший человекKiriX Реально хороший человекKiriX Реально хороший человекKiriX Реально хороший человекKiriX Реально хороший человек
По умолчанию

Цитата:
Сообщение от rsa Посмотреть сообщение
только давайте не будем на меня катить бочку. я не "не поддерживаю", а у меня его просто нет (как и виндоуса) и я с ним работать не умею. пару раз на пробу пытался скомпилить в VC10 - все было нормально (когда проект ручками накидал), но запускать студию в qemu - тот еще геморрой...

а что до первой ошибки - просто линкуй статик.
Я не качу бочку, что ты У тебя нет винды, нет студии = в данном случае равнозначно словам о том, что не поддерживаешь. Согласись - логично. И никто тебя в этом не обвиняет - твоё право (ты меня с каким-то другим админом, наверное, путаешь )
"просто линкуй статик." - клёва - для меня это звучит аналогично "лжгфырпдука" - пример бы - вот Лорд доходчиво объяснил
KiriX вне форума   Ответить с цитированием
Старый 06.08.2010, 09:44   #6
tempura
Forum bot
 
Аватар для tempura
 
Регистрация: 01.02.2010
Адрес: пусто
Сообщений: 841
Сказал(а) спасибо: 286
Поблагодарили 418 раз(а) в 190 сообщениях
Записей в дневнике: 60
tempura отключил(а) отображение уровня репутации
По умолчанию

Цитата:
Сообщение от KiriX Посмотреть сообщение
И никто тебя в этом не обвиняет - твоё право (ты меня с каким-то другим админом, наверное, путаешь )
Когда кто-то любое упоминание о своей работе воспринимает как обвинение (неважно в чем), его лучше сторонкой обходить. А ну как начнет бросаться и кусаться?
__________________
Совершенно безопасен для людей, обладающих хотя бы некоторыми минимальными зачатками интеллекта, и способными строить причинно-следственные цепочки.
tempura вне форума   Ответить с цитированием
Старый 06.08.2010, 11:00   #7
KiriX
Умный
Старожил
 
Аватар для KiriX
 
Регистрация: 06.03.2010
Сообщений: 886
Сказал(а) спасибо: 698
Поблагодарили 433 раз(а) в 181 сообщениях
Записей в дневнике: 4
KiriX Реально хороший человекKiriX Реально хороший человекKiriX Реально хороший человекKiriX Реально хороший человекKiriX Реально хороший человек
По умолчанию

Цитата:
Сообщение от tempura Посмотреть сообщение
Когда кто-то любое упоминание о своей работе воспринимает как обвинение (неважно в чем), его лучше сторонкой обходить. А ну как начнет бросаться и кусаться?
И тут согласен - не стоит всё как обвинение воспринимать
KiriX вне форума   Ответить с цитированием
Старый 06.08.2010, 15:46   #8
KiriX
Умный
Старожил
 
Аватар для KiriX
 
Регистрация: 06.03.2010
Сообщений: 886
Сказал(а) спасибо: 698
Поблагодарили 433 раз(а) в 181 сообщениях
Записей в дневнике: 4
KiriX Реально хороший человекKiriX Реально хороший человекKiriX Реально хороший человекKiriX Реально хороший человекKiriX Реально хороший человек
По умолчанию

Скомпилил... Всё что надо нашёл. Но пришлось отказаться от такого:
в скрипте используется вот что:
Код:
sWorld.GetConf()
Вот как разрешить sWorld я нифига не понял, т.к. он объявляется тут:
Код:
#define sWorld MaNGOS::Singleton<World>::Instance()
KiriX вне форума   Ответить с цитированием
Старый 06.08.2010, 17:50   #9
Mr.Grom
Пользователь
 
Аватар для Mr.Grom
 
Регистрация: 08.03.2010
Сообщений: 43
Сказал(а) спасибо: 1
Поблагодарили 1 раз в 1 сообщении
Mr.Grom На верном пути
По умолчанию

rsa хотел объяснить, что для компиляции в винде надо все пути к файлам и ссылки на файлы прописывать самому ручками.

Работа с библиотеками динамической компоновки (DLL)

Последний раз редактировалось Mr.Grom; 06.08.2010 в 19:45.
Mr.Grom вне форума   Ответить с цитированием
Старый 06.08.2010, 17:52   #10
rsa
Почетный флудер
Старожил
 
Аватар для rsa
 
Регистрация: 08.03.2010
Адрес: Мурманск, Россия
Сообщений: 788
Сказал(а) спасибо: 55
Поблагодарили 333 раз(а) в 151 сообщениях
Записей в дневнике: 1
rsa Как самоцвет среди гранитаrsa Как самоцвет среди гранитаrsa Как самоцвет среди гранитаrsa Как самоцвет среди гранита
По умолчанию

Цитата:
Сообщение от KiriX Посмотреть сообщение
Я не качу бочку, что ты У тебя нет винды, нет студии = в данном случае равнозначно словам о том, что не поддерживаешь. Согласись - логично. И никто тебя в этом не обвиняет - твоё право (ты меня с каким-то другим админом, наверное, путаешь )
"просто линкуй статик." - клёва - для меня это звучит аналогично "лжгфырпдука" - пример бы - вот Лорд доходчиво объяснил
В переводе на "вовжопский" "линкуй статик" означает "скомпилить в 1 exe-файл, без файлов .dll" В студии для этого специальные капы есть, я их даже видел
А вот чтобы слинковать в динамик (маленький .exe и 2 большие .dll), нужны таблицы экспортов, которые заполняются объявлениями что показал Лорд. По умолчанию Владимир те функции не экспортирует.
В линуксях по умолчанию в отдельный модуль линкуются только скрипты, потому-то у меня все и компилируется нормально.
rsa вне форума   Ответить с цитированием
Старый 06.08.2010, 17:53   #11
rsa
Почетный флудер
Старожил
 
Аватар для rsa
 
Регистрация: 08.03.2010
Адрес: Мурманск, Россия
Сообщений: 788
Сказал(а) спасибо: 55
Поблагодарили 333 раз(а) в 151 сообщениях
Записей в дневнике: 1
rsa Как самоцвет среди гранитаrsa Как самоцвет среди гранитаrsa Как самоцвет среди гранитаrsa Как самоцвет среди гранита
По умолчанию

Цитата:
Сообщение от KiriX Посмотреть сообщение
Скомпилил... Всё что надо нашёл. Но пришлось отказаться от такого:
в скрипте используется вот что:
Код:
sWorld.GetConf()
Вот как разрешить sWorld я нифига не понял, т.к. он объявляется тут:
Код:
#define sWorld MaNGOS::Singleton<World>::Instance()
Просто убери те куски, они все равно нифига не работают как хотелось...
rsa вне форума   Ответить с цитированием
Старый 07.08.2010, 00:45   #12
LordJZ
Супер-модератор
 
Аватар для LordJZ
 
Регистрация: 07.03.2010
Сообщений: 647
Сказал(а) спасибо: 100
Поблагодарили 252 раз(а) в 123 сообщениях
LordJZ Как самоцвет среди гранитаLordJZ Как самоцвет среди гранитаLordJZ Как самоцвет среди гранита
По умолчанию

Да, экспортить синглтоны в SD — извращение, имхо, я у себя, когда компилил rsa, тоже убрал все использования sWorld.
LordJZ вне форума   Ответить с цитированием
Старый 07.08.2010, 10:33   #13
KiriX
Умный
Старожил
 
Аватар для KiriX
 
Регистрация: 06.03.2010
Сообщений: 886
Сказал(а) спасибо: 698
Поблагодарили 433 раз(а) в 181 сообщениях
Записей в дневнике: 4
KiriX Реально хороший человекKiriX Реально хороший человекKiriX Реально хороший человекKiriX Реально хороший человекKiriX Реально хороший человек
По умолчанию

Собственно, так я и поступил - закомментил эти куски Но всё равно интересно, как можно разрешить использовать конструкцию типа sWorld.GetConf() в скриптах SD2 - ради собственного развития
KiriX вне форума   Ответить с цитированием
Старый 04.10.2010, 22:20   #14
DiffuSer
Ученый
 
Аватар для DiffuSer
 
Регистрация: 07.03.2010
Сообщений: 131
Сказал(а) спасибо: 9
Поблагодарили 10 раз(а) в 10 сообщениях
DiffuSer На верном пути
Вопрос Ошибки при компиляции

Код:
Ошибка	1463	error LNK2001: неразрешенный внешний символ ""private: static bool MaNGOS::Singleton<class World,class MaNGOS::SingleThreaded<class World>,class MaNGOS::OperatorNew<class World>,class MaNGOS::ObjectLifeTime<class World> >::si_destroyed" (?si_destroyed@?$Singleton@VWorld@@V?$SingleThreaded@VWorld@@@MaNGOS@@V?$OperatorNew@VWorld@@@3@V?$ObjectLifeTime@VWorld@@@3@@MaNGOS@@0_NA)"	instance_trial_of_the_champion.obj	ScriptDev2
Код:
Ошибка	1469	error LNK2019: ссылка на неразрешенный внешний символ "public: __cdecl World::~World(void)" (??1World@@QEAA@XZ) в функции "public: void * __cdecl World::`scalar deleting destructor'(unsigned int)" (??_GWorld@@QEAAPEAXI@Z)	instance_trial_of_the_champion.obj	ScriptDev2
Код:
Ошибка	1470	error LNK2001: неразрешенный внешний символ ""public: __cdecl World::~World(void)" (??1World@@QEAA@XZ)"	instance_halls_of_reflection.obj	ScriptDev2
Не могу побороть ошибки при компиляции скриптов от RSA. Знаю, что где-то нужно добавить MANGOS_DLL_SPEC, а где - не знаю. Поиск не дал результатов, в ObjectAccessor класса World нету. Подскажите, плз.
DiffuSer вне форума   Ответить с цитированием
Старый 04.10.2010, 22:37   #15
NeatElves
YTDB Dev
 
Аватар для NeatElves
 
Регистрация: 06.03.2010
Сообщений: 259
Сказал(а) спасибо: 28
Поблагодарили 280 раз(а) в 136 сообщениях
NeatElves Как самоцвет среди гранитаNeatElves Как самоцвет среди гранитаNeatElves Как самоцвет среди гранита
По умолчанию

Оно ? http://github.com/rsa/mangos/commit/...3b93924808d536
NeatElves вне форума   Ответить с цитированием
Старый 04.10.2010, 22:46   #16
LordJZ
Супер-модератор
 
Аватар для LordJZ
 
Регистрация: 07.03.2010
Сообщений: 647
Сказал(а) спасибо: 100
Поблагодарили 252 раз(а) в 123 сообщениях
LordJZ Как самоцвет среди гранитаLordJZ Как самоцвет среди гранитаLordJZ Как самоцвет среди гранита
По умолчанию

И все-таки, у меня возникает такое чувство, что поиском кроме меня пользоваться умеет малая часть сообщества. Поэтому, закрывая уже четвертый топик на эту тему, я выложу-таки ссылку.

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

Да блин! Это уже даже давно самим rsa поправлено! Старые исходники используете. Может пора обновиться?
KiriX
LordJZ вне форума   Ответить с цитированием
Старый 05.10.2010, 08:34   #17
tempura
Forum bot
 
Аватар для tempura
 
Регистрация: 01.02.2010
Адрес: пусто
Сообщений: 841
Сказал(а) спасибо: 286
Поблагодарили 418 раз(а) в 190 сообщениях
Записей в дневнике: 60
tempura отключил(а) отображение уровня репутации
По умолчанию

Цитата:
Сообщение от LordJZ Посмотреть сообщение
И все-таки, у меня возникает такое чувство, что поиском кроме меня пользоваться умеет малая часть сообщества. Поэтому, закрывая уже четвертый топик на эту тему, я выложу-таки ссылку.

http://ru-mangos.ru/showthread.php?t=2043
Потому что клеить темы надо, а не закрывать.
__________________
Совершенно безопасен для людей, обладающих хотя бы некоторыми минимальными зачатками интеллекта, и способными строить причинно-следственные цепочки.
tempura вне форума   Ответить с цитированием
Старый 05.10.2010, 16:24   #18
DiffuSer
Ученый
 
Аватар для DiffuSer
 
Регистрация: 07.03.2010
Сообщений: 131
Сказал(а) спасибо: 9
Поблагодарили 10 раз(а) в 10 сообщениях
DiffuSer На верном пути
По умолчанию

Так никто и не сказал, как разрешить конфликт с sWorld, не удаляя строки.
DiffuSer вне форума   Ответить с цитированием
Старый 05.10.2010, 16:31   #19
rsa
Почетный флудер
Старожил
 
Аватар для rsa
 
Регистрация: 08.03.2010
Адрес: Мурманск, Россия
Сообщений: 788
Сказал(а) спасибо: 55
Поблагодарили 333 раз(а) в 151 сообщениях
Записей в дневнике: 1
rsa Как самоцвет среди гранитаrsa Как самоцвет среди гранитаrsa Как самоцвет среди гранитаrsa Как самоцвет среди гранита
По умолчанию

Экспортировать синглетон в скрипты. Или слинковать статически. Но проще все же удалить тем более что этот эксперимент все равно пока не работает...
rsa вне форума   Ответить с цитированием
Старый 13.10.2010, 09:53   #20
trtw89
Новичок
 
Регистрация: 07.03.2010
Сообщений: 19
Сказал(а) спасибо: 9
Поблагодарили 4 раз(а) в 3 сообщениях
trtw89 На верном пути
По умолчанию

Огромное спасибо Kirix за его работу
исходники rsa - ядро собираеться под вин х64 замечательно, благодаря исправлениям Kirix ошибок при компиле нет, но уже в самом конце при компоновке под х64 пишет:

дайте подсказку к способу решения данной проблемы

Последний раз редактировалось trtw89; 13.10.2010 в 09:56.
trtw89 вне форума   Ответить с цитированием
Старый 13.10.2010, 15:40   #21
Limpnau
Новичок
 
Аватар для Limpnau
 
Регистрация: 07.03.2010
Сообщений: 29
Сказал(а) спасибо: 135
Поблагодарили 9 раз(а) в 4 сообщениях
Limpnau На верном пути
По умолчанию

trtw89, полагаю просто воспользоватся ответом rsa и удалить данный эксперимент, http://paste2.org/p/1035144
Limpnau вне форума   Ответить с цитированием
Старый 13.10.2010, 16:44   #22
madbroths
Новичок
 
Регистрация: 27.03.2010
Сообщений: 14
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
madbroths На верном пути
По умолчанию

Собственно воспользовался "патчем", но теперь вылетают следующие ошибки.
Код:
1>boss_the_lich_king.obj : error LNK2001: неразрешенный внешний символ ""private: void __cdecl BSWScriptedAI::_resetTimer(unsigned char)" (?_resetTimer@BSWScriptedAI@@AEAAXE@Z)"
1>boss_valithria_dreamwalker.obj : error LNK2001: неразрешенный внешний символ ""private: void __cdecl BSWScriptedAI::_resetTimer(unsigned char)" (?_resetTimer@BSWScriptedAI@@AEAAXE@Z)"
1>boss_bronjahm.obj : error LNK2001: неразрешенный внешний символ ""private: void __cdecl BSWScriptedAI::_resetTimer(unsigned char)" (?_resetTimer@BSWScriptedAI@@AEAAXE@Z)"
1>boss_lord_marrowgar.obj : error LNK2001: неразрешенный внешний символ ""private: void __cdecl BSWScriptedAI::_resetTimer(unsigned char)" (?_resetTimer@BSWScriptedAI@@AEAAXE@Z)"
1>boss_professor_putricide.obj : error LNK2001: неразрешенный внешний символ ""private: void __cdecl BSWScriptedAI::_resetTimer(unsigned char)" (?_resetTimer@BSWScriptedAI@@AEAAXE@Z)"
1>boss_rotface.obj : error LNK2001: неразрешенный внешний символ ""private: void __cdecl BSWScriptedAI::_resetTimer(unsigned char)" (?_resetTimer@BSWScriptedAI@@AEAAXE@Z)"
1>boss_sindragosa.obj : error LNK2001: неразрешенный внешний символ ""private: void __cdecl BSWScriptedAI::_resetTimer(unsigned char)" (?_resetTimer@BSWScriptedAI@@AEAAXE@Z)"
1>boss_blood_queen_lanathel.obj : error LNK2001: неразрешенный внешний символ ""private: void __cdecl BSWScriptedAI::_resetTimer(unsigned char)" (?_resetTimer@BSWScriptedAI@@AEAAXE@Z)"
1>boss_deathbringer_saurfang.obj : error LNK2001: неразрешенный внешний символ ""private: void __cdecl BSWScriptedAI::_resetTimer(unsigned char)" (?_resetTimer@BSWScriptedAI@@AEAAXE@Z)"
1>boss_festergut.obj : error LNK2019: ссылка на неразрешенный внешний символ "private: void __cdecl BSWScriptedAI::_resetTimer(unsigned char)" (?_resetTimer@BSWScriptedAI@@AEAAXE@Z) в функции "public: void __cdecl std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> >::_Xlen(void)const " (?_Xlen@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QEBAXXZ)
1>boss_lady_deathwhisper.obj : error LNK2001: неразрешенный внешний символ ""private: void __cdecl BSWScriptedAI::_resetTimer(unsigned char)" (?_resetTimer@BSWScriptedAI@@AEAAXE@Z)"
1>boss_zarithian.obj : error LNK2001: неразрешенный внешний символ ""private: void __cdecl BSWScriptedAI::_resetTimer(unsigned char)" (?_resetTimer@BSWScriptedAI@@AEAAXE@Z)"
1>boss_faction_champions.obj : error LNK2001: неразрешенный внешний символ ""private: void __cdecl BSWScriptedAI::_resetTimer(unsigned char)" (?_resetTimer@BSWScriptedAI@@AEAAXE@Z)"
1>boss_northrend_beasts.obj : error LNK2001: неразрешенный внешний символ ""private: void __cdecl BSWScriptedAI::_resetTimer(unsigned char)" (?_resetTimer@BSWScriptedAI@@AEAAXE@Z)"
1>blood_prince_council.obj : error LNK2001: неразрешенный внешний символ ""private: void __cdecl BSWScriptedAI::_resetTimer(unsigned char)" (?_resetTimer@BSWScriptedAI@@AEAAXE@Z)"
1>icecrown_spire.obj : error LNK2001: неразрешенный внешний символ ""private: void __cdecl BSWScriptedAI::_resetTimer(unsigned char)" (?_resetTimer@BSWScriptedAI@@AEAAXE@Z)"
1>boss_baltharus.obj : error LNK2001: неразрешенный внешний символ ""private: void __cdecl BSWScriptedAI::_resetTimer(unsigned char)" (?_resetTimer@BSWScriptedAI@@AEAAXE@Z)"
1>boss_halion.obj : error LNK2001: неразрешенный внешний символ ""private: void __cdecl BSWScriptedAI::_resetTimer(unsigned char)" (?_resetTimer@BSWScriptedAI@@AEAAXE@Z)"
1>boss_ragefire.obj : error LNK2001: неразрешенный внешний символ ""private: void __cdecl BSWScriptedAI::_resetTimer(unsigned char)" (?_resetTimer@BSWScriptedAI@@AEAAXE@Z)"
1>boss_valithria_dreamwalker.obj : error LNK2001: неразрешенный внешний символ ""public: virtual __cdecl BSWScriptedAI::~BSWScriptedAI(void)" (??1BSWScriptedAI@@UEAA@XZ)"
1>boss_bronjahm.obj : error LNK2001: неразрешенный внешний символ ""public: virtual __cdecl BSWScriptedAI::~BSWScriptedAI(void)" (??1BSWScriptedAI@@UEAA@XZ)"
1>boss_professor_putricide.obj : error LNK2001: неразрешенный внешний символ ""public: virtual __cdecl BSWScriptedAI::~BSWScriptedAI(void)" (??1BSWScriptedAI@@UEAA@XZ)"
1>boss_rotface.obj : error LNK2001: неразрешенный внешний символ ""public: virtual __cdecl BSWScriptedAI::~BSWScriptedAI(void)" (??1BSWScriptedAI@@UEAA@XZ)"
1>boss_sindragosa.obj : error LNK2001: неразрешенный внешний символ ""public: virtual __cdecl BSWScriptedAI::~BSWScriptedAI(void)" (??1BSWScriptedAI@@UEAA@XZ)"

и так далее
madbroths вне форума   Ответить с цитированием
Старый 13.10.2010, 17:07   #23
rsa
Почетный флудер
Старожил
 
Аватар для rsa
 
Регистрация: 08.03.2010
Адрес: Мурманск, Россия
Сообщений: 788
Сказал(а) спасибо: 55
Поблагодарили 333 раз(а) в 151 сообщениях
Записей в дневнике: 1
rsa Как самоцвет среди гранитаrsa Как самоцвет среди гранитаrsa Как самоцвет среди гранитаrsa Как самоцвет среди гранита
По умолчанию

А с этим - в морг. Имплементация скриптов методом копирования по F5 в какой-то левый SD2 в данном случае не пройдет.
rsa вне форума   Ответить с цитированием
Старый 13.10.2010, 18:13   #24
trtw89
Новичок
 
Регистрация: 07.03.2010
Сообщений: 19
Сказал(а) спасибо: 9
Поблагодарили 4 раз(а) в 3 сообщениях
trtw89 На верном пути
По умолчанию

пачкаю
Код:
$ patch -p1 < rsa.patch
patching file `scripts/northrend/icecrown_citadel/frozen_halls/halls_of_reflecti
on/instance_halls_of_reflection.cpp'
Hunk #1 succeeded at 27 with fuzz 2.
Hunk #2 FAILED at 108.
1 out of 2 hunks FAILED -- saving rejects to scripts/northrend/icecrown_citadel/
frozen_halls/halls_of_reflection/instance_halls_of_reflection.cpp.rej
patching file `scripts/northrend/crusaders_coliseum/trial_of_the_champion/instan
ce_trial_of_the_champion.cpp'
Hunk #1 FAILED at 25.
Hunk #2 FAILED at 104.
2 out of 2 hunks FAILED -- saving rejects to scripts/northrend/crusaders_coliseu
m/trial_of_the_champion/instance_trial_of_the_champion.cpp.rej
при компиле ошибки соответсвенно на эти файлы, но не такие как привел madbroths
можно еще подсказку?

Последний раз редактировалось trtw89; 13.10.2010 в 18:26.
trtw89 вне форума   Ответить с цитированием
Старый 13.10.2010, 18:39   #25
madbroths
Новичок
 
Регистрация: 27.03.2010
Сообщений: 14
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
madbroths На верном пути
По умолчанию

Ну вообще, я компилирую sd2 от rsa.
trtw89, пару файлов можно и руками подправить
Понимаю, что ошибки вылетают из-за моей криворукости, но

Последний раз редактировалось madbroths; 13.10.2010 в 18:54.
madbroths вне форума   Ответить с цитированием
Старый 13.10.2010, 20:05   #26
rsa
Почетный флудер
Старожил
 
Аватар для rsa
 
Регистрация: 08.03.2010
Адрес: Мурманск, Россия
Сообщений: 788
Сказал(а) спасибо: 55
Поблагодарили 333 раз(а) в 151 сообщениях
Записей в дневнике: 1
rsa Как самоцвет среди гранитаrsa Как самоцвет среди гранитаrsa Как самоцвет среди гранитаrsa Как самоцвет среди гранита
По умолчанию

trtw89, задайте этот вопрос тому кто сделал rsa.patch
я такого не делал никогда и не буду. git pull и ваши волосы...

madbroths, не надо вешать лапшу на уши, это абсолютно точно не мой SD2. скорее всего вы пытаетесь привинтить мои скрипты на SD2 от Карателя. попробуйте сделать git clone и увидите, что таких ошибок у вас не будет.
rsa вне форума   Ответить с цитированием
Старый 13.10.2010, 20:21   #27
madbroths
Новичок
 
Регистрация: 27.03.2010
Сообщений: 14
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
madbroths На верном пути
По умолчанию

Ок, rsa. Спорить бесполезно - попробую еще раз взять ТОЧНО ваши скрипты, и перекомпилировать.

Сегодня пробовал еще раз перекомпилировать скрипты RSA, но опять тот же ворох ошибок. rsa - скачивал последний коммит.

Последний раз редактировалось NeatElves; 30.11.2010 в 16:39.
madbroths вне форума   Ответить с цитированием
Старый 14.10.2010, 13:53   #28
trtw89
Новичок
 
Регистрация: 07.03.2010
Сообщений: 19
Сказал(а) спасибо: 9
Поблагодарили 4 раз(а) в 3 сообщениях
trtw89 На верном пути
По умолчанию

чуть более подробно:
1. исходники rsa
2. ядро win x64 собираеться без проблем
3. в сд2 при компиле выскакивают ошибки (3 босса из ульды и boss_loken) - исправляю заменой этих файлов из чистого сд2.
4. компилю уже с 4 этими заменеными файлами и уже ошибки в самом конце при компоновке длл. (постил выше)
trtw89 вне форума   Ответить с цитированием
Старый 14.10.2010, 14:49   #29
rsa
Почетный флудер
Старожил
 
Аватар для rsa
 
Регистрация: 08.03.2010
Адрес: Мурманск, Россия
Сообщений: 788
Сказал(а) спасибо: 55
Поблагодарили 333 раз(а) в 151 сообщениях
Записей в дневнике: 1
rsa Как самоцвет среди гранитаrsa Как самоцвет среди гранитаrsa Как самоцвет среди гранитаrsa Как самоцвет среди гранита
По умолчанию

Цитата:
Сообщение от trtw89 Посмотреть сообщение
чуть более подробно:
3. в сд2 при компиле выскакивают ошибки (3 босса из ульды и boss_loken) - исправляю заменой этих файлов из чистого сд2.
нет слов... а это ничего, что в чистом ядре они по 2кб, а у меня по 50-100кб? может проще взять чистый SD2 и не мучаться?
правка ошибки из поста выше описана еще выше.
rsa вне форума   Ответить с цитированием
Старый 14.10.2010, 15:50   #30
madbroths
Новичок
 
Регистрация: 27.03.2010
Сообщений: 14
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
madbroths На верном пути
По умолчанию

rsa какбы намекает нам, о том что нужно нафиг выкинуть винду и визуал студио и компилировать в линухе
madbroths вне форума   Ответить с цитированием
Старый 14.10.2010, 16:02   #31
DiffuSer
Ученый
 
Аватар для DiffuSer
 
Регистрация: 07.03.2010
Сообщений: 131
Сказал(а) спасибо: 9
Поблагодарили 10 раз(а) в 10 сообщениях
DiffuSer На верном пути
По умолчанию

Нет, он намекает, что ошибка, связанная с локеном, исправляется добавлением double float, а ошибки с sWorld - удалением двух строк в двух файлах триала, которые получают данные из конфига сервера.
DiffuSer вне форума   Ответить с цитированием
Старый 14.10.2010, 16:04   #32
madbroths
Новичок
 
Регистрация: 27.03.2010
Сообщений: 14
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
madbroths На верном пути
По умолчанию

Вот пост, в котором исправляет человек ошибку с локеном

Ага! Наконец то скомпилировал без ошибок. Суть проблемы была в следующем - я не добавил файлы в проект в фильтр base.
RSA, ты не против если я создам форк твоих скриптов и подгоню их под визуал студио?

Последний раз редактировалось NeatElves; 14.10.2010 в 19:55.
madbroths вне форума   Ответить с цитированием
Старый 29.11.2010, 20:58   #33
zamalaev
Гость
 
Сообщений: n/a
По умолчанию

сообственно все ошибки при компили под винду ScriptDev2 с форка Rsa исправил столкнулся с затруднением я просто не спец особо но:
PHP код:
Ошибка    1    error LNK2019ссылка на неразрешенный внешний символ "void __cdecl AddSC_oculus(void)" (?AddSC_oculus@@YAXXZв функции "void __cdecl AddScripts(void)" (?AddScripts@@YAXXZ)    ScriptLoader.obj 
исправить то я знаю как ее вот тока файлика instance_oculus.cpp найти не могу мож он и не нужен а где то еще исправляется?
  Ответить с цитированием Полученное нарушение
Старый 30.11.2010, 00:12   #34
Sid
Ученый
 
Аватар для Sid
 
Регистрация: 02.04.2010
Сообщений: 237
Сказал(а) спасибо: 41
Поблагодарили 99 раз(а) в 44 сообщениях
Sid Скоро придёт к известностиSid Скоро придёт к известности
По умолчанию

Скорей всего void AddSC_oculus(); определен в загрузчике, но его нет на самом деле в исходниках. Закоментируй его в ScriptLoader.cpp или поищи в исходниках, если хочешь знать точнее.
Sid вне форума   Ответить с цитированием
Старый 30.11.2010, 11:41   #35
Warlord123
Пользователь
 
Регистрация: 09.03.2010
Сообщений: 37
Сказал(а) спасибо: 4
Поблагодарили 63 раз(а) в 21 сообщениях
Warlord123 Скоро придёт к известности
По умолчанию

Все в исходниках есть . Добавьте файл oculus.cpp в проект.
Warlord123 вне форума   Ответить с цитированием
Старый 30.11.2010, 16:34   #36
zamalaev
Гость
 
Сообщений: n/a
По умолчанию

да я на все плюнул и собрал проэкт по новой ваще не каких проблем нет Rsa спасибо за твои работы
  Ответить с цитированием Полученное нарушение
Старый 10.12.2010, 12:53   #37
Slavich
Гость
 
Сообщений: n/a
По умолчанию

Доброе время суток,

Не знал где отписать, и вроде в теме нашел что пробовали компилить исходники от rsa
Сильно не пинайте я начинающий
1 исходники от rsa (10.12.2010)
2 пробовал VS 2008 и VS2010

Ядро компилится в порядке без каких либо проблем, но вот со скриптами:
хотя есть несколько предупреждений но они не столь важны:
Код:
..\..\src\game\Level3.cpp(4794) : warning C4018: '>' : signed/unsigned mismatch
..\..\src\game\Level3.cpp(4842) : warning C4018: '>' : signed/unsigned mismatch

..\..\src\game\Pet.cpp(3153) : warning C4018: '>' : signed/unsigned mismatch

..\..\src\game\AntiCheat.cpp(355) : warning C4018: '>' : signed/unsigned mismatch
..\mangos\src\game\anticheat.cpp(722) : warning C4715: 'AntiCheat::CheckSpellOndeath' : not all control paths return a value
1 попытка компилирования
предупреждение:
Код:
..\scripts\northrend\icecrown_citadel\frozen_halls\forge_of_souls\instance_forge_of_souls.cpp(77) : warning C4060: switch statement contains no 'case' or 'default' labels

..\scripts\northrend\icecrown_citadel\frozen_halls\halls_of_reflection\halls_of_reflection.cpp(955) : warning C4018: '<=' : signed/unsigned mismatch

..\scripts\northrend\icecrown_citadel\frozen_halls\pit_of_saron\boss_forgemaster_gafrost.cpp(149) : warning C4305: 'argument' : truncation from 'double' to 'float'
..\scripts\northrend\icecrown_citadel\frozen_halls\pit_of_saron\boss_forgemaster_gafrost.cpp(149) : warning C4305: 'argument' : truncation from 'double' to 'float'
..\scripts\northrend\icecrown_citadel\frozen_halls\pit_of_saron\boss_forgemaster_gafrost.cpp(149) : warning C4305: 'argument' : truncation from 'double' to 'float'
..\scripts\northrend\icecrown_citadel\frozen_halls\pit_of_saron\boss_forgemaster_gafrost.cpp(159) : warning C4305: 'argument' : truncation from 'double' to 'float'
..\scripts\northrend\icecrown_citadel\frozen_halls\pit_of_saron\boss_forgemaster_gafrost.cpp(159) : warning C4305: 'argument' : truncation from 'double' to 'float'
..\scripts\northrend\icecrown_citadel\frozen_halls\pit_of_saron\boss_forgemaster_gafrost.cpp(159) : warning C4305: 'argument' : truncation from 'double' to 'float'

..\scripts\northrend\crusaders_coliseum\trial_of_the_champion\boss_grand_champions.cpp(554) : warning C4305: 'argument' : truncation from 'double' to 'float'
..\scripts\northrend\crusaders_coliseum\trial_of_the_champion\boss_grand_champions.cpp(558) : warning C4305: 'argument' : truncation from 'double' to 'float'

..\mangos\src\bindings\scriptdev2\scripts\northrend\ulduar\ulduar\instance_ulduar.cpp(1093) : warning C4715: 'instance_ulduar::CheckConditionCriteriaMeet' : not all control paths return a value

..\scripts\eastern_kingdoms\scarlet_enclave\ebon_hold.cpp(1209) : warning C4018: '<' : signed/unsigned mismatch
..\scripts\eastern_kingdoms\scarlet_enclave\ebon_hold.cpp(1224) : warning C4018: '<' : signed/unsigned mismatch
ошибки:
Код:
c1xx : fatal error C1083: Cannot open source file: '..\scripts\northrend\ulduar\ulduar\boss_xt_002.cpp': No such file or directory

c1xx : fatal error C1083: Cannot open source file: '..\scripts\northrend\ulduar\ulduar\boss_general_vezax.cpp': No such file or directory

c1xx : fatal error C1083: Cannot open source file: '..\scripts\northrend\ulduar\ulduar\boss_flame_leviathan.cpp': No such file or directory

c1xx : fatal error C1083: Cannot open source file: '..\scripts\northrend\ulduar\ulduar\assembly_of_iron.cpp': No such file or directory

..\scripts\northrend\ulduar\halls_of_lightning\boss_loken.cpp(147) : error C3861: 'round': identifier not found
исправление ошибок:
первые 3 ошибок исправляются 2 способами:
1 способ заходим в ..\scripts\northrend\ulduar\ulduar\ и видим что они вроде присутствуют но переименованы, кроме assembly_of_iron.cpp:
boss_xt_002.cpp -> boss_xt002.cpp
boss_general_vezax.cpp -> boss_vezax.cpp
boss_flame_leviathan.cpp -> boss_leviathan.cpp

assembly_of_iron.cpp вообще нету

2 способ заходим в фаил 90ScriptDev2.vcproj и находим вот эти строчки
Код:
<File
RelativePath="..\scripts\northrend\ulduar\ulduar\assembly_of_iron.cpp"
>
</File>
*******************************************************
<File
RelativePath="..\scripts\northrend\ulduar\ulduar\boss_flame_leviathan.cpp"
>
</File>
*******************************************************
<File
RelativePath="..\scripts\northrend\ulduar\ulduar\boss_general_vezax.cpp"
>
</File>
*******************************************************
<File
RelativePath="..\scripts\northrend\ulduar\ulduar\boss_xt_002.cpp"
>
</File>
исправление:
Код:
<File
RelativePath="..\scripts\northrend\ulduar\ulduar\assembly_of_iron.cpp"
>
</File> - удаляем
*******************************************************
<File
RelativePath="..\scripts\northrend\ulduar\ulduar\boss_leviathan.cpp" - переименовываем 
>
</File> - 
*******************************************************
<File
RelativePath="..\scripts\northrend\ulduar\ulduar\boss_vezax.cpp" - переименовываем 
>
</File>
*******************************************************
<File
RelativePath="..\scripts\northrend\ulduar\ulduar\boss_xt002.cpp" - переименовываем 
>
</File>
последняя ошибка:
Код:
..\scripts\northrend\ulduar\halls_of_lightning\boss_loken.cpp(147) : error C3861: 'round': identifier not found
исправляет вот это Murderer
Код:
	double round(double value) {
		return floor(value + 0.5);
		}
ну вроде все, начинаем снова компилить, попытка номер 2
вот тут и не знаю что делать:
Код:
   Creating library ..\..\..\..\bin\win32_release/mangosscript.lib and object ..\..\..\..\bin\win32_release/mangosscript.exp
ebon_hold.obj : error LNK2019: unresolved external symbol "public: static class Player * __cdecl ObjectAccessor::FindPlayer(class ObjectGuid)" (?FindPlayer@ObjectAccessor@@SAPAVPlayer@@VObjectGuid@@@Z) referenced in function "public: virtual void __thiscall npc_eye_of_acherusAI::JustDied(class Unit *)" (?JustDied@npc_eye_of_acherusAI@@UAEXPAVUnit@@@Z)
instance_trial_of_the_champion.obj : error LNK2001: unresolved external symbol "private: static bool MaNGOS::Singleton<class World,class MaNGOS::SingleThreaded<class World>,class MaNGOS::OperatorNew<class World>,class MaNGOS::ObjectLifeTime<class World> >::si_destroyed" (?si_destroyed@?$Singleton@VWorld@@V?$SingleThreaded@VWorld@@@MaNGOS@@V?$OperatorNew@VWorld@@@3@V?$ObjectLifeTime@VWorld@@@3@@MaNGOS@@0_NA)
instance_trial_of_the_champion.obj : error LNK2001: unresolved external symbol "private: static class World * MaNGOS::Singleton<class World,class MaNGOS::SingleThreaded<class World>,class MaNGOS::OperatorNew<class World>,class MaNGOS::ObjectLifeTime<class World> >::si_instance" (?si_instance@?$Singleton@VWorld@@V?$SingleThreaded@VWorld@@@MaNGOS@@V?$OperatorNew@VWorld@@@3@V?$ObjectLifeTime@VWorld@@@3@@MaNGOS@@0PAVWorld@@A)
instance_trial_of_the_champion.obj : error LNK2019: unresolved external symbol "public: __thiscall World::World(void)" (??0World@@QAE@XZ) referenced in function "public: static class World * __cdecl MaNGOS::OperatorNew<class World>::Create(void)" (?Create@?$OperatorNew@VWorld@@@MaNGOS@@SAPAVWorld@@XZ)
instance_trial_of_the_champion.obj : error LNK2019: unresolved external symbol "public: __thiscall World::~World(void)" (??1World@@QAE@XZ) referenced in function "public: void * __thiscall World::`scalar deleting destructor'(unsigned int)" (??_GWorld@@QAEPAXI@Z)
ScriptLoader.obj : error LNK2019: unresolved external symbol "void __cdecl AddSC_oculus(void)" (?AddSC_oculus@@YAXXZ) referenced in function "void __cdecl AddScripts(void)" (?AddScripts@@YAXXZ)
..\..\..\..\bin\win32_release/mangosscript.dll : fatal error LNK1120: 6 unresolved externals
Build log was saved at "file://e:\mangos\src\bindings\scriptdev2\VC90\ScriptDev2__Win32_Release\BuildLog.htm"
ScriptDev2 - 7 error(s), 0 warning(s)
========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped ==========
зашел к rsa, у кого то уже подобная ошибка вышла, Venom писал ...

может кто что подскажет где капать и даст совет

Последний раз редактировалось Slavich; 10.12.2010 в 13:02.
  Ответить с цитированием
Старый 10.12.2010, 13:42   #38
zamalaev
Гость
 
Сообщений: n/a
По умолчанию

вот же тут написан ответ читаейте внимательнее форум http://paste2.org/p/1035144
  Ответить с цитированием
Старый 10.12.2010, 13:43   #39
Slavich
Гость
 
Сообщений: n/a
По умолчанию

Цитата:
Сообщение от zamalaev Посмотреть сообщение
вот же тут написан ответ читаейте внимательнее форум http://paste2.org/p/1035144
вроде вот есть решение, увидел после ответ:
http://paste2.org/p/1133470

но все же спасибо

http://paste2.org/p/1133470 правки помогли исправит проблему

Последний раз редактировалось Slavich; 10.12.2010 в 14:51.
  Ответить с цитированием
Ответ


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

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



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


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