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

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

Страниц: [1]   Вниз
  Печать  
Автор Тема: Проблемы компановки прог в Qt 2.3 при работе на Windows  (Прочитано 4821 раз)
tech
Гость
« : Февраль 17, 2006, 15:22 »

Поставляемые с Qt примеры нормально компилируются и собираются  на Visual C++ 6.0, а с любой самодельной прогой возникает проблема - при компановке требуется какая-то библиотека qt.lib, которой ни в папке ...qt\lib\ , ни где бы то ещё НЕТ(!), поэтому даже "Hello World" не собирается. Подскажите, пожалуйста, что делать.
Записан
Admin
Administrator
Джедай : наставник для всех
*****
Offline Offline

Сообщений: 1988



Просмотр профиля
« Ответ #1 : Февраль 17, 2006, 16:21 »

ты где qt взял
я помню про такие проблемы


qt.lib отсутсвовал в взломанной версии
приходилось использовать фокус типа
декларации WinMain


Код:
/*
* (C) Copyright MD Company. 2002. All rights reserved.
* Author: Eugene Eremin
* $Id: main.cpp,v 1.4 2002/07/02 15:05:23 eugene Exp $
*/

#ifdef WIN32
#include <windows.h>
#endif


#include "vem_recon2wnd.h"

int main( int argc, char** argv )
{
QApplication app( argc, argv );
//app.setGlobalMouseTracking( TRUE );

#ifndef WIN32
QFont main_font("Helvetica [Cronyx]",10);
app.setFont(main_font,TRUE);
#endif //WIN32

// translation file for Qt
QTranslator qt( 0 );
qt.load( QString( "qt_" ) + QTextCodec::locale(), "." );
app.installTranslator( &qt );

// translation file for application strings
QTranslator Recon2_trans( 0 );
QString str = QTextCodec::locale();
if(Recon2_trans.load( QString( "Recon2_" ) + QTextCodec::locale(), "." )!=TRUE){
QMessageBox::warning(NULL,"Warning",QString( "Can`t open file for locale ") + QTextCodec::locale());
}
app.installTranslator(&Recon2_trans);

CRecon2Wnd * mw = new CRecon2Wnd();
    mw->show();
app.connect( &app, SIGNAL(lastWindowClosed()), &app, SLOT(quit()) );
    return app.exec();
}

#ifdef WIN32

int APIENTRY WinMain(HINSTANCE hInstance,
                     HINSTANCE hPrevInstance,
                     LPSTR     lpCmdLine,
                     int       nCmdShow)
{
  // TODO: Place code here.
main(0,0);
return 0;
}

#endif //WIN32
Записан
tech
Гость
« Ответ #2 : Февраль 17, 2006, 22:48 »

Qt 2.3 некоммерческая версия, она есть в т.ч. и на официальном сайте Trolltech, так что врят ли она взломанная. Использование версии 2.3 продиктовано задачами проекта, а то бы я тоже 4-ю скачал.
О проблемах с qt.lib на Windows я где-то уже читал, вроде даже в 3-х версиях Qt эти глюки бывают.
Спасибо за код, но у меня нет хедера   vem_recon2wnd.h, который там включается.  
Может кто знает, где его достать :?: [/i]
Записан
Admin
Administrator
Джедай : наставник для всех
*****
Offline Offline

Сообщений: 1988



Просмотр профиля
« Ответ #3 : Февраль 18, 2006, 20:15 »

эээ его не надо
ЭТО ТВОЙ ( МОЙ) базовый класс!

для линковки обычно не хватало WinMain
Записан
tech
Гость
« Ответ #4 : Февраль 19, 2006, 16:25 »

Теперь всё работает(!!!)
Спасибо за оказанную помощь))))))
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


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