Russian Qt Forum
Май 03, 2024, 21:33 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: [1]   Вниз
  Печать  
Автор Тема: QT 3.3.3 build error LNK2001  (Прочитано 9775 раз)
сега
Гость
« : Апрель 16, 2005, 16:24 »

Почему возникает следующая ошибка при установке под MS VS C++ 6.0 sp 5, w2k sp4 (и XP sp 1 тоже) QT3.3.3commercial и как ее исправить?

Код:
main.obj : error LNK2001: unresolved external symbol "void __cdecl qInitImages_designercore(void)" (?qInitImages_designercore@@YAXXZ)
designercore.lib(mainwindow.obj) : error LNK2001: unresolved external symbol "void __cdecl qInitImages_designercore(void)" (?qInitImages_designercore@@YAXXZ)
C:\Qt\3.3.3\bin\designer.exe : fatal error LNK1120: 1 unresolved externals


Функция qInitImages_designercore присутствует в исходниках только в двух файлах -

Qt\3.3.3\tools\designer\app\main.cpp
Qt\3.3.3\tools\designer\designermainwindow.cpp

в следующем виде:
Код:

external void qInitImages_designercore();
qInitImages_designercore();


ps. один раз поставилось нормально... потом была переустановка виндов и начался этот глюк... (причем одновременно на различных компах переставлялся виндовс и перестала билдиться QT)...
Записан
Admin
Administrator
Джедай : наставник для всех
*****
Offline Offline

Сообщений: 1988



Просмотр профиля
« Ответ #1 : Апрель 16, 2005, 22:14 »

была похожая ошибка

попробуй переставить VC полностью

и можно еще 6 сервис пак накатить
несобирался именно дизайнер
Записан
сега
Гость
« Ответ #2 : Апрель 18, 2005, 14:18 »

Переустановил VS sp6 - не помогло... есть есче идеи?
Где вообще определена эта функция?
Записан
MaxWin
Гость
« Ответ #3 : Апрель 18, 2005, 16:05 »

Все именно в такой конфигурации как описано.
Работает без ошибок.
Была ошибка когда небыло сервиспака для VC6.  И прикол именно в был в самом линкере.  
Совет был правильный - глюк где-то в VC6.
Записан
MaxWin
Гость
« Ответ #4 : Апрель 18, 2005, 16:16 »

Где определена функция можно найти поиском - исходники под рукой. Улыбающийся
Но только наврятли это поможет. Все должно собираться без ошибок.
Записан
Hellenna
Гость
« Ответ #5 : Апрель 18, 2005, 16:25 »

Функция реализована в Qt\3.3.3\tools\designer\qmake_image_collection.cpp следующем виде
Код:
void qInitImages_designercore()
{
    if ( !factory ) {
factory = new MimeSourceFactory_designercore;
QMimeSourceFactory::defaultFactory()->addFactory( factory );
    }
}

Попробуй вместо extern использовать простой прототип.
т.е. создаешь файл qmake_image_collection.h:
Код:
#ifndef QMAKE_IMAGE_COLLECTION_H
#ifndef QMAKE_IMAGE_COLLECTION_H
void qInitImages_designercore();
#endif

инклюдишь его в:
Qt\3.3.3\tools\designer\app\main.cpp
Qt\3.3.3\tools\designer\designermainwindow.cpp
Qt\3.3.3\tools\designer\qmake_image_collection.cpp,
 строчку из файлов:
Код:
external void qInitImages_designercore(); 

убираешь...
Сама не пробовала, т.к. нет возможности собирать с VC.
Интерестно, получится или нет...
:roll:
Записан
сега
Гость
« Ответ #6 : Апрель 19, 2005, 19:20 »

Теперь понятно почему я реализацию не мог найти...
Файл Qt\3.3.3\tools\designer\qmake_image_collection.cpp генерируется в процессе сборки... У меня он получается пустым почему-то (содержит только заголовочные файлы)...

Причину вижу в следующем:

имаги имеют расширение .png, а в логе сборки читаем:

Код:

...
Creating makefiles in src...
...
For C:\Qt\3.3.3\plugins\src\codecs\jp\jp.pro
Project file not generated because all requirements not met:
!bigcodecs
    For C:\Qt\3.3.3\plugins\src\codecs\kr\kr.pro
Project file not generated because all requirements not met:
!bigcodecs
    For C:\Qt\3.3.3\plugins\src\codecs\tw\tw.pro
Project file not generated because all requirements not met:
!bigcodecs
    For C:\Qt\3.3.3\plugins\src\imageformats\imageformats.pro
Project file not generated because all requirements not met:
!bigcodecs
    For C:\Qt\3.3.3\plugins\src\imageformats\jpeg\jpeg.pro
For C:\Qt\3.3.3\plugins\src\imageformats\mng\mng.pro
Project file not generated because all requirements not met:
!jpeg
    For C:\Qt\3.3.3\plugins\src\imageformats\png\png.pro
For C:\Qt\3.3.3\plugins\src\sqldrivers\db2\db2.pro
Project file not generated because all requirements not met:
!png


т.е. получается что не билдится целый ряд проектов и в их числе обработчик .png файлов... Чтобы это значило?
(в setup все настройки по умолчанию)
Записан
MaxWin
Гость
« Ответ #7 : Апрель 20, 2005, 10:53 »

1.При установке когда окно Configuracion в табе Advanced - Image format, png включено?
2. gif случайно не включен? У меня это иногда это приводило к ошибке во время сборки.
3. Библиотека собралась? В каталоге x:\qt\3.x.x лежит файлик build.log
Там весь лог процесса сборки.
А вообще все это больно странно. Я использую на win32 всегда только VC6 c 3 или 5 паком. Ставил на NT4, XP, 2000 и уже не один десяток раз.
Единственное, что никогда не ставлю на XP пак2. Вобщем никогда не ставлю последнии мелкософтовские обновления. Проку с точки зрения безопасности никакого, а геморой обеспечен. Обхожусь брандмаурами третьих фирм.
Сдается мне, что свежий пак обновил какую-то dll, которой пользуеться компилятор или сборщик. Другой причины не вижу.
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.051 секунд. Запросов: 22.