Win32-API unter Linux entwickeln

Gast #1103862
Lesenswert?

Ich habe vor einiger Zeit für einen Kunden ein Programm für die 
Win32-API in C geschrieben. Nun wünscht der Kunde eine kleine 
Erweiterung aber dafür möchte ich nicht extra wieder Windows und die 
Redmond'sche Entwicklungsumgebung installieren.

Hat jemand einen Ansatz parat wie man unter GNU/Linux mit der GCC mal 
eben einen Programmcode für die Win32-API erstellen könnte?
Persönliche Seite #1103887
Lesenswert?

Das würde eine Art Crosscompiler bedürfen, der gcc müsste einerseits mit 
den ganzen Libraries und Headerdateien der Win32-Umgebung ausgerüstet 
werden und andererseits müsste dessen Linker instruiert werden, den 
richtigen Startupcode zu linken sowie das Ergebnis seiner Bemühungen im 
richtigen Binärformat (PE) auszuspucken.

Das wird man sicherlich machen können, aber der Aufwand dürfte ganz 
erheblich sein.

Nun muss man nicht unbedingt mit den Microsoft-Compilern arbeiten (auch 
wenn diese mittlerweile tatsächlich exzellent sind, sowohl was die 
Standardkonformität als auch die Qualität des produzierten Codes angeht, 
was sich bei der IDE und dem Debugger fortsetzt), es gibt ja auch noch 
andere freie Win32-Compiler. Und vielleicht lässt einer davon sich ja 
auch mit Wine zufriedenstellen; ich würde es mit wingw probieren.

Ansonsten hätte eine VM mit installiertem Windows und Compiler den 
Vorteil der einfachen Wiederherstellbarkeit, die sollte sogar auf eine 
DVD passen, die man bei Nichtgebrauch im Schrank versanden lässt ...
Gast #1104022
Lesenswert?

Unter Debian gibts fertige Pakete (mingw/mingw-binutils).
Muesste eigentlich genauso gut funktionieren wie die Windows-basierte 
MSYS/Mingw-Variante.
Habe allerdings noch keine DLL bzw. Import library damit erstellt. Wenn 
der Kunde mit MSVC hacken will, musst Du ihm ev. halt verklickern, wie 
er sich die Import-Library aus gelieferten DEF-Files erstellt.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren