2010-07-12 9 views
5

Amo tutto ciò che riguarda il toolkit DFL GUI per D, tranne per il fatto che funziona solo su Windows perché fondamentalmente è un wrapper di alto livello attorno all'API di Windows. Quanto sarebbe difficile portare semplicemente un tale toolkit su Linux (non mi interessa davvero nessun altro sistema operativo oltre a Windows e Linux) usando Winelib? Quali sono le probabilità che se ho compilato una tale libreria su Linux e l'abbia collegata a Winelib, per lo più "funziona solo"? Quali passi non ovvi potrebbero essere coinvolti?Utilizzo di Winelib per eseguire il porting di un toolkit GUI per Windows

Nota: per coloro che non hanno familiarità con i metodi di D di lavorare con il codice C, il codice C può essere richiamato direttamente da D. È sufficiente tradurre il file di intestazione su D (questo è già fatto per le intestazioni Win32, ma non sono le intestazioni di Winelib. Non sono sicuro se gli header di Winelib debbano essere tradotti o se le intestazioni di Windows siano abbastanza buone.), compilare il codice C con un compilatore C e collegare i file di oggetto C..

+0

Hai trovato una soluzione nel frattempo? – Trass3r

+0

Sì. Ho finito con il porting su un'altra libreria della GUI. – dsimcha

risposta

1

Non è necessario utilizzare Winelib se si sta già costruendo Windows. Winelib esiste solo per fornire un ambiente di generazione di Windows sotto il vino su una piattaforma non x86 supportata da vino (ad esempio, linux ppc). Non è necessario usarlo del tutto se il tuo sistema di compilazione sta già compilando binari di Windows (nessun vantaggio in termini di prestazioni).

Una cosa che dovrai fare è assicurarti che l'API Win32 chiami che le DLL di DFL usano il lavoro sotto wine (dovresti farlo anche se hai usato winelib).

Quindi, in breve, non è necessario utilizzare winelib, basta provare sotto wine le DLL che stai già creando per Windows con la tua app di test e bug di file wine per tutte le chiamate API che non sono supportate. :)

Problemi correlati