README LCGI Port für Win32 ========================== Anleitung für das Erstellen eines auf LCGI basierenden Visual C++ 6.0 Projekts. (C) Copyright 2002, Heiko Köhler Installation von LCGI für Win32 =============================== Kopieren Sie den Ordner lcgi einfach auf die Festplatte. Programmieren mit LCGI für Win32 ================================ 1. Erstellen einer leeren Win32-Konsolenanwendung Klicken Sie auf Datei/Neu (Ctrl+N). Es erscheint ein Dialog "Neu". Betätigen Sie den Reiter "Projekt" und wählen "Win32-Konsolenanwendung". Beim nächsten Schritt bestätigen Sie "leeres Projekt" mit der Schaltfläche "Fertigstellen". 2. Anlegen einer Quellcodedatei Rufen Sie über Datei/Neu den gleichen Dialog wie in Schritt 1 auf und wählen aus der Liste C/C++-Quelldatei aus. 3. Anpassen der Projekteinstellungen Über Projekt/Einstellungen (Alt+F7) gelangen Sie in den Dialog "Projekteinstellungen". Wählen Sie Reiter "C/C++", setzen die Combobox "Kategorie" auf "Präprozessor". Anschließend muß in "Zusätzliche Include-Verzeichnisse" der Pfad von LCGI angegeben werden. Wählen Sie Reiter "Linker" und geben in "Objekt/Bibliothek-Module" /lcgi.lib /qt-mt230nc.lib ein, wobei der Pfad von LCGI ist. In dem Textfeld "Projekt Optionen" fügen Sie /nodefaultlib:"libcd" an. 4. Ausführen von LCGI Anwendung Damit eine mit LCGI erstellte Anwendung lauffähig ist muss sich im Programm- verzeichnis qt-mt230nc.dll befinden. Im Fall von Visual C++ muss die Datei also in das Unterverzeichnis Debug oder Release vom VC++ Projekt kopiert werden. Fehlermeldungen: ================ Meldung: MSVCRT.lib(crtexew.obj) : error LNK2001: Nichtaufgeloestes externes Symbol _WinMain@16 Debug/langton.exe : fatal error LNK1120: 1 unaufgeloeste externe Verweise Lösung: In "Projekteinstellungen (Alt+F7)", Reiter "Linker" Projekt-Optionen /subsystem:windows in /subsystem:console ändern. Meldung: langton.obj : error LNK2001: Nichtaufgeloestes externes Symbol "void __cdecl bar(int,int,int,int)" (?bar@@YAXHHHH@Z) langton.obj : error LNK2001: Nichtaufgeloestes externes Symbol "void __cdecl closegraph(void)" (?closegraph@@YAXXZ) langton.obj : error LNK2001: Nichtaufgeloestes externes Symbol "int __cdecl getch(void)" (?getch@@YAHXZ) langton.obj : error LNK2001: Nichtaufgeloestes externes Symbol "void __cdecl cleardevice(int)" (?cleardevice@@YAXH@Z) langton.obj : error LNK2001: Nichtaufgeloestes externes Symbol "int __cdecl getint(char *,...)" (?getint@@YAHPADZZ) langton.obj : error LNK2001: Nichtaufgeloestes externes Symbol "void __cdecl setfillstyle(int,int)" (?setfillstyle@@YAXHH@Z) langton.obj : error LNK2001: Nichtaufgeloestes externes Symbol "void __cdecl initgraph_(int,char * * const,int,int)" (?initgraph_@@YAXHQAPADHH@Z) ... Lösung: In "Projekteinstellungen (Alt+F7)", Reiter "Linker", "Objekt/Bibliothek-Module" /lcgi.lib anfügen. Meldung: lcgi.lib(graphics.obj) : error LNK2001: Nichtaufgeloestes externes Symbol "__declspec(dllimport) public: __thiscall QColor::QColor(class QColor const &)" (__imp_??0QColor@@QAE@ABV0@@Z) lcgi.lib(graphics.obj) : error LNK2001: Nichtaufgeloestes externes Symbol "__declspec(dllimport) public: __thiscall QColor::QColor(int,int,int)" (__imp_??0QColor@@QAE@HHH@Z) lcgi.lib(graphics.obj) : error LNK2001: Nichtaufgeloestes externes Symbol "__declspec(dllimport) protected: static void __cdecl QObject::badSuperclassWarning(char const *,char const *)" (__imp_?badSuperclassWarning@QObject@@KAXPBD0@Z) lcgi.lib(graphics.obj) : error LNK2001: Nichtaufgeloestes externes Symbol "__declspec(dllimport) int __cdecl qstrcmp(char const *,char const *)" (__imp_?qstrcmp@@YAHPBD0@Z) lcgi.lib(graphics.obj) : error LNK2001: Nichtaufgeloestes externes Symbol "__declspec(dllimport) public: virtual char const * __thiscall QWidget::className(void)const " (__imp_?className@QWidget@@UBEPBDXZ) lcgi.lib(graphics.obj) : error LNK2001: Nichtaufgeloestes externes Symbol "__declspec(dllimport) public: class QString __thiscall QApplication::translate(char const *,char const *)const " (__imp_?translate@QApplication@@QBE?AVQString@@PBD0@Z) lcgi.lib(graphics.obj) : error LNK2001: Nichtaufgeloestes externes Symbol "__declspec(dllimport) class QApplication * qApp" (__imp_?qApp@@3PAVQApplication@@A) ... Lösung: In "Projekteinstellungen (Alt+F7)", Reiter "Linker", "Objekt/Bibliothek-Module" /qt-mt230nc.lib anfügen. Meldung: Linker-Vorgang läuft... MSVCRT.lib(MSVCRT.dll) : error LNK2005: _exit bereits in LIBCD.lib(crt0dat.obj) definiert LINK : warning LNK4098: Standardbibliothek "MSVCRT" steht in Konflikt mit anderen Bibliotheken; /NODEFAULT:Bibliothek verwenden Debug/langton.exe : fatal error LNK1169: Ein oder mehrere mehrfach definierte Symbole gefunden Fehler beim Ausführen von link.exe. Lösung: Wechseln Sie in "Projekteinstellungen (Alt+F7)", Reiter "Linker" und fügen im Textfeld "Projekt Optionen" /nodefaultlib:"libcd" an. Meldung: LINK : error LNK2001: Nichtaufgeloestes externes Symbol _mainCRTStartup Debug/lcgi_app.exe : fatal error LNK1120: 1 unaufgeloeste externe Verweise Fehler beim Ausführen von link.exe. Lösung: Anweisungen schreiben in main() (Compiler Fehler)