GNU C++ Compiler in Windows

Gast #5323636
Lesenswert?

Moin,

ich nutze Scipy und PyQT für ein Datenerfassungprogramm und möchte damit 
auf DAQ-Hardware zugreifen. Vom Hersteller gibt es Linux-Bibs. Diese 
sind in C++14 geschrieben.

Ich habe bisher nur unter Linux programmiert.

Ich möchte mit BoostPython die Klassen/Funktionen vom Hersteller meinem 
Python-Programm übergeben. Es gibt vom Hersteller eben diese DLL um die 
ich jetzt mein BoostPython-C++-Programm schreiben möchte. Ich möchte 
aber kein VS Studio oder so installieren, sondern etwas zum Linux G++ 
Compiler ähnlichen und dann per Kommandozeile bauen. Sollte ja bei einer 
DLL die ich includen muss nicht so komplex sein, dass ich dazu eine IDE 
brauche.

Als Compiler habe ich den MinGW64 gefunden, der scheint mir aber 
überholt? Weiterhin habe ich MSYS2 gefunden, aber auch das scheint nicht 
so gepflegt zu werdne. Wichtig wäre mir hier eine nachhaltige Toolchain. 
Gibt es da aktuell Empfehlungen?

Cheers,
Yogi
Gast #5323647
Lesenswert?

Das wird schon regelmäßig gepflegt, nur hinkt es dem ‚Linux-gcc‘ immer 
ein paar Versionsnummern hinterher. Ist halt Aufwand, den ganzen Kram 
auf Windows zu portieren. Funktioniert aber gut. Msys ist übrigens eine 
minimale Umgebung mit bash, make etc. für den eigentlichen 
mingw-Compiler.
Gast #5323663
Lesenswert?

Visual Studio unterstützt mittlerweile auch C++14, und erzeugt i.A. 
effizientere Windows-Binaries als die diversen GCC-Varianten. Es ist 
also durchaus nicht verkehrt das auch in Betracht zu ziehen.
Gast #5323677
Lesenswert?

Visual Studio ist mir eben ein zu mächtiges Softwarepacket.
Ich würde den Code mit Notepad++ schreiben und per Kommandozeile 
kompilieren. So mache ich es auch unter Linux und kann meinen Krempel 
ggf. auch auf meiner Linuxmaschine bauen.

Sollte ich mich doch um entscheiden, wo finde ich denn Infos über den 
VS-Compiler? Wird der Code direkt übersetzt, oder wie bei C# in CLI, was 
dann ausgeführt wird?
#5324237
Lesenswert?

Yogi schrieb:
> Weiterhin habe ich MSYS2 gefunden, aber auch das scheint nicht
> so gepflegt zu werdne.

Wie kommst Du auf das dünne Brett? Pacman installiert Dir einen einen 
GCC 7.3.0, neuer geht derzeit nicht.

Der Installer enthält nur ein schmales Basissystem, das sich selbst (via 
pacman) updaten und neue Software installieren kann.

Da ist auch ein vi oder nano als Editor verfügbar, falls man die unter 
Linux gewohnt ist.
Gast #5324357
Lesenswert?

Hallo,
Ich würde dir den MinGW empfehlen, da du ja keinen Hochleistungscode 
schreiben wirst, reicht der völlig, ich habe ihn als ich noch Windows 
hatte, auch benutzt, inzwischen habe ich Linux und den GCC.

Ivo
Gast #5324576
Lesenswert?

Oliver S. schrieb:
> Ivo Z. schrieb:
> inzwischen habe ich Linux und den GCC.
>
> Die üblichen Verdächtigen unter den Linuxddistributionen kommen mit
> steinalten gcc's. Da sind die gcc's in den minGW-Versionen für Windows
> bei weitem aktueller.

Die aktuelle kann man ja installieren...

Gruß Ivo
Gast #5324598
Lesenswert?

Oliver S. schrieb:
> Die üblichen Verdächtigen unter den Linuxddistributionen kommen mit
> steinalten gcc's.
Tja, wenn man nichts anderes kennt als Debian, und Distros die darauf 
aufbauen, dann mag das so sein.
Fuer mich gehoeren zu "den ueblichen verdaechtigen" aber auch Arch und 
Gentoo, und da ist das definitiv nicht so.
Gast #5324628
Lesenswert?

Yogi schrieb:
> Visual Studio ist mir eben ein zu mächtiges Softwarepacket.
> Ich würde den Code mit Notepad++ schreiben und per Kommandozeile
> kompilieren. So mache ich es auch unter Linux und kann meinen Krempel
> ggf. auch auf meiner Linuxmaschine bauen.

Das ist natürlich ein gewichtiges Argument. Notepad++ ist aber auch 
schon recht mächtig.

> Sollte ich mich doch um entscheiden, wo finde ich denn Infos über den
> VS-Compiler? Wird der Code direkt übersetzt, oder wie bei C# in CLI, was
> dann ausgeführt wird?

Bloß nicht Visual Studio!!! Viel zu mächtig. Programmier direkt im 
Speicher (kein Assembler, zu mächtig!) und nimm Jumper, DIP-Schalter 
oder Lochkarten zur Programmeingabe. Alles andere ist sinnlose 
Resourcenverschwendung!
Gast #5324644
Lesenswert?

Yogi schrieb:
> Sollte ich mich doch um entscheiden, wo finde ich denn Infos über den
> VS-Compiler?

Bei Microsoft :)
Als Einstieg z.B.:
https://msdn.microsoft.com
oder:
https://docs.microsoft.com

Wenn man sich weiter durchhangelt:
https://docs.microsoft.com/en-us/cpp/build/building-on-the-command-line

Wenn Dir das komplette Visual Studio zu mächtig ist, wie derMosphet 
weiter oben schon schrieb gibt es die Compiler auch ohne IDE als "Build 
Tools for Visual Studio 2017"
Gast #5324657
Lesenswert?

genervt schrieb:
> Programmier direkt im
> Speicher (kein Assembler, zu mächtig!) und nimm Jumper, DIP-Schalter
> oder Lochkarten zur Programmeingabe. Alles andere ist sinnlose
> Resourcenverschwendung!

Ein guter Witz, das ist allerdings nicht wirklich ressourcenschonend, 
wenn man bedenkt, wie viele Kalorien und Hirnzellen dabei draufgehen ;-)
Gast #5324664
Lesenswert?

Das Visual Studio ist eine sehr ausgereifte und mächtige IDE. Damit kann 
man sehr gut arbeiten sowohl bei einfachen als auch komplexen 
Aufgabenstellungen, und mittlerweile ist die standardkonforme 
Unterstützung von C++ deutlich besser, es werden auch aktuelle 
Sprachstandards unterstützt. Es lohnt sich kaum darauf zu verzichten - 
sollte man die paar Gigabytes die das an Festplattenplatz braucht 
tatsächlich nicht haben, kriegt man den Kauf einer größeren Platte durch 
die gesparte Arbeitszeit bald wieder rein. Zudem kompiliert MSVC 
schneller und erzeugt kleinere .exe-Dateien als MinGW. Diese sind auch 
besser kompatibel zu anderen Windows-Bibliotheken ( -> 
Exception-Support). Nur mit Notepad++ ohne richtiges "IntelliSense" und 
grafischen Debugger zu arbeiten ist da vergleichsweise mühsam. Als 
Student kriegt man über MSDNAA die Vollversionen auch oft gratis.
Natürlich ist es aber auch nicht verkehrt seine Programme mal mit GCC 
und/oder Clang zu kompilieren, um zu schauen wie Standard-Konform sie 
sind.

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