Für eine grafische Qt Oberfläche suche ich eine Möglichkeit diese auch für Windows zu kompilieren, da der Kunde nun auch Windows (Mindestens windows 10 haben will). Normalerweise kompiliere ich alles in einer Docker Buildumgebung für diverse Linux Distributionen oder generiere im Container ein Appimage. Das geht auch dank Qemu für verschiedene Architekturen gut (Dann wird der ganze Docker Container mit QEMU ausgeführt und man kann ein Debian ARM container auf AMD64 laufen lassen). Nach ein bisschen Recherche habe festestellt, dass es keine Möglichkeit zu geben scheint einen Windows Container unter Linux auszufüren. Ich habe das bisher immer mit MSYS2 und Windows gemacht. Weiß jemand, ob es von Microsoft ein Image oder eine Umgebung gibt, die kostenlos nur zum Bauen von Software zur Verfügung gestellt wird. Ich will es ja nur laufen lassen und den Buildserver damit verbinden.
Martin schrieb: > Weiß jemand, ob > es von Microsoft ein Image oder eine Umgebung gibt, die kostenlos nur > zum Bauen von Software zur Verfügung gestellt wird. Es gibt eine kostenlose Windows-Version, die man drei Jahre lang verwenden kann. Das ist die 180-Tage-Testversion der Serverversion, die kann man ohne Anmeldung bei MS herunterladen. Nach der Installation muss das Ding einmal das Internet sehen können, um sich zu "aktivieren", der Spaß muss dann alle 180 Tage wiederholt werden (das geht mit "slmgr -rearm" aus einer Konsole mit Administratorrechten heraus, danach ist ein Reboot fällig). Und das geht dann über etwa drei Jahre Gesamtlaufzeit. Man braucht keinen "Key" und auch kein Microsoft-Konto dafür. Diese Testversion kann man beliebig oft auf beliebig vielen Rechnern installieren, die 180 Tage zählen ab Installationsdatum. Server 2022 deutsch https://go.microsoft.com/fwlink/p/?LinkID=2195280&clcid=0x407&culture=de-de&country=DE Server 2022 englisch https://go.microsoft.com/fwlink/p/?LinkID=2195280&clcid=0x409&culture=en-us&country=US
:
Bearbeitet durch User
Martin schrieb: > für Windows zu kompilieren, da der Kunde nun auch Windows (Mindestens > windows 10 haben will). Wo ist Dein Problem? Du stellst dem Kunden die Kosten für die Windows Build Umgebung mit in Rechnung und damit ist der Drops gelutscht. Das wird einfach in den Preis für die "Windows App" mit eingerechnet und gut is.
Martin schrieb: > Weiß jemand, ob > es von Microsoft ein Image oder eine Umgebung gibt, die kostenlos nur > zum Bauen von Software zur Verfügung gestellt wird. Du kannst MinGW unter Linux installieren und da grundsätzlich problemlos mit crosscompilieren: https://packages.debian.org/bookworm/mingw-w64 Das Hauptproblem ist es, die ganzen Libraries (Qt) und ihre Abhängigkeiten zusammen zu stellen. Eine sehr gute Möglichkeit ist es, https://conan.io/ zu verwenden. Das kann dir vollautomatisch alle Abhängigkeiten für beliebige Plattformen herunterladen und dann kannst du dagegen linken. Du legst ein Profil für die Zielplattform an und wählst dieses für den Buildprozess aus und bekommst vollautomagisch alle Bibliotheken installiert. In der Praxis ist es schon etwas fummelig bis es dann wirklich funktioniert, viele Pakete (Recipes) sind nicht wirklich gut auf Cross-Kompilieren ausgelegt. Kann also sein dass man diese reparieren muss. Aber wenn man das einmal hat funktioniert es wirklich gut und erspart viel Arbeit. Funktioniert auch sehr gut für CI-Builds. Ich hatte das mal benutzt um eine Anwendung mit GLFW, Vulkan, Boost und diversen weiteren Bibliotheken unter Linux zu kompilieren für Linux, Windows, Mac OS, und Yocto Linux (ARM). Es gab gewisse Startschwierigkeiten aber als es dann lief war es super. Das ist schon ein paar Jahre her, wahrscheinlich funktioniert es mittlerweile besser. Auch ohne Cross-Compilieren ist conan super, jede C/C++ Anwendung welche Bibliotheken braucht kann davon profitieren - man legt eine conanfile.txt, trägt die gewünschten Bibliotheken ein, passt die CMakeLists an, lässt "conan install" laufen und schwupps ist alles da, in exakt der gewünschten Version für die gewünschte Zielplattform für den gewünschten Compiler und die gewünschten Build-Optionen der Library selbst.
:
Bearbeitet durch User
Die ISOs für Installationsmedien von Windows 10 und auch 11 kann man kostenfrei bei Microsoft downloaden. Zur kostenfreien und dauerhaften Aktivierung mit einer digitalen Lizenz von Microsoft gibt es auch noch immer entsprechende Tools im Web zu finden, weil eine Windows 10/11 Installation alles dafür enthält und Microsoft die Überprüfung der Aktivierung noch immer nicht richtig im Griff hat.
Man darf die ganz normalen ISO Images von Windows 10 drei Monate lang kostenlos verwenden. Und selbst danach funktioniert die Installation mindestens ein ganzes Jahr weiter. Nur ein paar klickibunti Einstellungen werden nach den drei Monaten blockiert.
Genausowenig wie man für ein Linux-Binary eine Build-Umgebung auf Linux braucht, braucht man für ein Windows-Binary eine Build-Umgebung auf Windows. GCC ist (auch) ein Crosscompiler, Clang ebenso. Welche Build-Umgebung für die Linux-Builds genutzt wird, wurde ja nicht verraten.
:
Bearbeitet durch User
Walter T. schrieb: > Genausowenig wie man für ein Linux-Binary eine Build-Umgebung auf Linux > braucht, braucht man für ein Windows-Binary eine Build-Umgebung auf > Windows. Ja, theoretisch. Dann schau dir mal an, wie viele Abhängigkeiten Qt unter Umständen haben kann. Bis man das alles funktionsfähig zusammen hat ... und dass auch noch regelmäßig aktualisiert ... kann ich gut verstehen, dass jemand lieber eine komplette Windows Installation nimmt und Qt nach Schema F installiert. Man bekommt so auch viel leichter Hilfe, wenn mal etwas nicht klappt.
Monk schrieb: > ... kann ich gut > verstehen, dass jemand lieber eine komplette Windows Installation nimmt. Für Testen ja. Für den Build ist das eine Abwägungssache.
Walter T. schrieb: > Genausowenig wie man für ein Linux-Binary eine Build-Umgebung auf Linux > braucht, braucht man für ein Windows-Binary eine Build-Umgebung auf > Windows. Zum Testen hat ein echtes Windows allerdings schon Vorteile, weil unter wine dann doch nicht alles so gut funktioniert. Meine Vulkan-Anwendung damals hat allerdings super unter wine funktioniert, interessant!
:
Bearbeitet durch User
minGW GCC für Windows 64 & 32 Bit gibt es bei https://winlibs.com/ Ob man damit auch QT-Oberflaechen hinbekommt weiss ich nicht...
Niklas G. schrieb: > [...] Meine Vulkan-Anwendung > damals hat allerdings super unter wine funktioniert, interessant! Wann war denn das ominöse "damals" oder Geheimals?
Guido L. schrieb: > minGW GCC für Windows 64 & 32 Bit gibt es bei > https://winlibs.com/ > > Ob man damit auch QT-Oberflaechen hinbekommt weiss ich nicht... Meine Erfahrung mit Cross Compilation und Qt waren vollkommen ernüchternd daher bin ich aus MSYS2 umgestiegen. Da sind eben alle Pakete per Pacman installierbar. Qt hat eben jede Menge Legacy Schrott und braucht Plugins für Bilddateien. Die muss man dann händisch in die richtigen Ordner schrieben und hat kein windeployqt. Für einfache Programme ist das sicher alles kein Problem aber ein großes Projekt ist eine Qual. Es gibt dafür noch mxe womit man sich eine ganze Buildumgebung bauen kann.
Windows läuft auch unter Virtualbox und Lizensen gibt es für 10,- EUR auf eBay.
Alexander schrieb: > und Lizensen gibt es für 10,- EUR > auf eBay. ... schreibt man nicht mit "s", sondern mit zwei "z" und braucht man nicht, wie ich hier Beitrag "Re: Windows 10 Buildumgebung" schon beschrieben habe. Und da das Serverversionen sind, gehen die einem auch nicht so penetrant mit Zwangsupdates auf den Sack.
http://heikogorski.de/Compiler---Code/QT-und-Code--Blocks/qt-und-code--blocks.html https://visualstudio.microsoft.com/de/vs/express/ https://www.heise.de/download/product/visual-studio-express-32737 Allerdings empfiehlt es sich auf jeden Fall, sich auch die Servertestversion anzusehen, auf die Harald oben hingewiesen hatte. Die waren früher (zur aktuellen weiß ich nix) nämlich auch hervorragend.
Rbx schrieb: > Die waren früher (zur aktuellen weiß ich nix) nämlich auch hervorragend. Man bekommt auch noch alte (wenigsten 2016), wenn man sich das aus irgendwelchen Gründen antun will. 2022 entspricht einem Windows 10 aus in etwa der Zeit, kann also nicht den allerneuesten Schnickschnack, hat aber schon ein --endlich-- brauchbares Konsolenfenster. Bei allen drei Versionen, 2016, 2019 und 2022 gilt die gleiche 180-Tage-Testdauer und gibt es die gleiche sechsfache Verlängerbarkeit, die auf die gleiche Weise mit "slmgr -rearm" erreicht wird. Im Oktober wird es 2025 geben. So wie es aussieht, wird wohl auch diese Version kein TPM erzwingen, so daß man sie, anders als Windows 11, auch noch auf etwas älterer Hardware verwenden kann. Ob sich die CPU-Anforderungen jetzt großartig von denen von 2022 unterscheiden werden, habe ich mir nicht näher angesehen.
Martin schrieb: > Nach ein bisschen Recherche habe festestellt, dass es keine Möglichkeit > zu geben scheint einen Windows Container unter Linux auszufüren. Wenn du es kompliziert haben möchtest, es soll Leute geben die eine VM in einem Container auf Linux ausführen, welche dann ein Windows als Gastsystem ausführt. Uff ... Beispiele: https://medium.com/axon-technologies/installing-a-windows-virtual-machine-in-a-linux-docker-container-c78e4c3f9ba1 https://www.youtube.com/watch?v=xhGYobuG508 Halte ich für deine Anwendung für übertrieben. Lieber den Container weglassen und Windows direkt als Gastsystem in einer VM ausführen. > Ich habe das bisher immer mit MSYS2 und Windows gemacht. Weiß jemand, ob > es von Microsoft ein Image oder eine Umgebung gibt, die kostenlos nur > zum Bauen von Software zur Verfügung gestellt wird. Ja, aber ist begrenzt und ein Lockangebot für Azure https://azure.microsoft.com/de-de/products/devops/pipelines Von irgend welchen Fummeleien mit Windows-Lizenzen würde ich die Finger lassen. Das wäre mir für eine kommerzielle Entwicklung zu riskant. Ist halt blöd wenn die sich kostenlos erschlichene Windows-Version zufällig genau dann den Betrieb einstellt wenn du sie dringend brauchst. Die paar Kröten für eine Windows-Lizenz sollten für eine kommerzielle Entwicklung schon drin sein. Dazu mal ketzerisch gefragt, wo und wie willst du die Windows-Version deiner Software debuggen wenn du nur irgendwo einen Build-Server nutzt? Da wirst du schon ein Windows haben müssen.
:
Bearbeitet durch User
Hannes J. schrieb: > Von irgend welchen Fummeleien mit Windows-Lizenzen würde ich die Finger > lassen. repetitio ad nauseam: Genau die braucht es mit den 180-Tage-Testversionen der Server nicht. Statt irgendwelchen windigen Gestalten Geld für eine fragwürdige Lizenz in den Rachen zu werfen, ist das eine saubere, legale und unproblematische Lösung. Und man kann die Testversion sooft einsetzen, wie man Lust drauf hat, nacheinander, gleichzeitig, völlig egal. Nach Ablauf des effektiv dreijährigen Testzeitraums kann man die gleiche Testversion wieder verwenden, auch das ist unproblematisch. -- Der Vollständigkeit halber: 2022 de https://software-static.download.prss.microsoft.com/sg/download/888969d5-f34g-4e03-ac9d-1f9786c66749/SERVER_EVAL_x64FRE_de-de.iso 2022 en https://software-static.download.prss.microsoft.com/sg/download/888969d5-f34g-4e03-ac9d-1f9786c66749/SERVER_EVAL_x64FRE_en-us.iso 2019 de https://software-download.microsoft.com/download/pr/17763.737.190906-2324.rs5_release_svc_refresh_SERVER_EVAL_x64FRE_de-de_1.iso 2019 en https://software-download.microsoft.com/download/pr/17763.737.190906-2324.rs5_release_svc_refresh_SERVER_EVAL_x64FRE_en-us_1.iso 2016 de http://download.microsoft.com/download/7/E/B/7EBCA3A0-1F42-4966-B03E-713C3DEF98B7/14393.0.161119-1705.RS1_REFRESH_SERVER_EVAL_X64FRE_DE-DE.ISO 2016 en https://software-download.microsoft.com/download/pr/Windows_Server_2016_Datacenter_EVAL_en-us_14393_refresh.ISO
:
Bearbeitet durch User
Alter Falter, was geht mit Microsoft ab? Da packen die irgendwelche Dummy Dateien für Python rein. Ick gloob et hackt! Man installiert eine jungfreudige Windows 10 Installation, will ein Python Skript testen und es passiert nichts! Nicht mal python --version wirft irgendwas aus, keine Fehlermeldung, einfach gar nichts... Anbei die Übeltäter! 34 Byte große Dateien
1 | %UserProfile%\AppData\Local\Microsoft\WindowsApps\python.exe |
2 | %UserProfile%\AppData\Local\Microsoft\WindowsApps\python3.exe |
3 | %UserProfile%\AppData\Local\Microsoft\WindowsApps\python3.7.exe |
Alexander schrieb: > Man installiert eine jungfreudige Windows 10 Installation, will ein > Python Skript testen Das würde ich lieber in Linux machen, oder in einer VM mit Linux bzw. im Emulator. Python-Datei-Leichen oder -Dummies können immer mal vorkommen, je nach dem.. Dieses Problem, wie auch das mit der Version ist bei Linuxen weniger nervig bzw. gar nicht vorhanden.
Alexander schrieb: > Alter Falter, was geht mit Microsoft ab? Da packen die irgendwelche > Dummy Dateien für Python rein. Ick gloob et hackt! > > Anbei die Übeltäter! 34 Byte große Dateien In Deinem Tarfile ist etwas, das in der UNIX-Welt als "symbolische Links" oder "Symlinks" bekannt ist. Für C-, Cpp- und Go-Freunde: Zeiger.
Alexander schrieb: > Man installiert eine jungfreudige Windows 10 Installation Wie wäre es mit einer jungfräulichen Installation? "Jungfreudig" klingt zu nahe an "räudig". Alexander schrieb: > Die Frage ist doch, was soll der Schwachsinn? Eine sinnvolle Fehlermeldung ausgeben, nämlich "install python first", statt "Der Befehl "python" ist entweder falsch geschrieben oder konnte nicht gefunden werden." Offenbar ist MS der Ansicht, Nutzer dieser Skriptsprache an die Hand nehmen zu müssen, statt sie mit der üblichen Fehlermeldung zu überfordern. Das ist immerhin besser, als wenn MS eine eigene Python-Version ausliefert, so hat es lange Zeit Apple gemacht, und das war dann gnadenlos veraltet: https://www.heise.de/ratgeber/Python-schnell-einrichten-So-geht-s-auf-Windows-Linux-und-macOS-6355248.html?seite=4 Unter "Sonoma" haben sie's dafür ersatzlos rausgeschmissen, jetzt erhält man ein freundliches "zsh: command not found: python"
Alexander schrieb: > Die Frage ist doch, was soll der Schwachsinn? Die Frage ist doch, warum verstehst Du das nicht?
Alexander schrieb: > Man installiert eine jungfreudige Windows 10 Installation, will ein > Python Skript testen und es passiert nichts! Nicht mal python --version > wirft irgendwas aus, keine Fehlermeldung, einfach gar nichts... Bei mir wird bei --version angezeigt: "Python was not found; run without arguments to install from the Microsoft Store, or disable this shortcut from Settings > Manage App Execution Aliases." ...und wenn ich nur python ohne Parameter ausführe öffnet sich der Microsoft Store über den ich python 3 dann installieren kann. Und unter "Aliase für die App-Ausführung" in den Windows-Einstellungen kann ich diese Art Symlink auch in der Tat deaktivieren.
Bei mir passiert nichts. gar nichts. weder dein Text noch ein Microsoft Store. **edit**: Bei Aufruf ohne Argumente wird das Icon vom Microsoft Store in der Taskleiste unterstrichen. Das ist mir bisher nicht aufgefallen. Geh ich mit der Maus drüber sehe ich diese kleine Vorschau. Wenn man sich Mühe gibt kann man dort irgendwas mit Python3.7 erahnen. Das ist aber schon alles. Anklicken oder öffnen kann ich den Microsoft Store nicht, dieses Icon lässt sich nicht maximieren. Benötigt man dazu ein Microsoft Konto? "Apps" kannte ich bisher nur von Android. Auf Windows habe ich "Programme" noch nie einen App Store gebraucht.. Wie auch immer - Dreck! Braucht kein Mensch.. Das schlimmste ist der falsche Return Code. Ich kann auch python.exe haha_datei_existiert_gar_nicht.py ausführen ohne Fehlermeldung.
:
Bearbeitet durch User
Ich empfinde das mit diesen Aliasen auch als großen Murks. Das hat uns in der Firma viele Nerven gekostet, da Windows diesen Aliasen manchmal, nicht immer, Vorzug vor einem händisch installierten (kopiert + Path gesetzt) Python gegeben hat. Ich deaktiviere deswegen grundsätzliche alle dieser "Aliase", geht über "Einstellungen"
Das Problem ist das Versionschaos das es nach Python 2.7 gab und 3.x nicht richtig kompatibel war. MS ist da auch nur getriebener und man soll mit den virtuellen Environments arbeiten. Eine globale 3.x Installation funktioniert nicht für alle Programme, selbst die 3er Versionen sind ja unterschiedlich.
:
Bearbeitet durch User
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.