2010-06-08 11 views
23

Devo supportare Windows 98. La documentazione Qt afferma che ciò è possibile, ma non ci sono istruzioni. I file binari distribuiti di Qt 4.6 non funzionano su Win98 e anche la maggior parte delle applicazioni Qt che ho campionato non lo fanno. Per diverse app che funzionano su 98, ho chiesto agli autori come hanno fatto, ma la risposta comune è che è stata accidentale e non sanno quali fattori l'abbiano causata.Compilazione Qt per Windows 98

Nella ricerca nel forum di aiuto, ho trovato solo supposizioni che si sono rivelate sbagliate. Ad esempio, una credenza è che per compilare per Win9x, è necessario creare gli strumenti e le app su quella piattaforma. Eppure, le cose che ho trovato da eseguire erano basate su versioni più recenti di Windows.

  • Cosa è necessario per creare gli strumenti di sviluppo Qt e quindi le applicazioni per Win98?
  • Che ne dici della compilazione incrociata da WinXP o Linux?
  • Esistono componenti specifici che non possono essere eseguiti per funzionare su Win98?
  • Esistono particolari difficoltà con il collegamento dinamico o statico per il supporto Win98?
+0

Wow. Il mio voto per la domanda del giorno. –

+0

Solo un'idea: prova a utilizzare un compilatore e una libreria di runtime che può indirizzare a Win98. Ad esempio Visual Studio/Visual C++ 6.0. –

+0

L'ultima versione di Qt 4 testata su Windows 98 da Trolls è la 4.4, vedere [Note del compilatore - Visual Studio (Windows)] (http://doc.trolltech.com/4.4/compiler-notes.html#visual-studio- finestre). Se non hai davvero bisogno della versione recente, prova con quello usando VC++ 6 SP5 o .NET. – przemoc

risposta

6

Ecco quanto ho intenzione di salire su questo:

Puoi target Windows 98 usando MinGW o VC++ 6 SP5 da qualsiasi versione di Windows. La compilazione incrociata da Linux è fattibile, ma non è facile per set up.

Qt 4.4.3 era l'ultima versione ufficialmente testata su Win98. Per eseguire il distribuito binaries su Win98, è necessario installare le versioni precedenti di glu32.dll e opengl32.dll disponibili da Microsoft. A causa di un bug non risolto, l'Assistente si avvia ma non riesce a caricare i file della guida. La versione alternativa nella directory bin, assistant_adp.exe, funziona correttamente. Sembra che l'unico altro problema potenziale sia che QtOpenGL può usare funzionalità non disponibili su vecchie scatole.

Qt 4.5.3 sembra essere ancora compatibile ad eccezione di WebKit, OpenGL e Phonon. QtOpenGL si aspetta OpenGL 1.5, che non so è nemmeno possibile su vecchie scatole.Non ho guardato Phonon abbastanza profondamente per vedere esattamente quali sono i problemi. QtWebKit ora richiede Win2K o superiore. Il distribuito binaries funziona in gran parte OK. L'assistente dipende da QtWebKit, quindi non verrà avviato, ma assistant_adp.exe funziona ancora.

Qt 4.6.3 distribuito binaries sono ora completamente incompatibili con Win98. Potrebbe essere possibile ottenere alcune cose che funzionano con MinGW 4.4 e un sacco di hacking.

Edificio Qt Creator richiede Qt 4.6.0 e MinGW 4.4 o VS 2008.

1

Wow ... missione interessante.

Quindi, fondamentalmente - sì, c'è il supporto per Windows 98 per Qt. Il problema è che c'è un grande IF. Ad esempio, se provi anche a impostare alcuni QTextCodec :: codecForName diversi, devi fornire ttf di terze parti per questo scopo, poiché nella maggior parte dei casi Win98 non lo riconoscerà come valido. Se fornisci l'errore esatto, mentre lo compilo sulla macchina win98, potrei aiutarti.

"Che ne dici di compilazione incrociata da WinXP o Linux?" - Se si utilizzano SOLO le librerie Qt, tutto va bene. Altrimenti nel file .pro, devi collegare queste librerie in condizioni win32 e unix. Quindi potresti persino vietare il tuo codice, per essere compilato ed eseguito in altri sistemi ...

"Esistono componenti specifici che non possono essere eseguiti per funzionare su Win98?" - Certo. Nel file .pro è possibile includere diverse librerie, per diversi sistemi operativi.

"Esistono particolari difficoltà con il collegamento dinamico o statico per il supporto Win98?" - Per quanto ne so - non c'è.

// off - ma ancora strano, che qualcuno vuole scrivere applicazioni per Win98, oggi ...

+0

Vuoi dire che tutti e 19 i moduli multipiattaforma in Qt 4.6 verranno compilati ed eseguiti su Win98, anche QtWebKit? Se utilizzo cmake e gcc da mingw32 su WinXP, quali impostazioni speciali sono richieste per indirizzare Win98? Qualche idea sul perché così tanti binari compilati su XP non funzionano su 98? – user287424

+2

RE: Win98. Se il tuo unico interesse è vendere nuovi software, senza dubbio Win98 sembra morto. Ma questo ignora gli utenti che conservano un vecchio computer fino alla sua morte. Se ciò che hanno funziona, non sentono il bisogno di spendere soldi per qualcosa di nuovo. Questa categoria comprende gli anziani, i poveri, le piccole imprese e gran parte del mondo in via di sviluppo. La mia impressione è che ci sono molti più utenti di Win98 in tutto il mondo che Mac OS X e nessuno dubita del valore di considerare le esigenze degli utenti Mac. – user287424

+0

In teoria: Sì, ognuno di questi moduli dovrebbe andare bene anche con Win98, specialmente se stai usando SOLO moduli Qt nella tua app. Ma non si sa mai. Ci sono spesso alcuni stupidi bug sotto piattaforma non testata. Quindi, provalo. – Vladimiroff

Problemi correlati