Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2008.09.14;
Скачать: CL | DM;

Вниз

Как исправить ошибки линковки? (С++)   Найти похожие ветки 

 
@!!ex ©   (2008-07-26 09:59) [0]

Есть проект для VC++6.0
Переношу его на VC++2008

Вываливается куча ошибок линковки вида
1>actor.obj : error LNK2019: unresolved external symbol "int __cdecl operator==(class SafePtr<class Behavior>,class Behavior *)" (??8@YAHV?$SafePtr@VBehavior@@@@PAVBehavior@@@Z) referenced in function "public: int __thiscall Actor::checkbehaviordone(class Conditional &)" (?checkbehaviordone@Actor@@QAEHAAVConditional@@@Z)

Я думаю это связано с приведением типов. Видимо в 2008 оно более жесткое.
Вопрос в том, как найти место в коде, из-за которого возникает ошибка?
Руками искать не реально... МОдули под 1000 строк каждый и их много...


 
DrPass ©   (2008-07-26 11:18) [1]

Нет там никакого приведения типов. Написано ж "неопределенный внешний символ". Т.е. скорее всего, ты используешь какую-то функцию/класс, который определен во внешней статической библиотеке, которую ты забыл добавить в проект


 
@!!ex ©   (2008-07-26 14:03) [2]

Скорее всего я ничего не использую, т.к. под 6.0 все собирается...


 
palva ©   (2008-07-26 14:24) [3]

А перекомпиляция объектников у вас происходит? За этим проследили?


 
Alkid   (2008-07-26 16:47) [4]

Вот это:

"referenced in function "public: int __thiscall Actor::checkbehaviordone(class Conditional &)"

Функция int __thiscall Actor::checkbehaviordone(class Conditional &) использует оператор int __cdecl operator==(class SafePtr<class Behavior>,class Behavior *). Эта функция написана тобой? Посмотри, где у тебя там подобное сравнение может быть.


 
@!!ex ©   (2008-07-26 17:15) [5]

Вод вообще не мой.
Сорсы Star Trek: Elite Force2

Указанная функция вполне себе успешно существует в cpp файле:
qboolean Actor::checkbehaviordone( Conditional &condition )
{
return ( behavior == NULL );
}


 
wicked ©   (2008-07-26 17:21) [6]

как же ж тяжело, а?

> Указанная функция вполне себе успешно существует в cpp файле:
>
> qboolean Actor::checkbehaviordone( Conditional &condition
> )
> {
> return ( behavior == NULL );
> }

а оператор int __cdecl operator==(class SafePtr<class Behavior>,class Behavior *) хде обьявлен?

точнее, подозреваю, что нужно смотреть на обьявления классов SafePtr<> и Behavior


 
tesseract ©   (2008-07-26 17:21) [7]


> Скорее всего я ничего не использую, т.к. под 6.0 все собирает


А ты думал заголовки от версии не зависят ? Бывает такое. Устаравшие функции гасят, дабы неповадно было старые версии покупать. 6-я студия у меня такое на windows.h часто выдавала. Т.Е придеться таки перерабатывать проект.



Страницы: 1 вся ветка

Текущий архив: 2008.09.14;
Скачать: CL | DM;

Наверх




Память: 0.46 MB
Время: 0.044 c
15-1217003932
Германн
2008-07-25 20:38
2008.09.14
NASA разместила в Интернете единую базу своих видеоматериалов


2-1217571111
kate
2008-08-01 10:11
2008.09.14
Cохранение выбранного элемента ComboBox как название файла


2-1217489275
savyhinst
2008-07-31 11:27
2008.09.14
Как извлечь кубичезкий корень??


11-1193111866
Ajax
2007-10-23 07:57
2008.09.14
KOL + Turbo Delphi


2-1217634273
demon
2008-08-02 03:44
2008.09.14
Конвертация bmp из ресурсов и иконку





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский