Κάνε και εσύ εφαρμογές windows σε linux.

Πολλές φορές όταν γυμναζόμαστε και θέλουμε να είμαστς beefcake τότε κάνουμε crossfit. Αλλά όμως σαν A1 pure hardcode linux hackers θέλουμε αυτήν την αίσθηση και όταν κάνουμε τις εφαρμογές μας.

Σπανίως θα χρειαστείτε να παίξετε μπαλίτσα και σε obsolete - legacy συστηματάκια και το όχι is not an option ειδικά για windows XP 32 bit που σου θυμίζουν τις παλιές καλές εποχές που έλωνες στο Underground 2.

Πλέον ούτε και το SSL δεν θα μπορεί να πάιξει για να κατεβάσεις τα tool για να γράψεις κώδικα σε WinXP. Τι να κάνεις; HEADS UP BRO linux has a solution 4 u.

Στα αποθετήρια υπάχει το mingw σε mint 19 υπάρχει για να δείτε αν υπάρχει σε debian based systems τρέξτρε:

apt-cache search mingw

Αν λάβετε απάντηση τότε τρέξτε:

sudo apt-get install gcc-mingw-w64-x86-64 g++-mingw-w64-x86-64 wine64
sudo apt-get install g++-mingw-w64-i686 g++-mingw-w64-i686

Και μπορείτε να έχετε c και c++ compiler συμβατός με τα ορίσματα του gcc που όλοι αγαπήσαμε στην σχολή. (Μην ακούσω κουβέντα για το gcc ειδάλως θα μοιράσω φάπες.)

Πλέον όπως θα τρέχατε για build to gcc:

gcc main.c -o main

Πλέον για 32 bit τρέχετε:

i686-w64-mingw32-gcc main.c -ο main.exe

Και για ποιο σύγχρονα 64 bit:

x86_64-w64-mingw32-gcc main.c -ο main.exe

Αντίστοιχα υπάρχουν και για c++:

  • i686-w64-mingw32-g++ main.cpp -ο main.exe
  • x86_64-w64-mingw32-g++ main.cpp -ο main.exe

Σημαντικό είναι το παραγόμενο αρχείο να έχει την κατάληξη .exe. Ακόμα όποιες βιβλιοθήκες .dll υπάρχουν είναι καλό να είναι στον ίδιο φάκελο με το main.exe. Πρότασή μου είναι να κάνετε έναν φάκελο release που θα έχει όλα τα .dll μαζί με τo .exe.

Για να τρέξετε την εφαρμογή αξιοποιείτε το wine.

wine64 main.exe
7 «Μου αρέσει»

Πολύ ωραίο και ενδιαφέρον! :partying_face:
Και έτσι βλέπουμε πως μπορούμε να κάνουμε compile C/C++ και για Windows συστήματα μέσω GNU/LInux.

1 «Μου αρέσει»

Για να γίνει πιο κατανοητό από μη προγραμματιστές, μήπως μπορείς να μας δώσεις ένα παράδειγμα με συγκεκριμένο.exe

Μα δεν υπάρχει συγγεκριμένο exe αλλά πως να μετατρέπεις windows C/C++ κώδικα σε .exe σε linux.