View on GitHub

oop

Αντικειμενοστραφής Προγραμματισμός (C++)

wxWidgets (cross platform GUI framework)

Εγκατάσταση wxWidgets σε Windows με MINGW

Βεβαιωθείτε ότι έχετε εγκαταστήσει τον MINGW compiler (π.χ. TDM-GCC-64) και ότι το g++ βρίσκεται στο PATH.

> g++ --version
g++ (tdm64-1) 9.2.0
Copyright (C) 2019 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

Βήματα μεταγλώττισης wxWidgets και των samples και demos

  1. Μεταφόρτωση του πηγαίου κώδικα wxWidgets. Επιλογή του Windows ZIP από το source code του Latest Development Release: 3.1.4 (αρχείο wxWidgets-3.1.4.zip)

  2. Αποσυμπίεση του wxWidgets-3.1.4.zip σε φάκελο C:\wxWidgets-3.1.4 (στο αρχείο C:\wxWidgets-3.1.4\docs\msw\install.md υπάρχουν οδηγίες εγκατάστασης για Windows και MINGW)

  3. Μεταγλώττιση wxWidgets (δημιουργία dlls στο \lib\gcc_dll, setup.h στο \lib\gcc_dll\mswu\wx, η μεταγλώττιση αναμένεται να διαρκέσει αρκετή ώρα). Οι ακόλουθες εντολές δίνονται από το command prompt και ενώ βρισκόμαστε αρχικά στον φάκελο C:\wxWidgets-3.1.4

     > cd C:\wxWidgets-3.1.4\build\msw
     > mingw32-make -f makefile.gcc SHELL=CMD.EXE SHARED=1 UNICODE=1 BUILD=release clean
     > mingw32-make -f makefile.gcc SHELL=CMD.EXE SHARED=1 UNICODE=1 BUILD=release
    
  4. Μεταγλώττιση των samples και demos (οι φάκελοι samples και demos βρίσκονται κάτω από τον φάκελο C:\wxWidgets-3.1.4)

     > cd C:\wxWidgets-3.1.4\samples
     > mingw32-make -f makefile.gcc SHELL=CMD.EXE SHARED=1 UNICODE=1 BUILD=release
     > cd C:\wxWidgets-3.1.4\demos
     > mingw32-make -f makefile.gcc SHELL=CMD.EXE SHARED=1 UNICODE=1 BUILD=release
    

Μεταγλώττιση και εκτέλεση του Hello World GUI app (μεταγλώττιση σε windows με MINGW)

Παράδειγμα: παράθυρο με μενού

Αντιγραφή των ακόλουθων dll που έχουν δημιουργηθεί στο C:\wxWidgets-3.1.4\lib\gcc_dll στον τρέχοντα φάκελο της εφαρμογής (ή σε κάποιον φάκελο στο path του συστήματος)

* wxbase314u_gcc_custom.dll
* wxmsw314u_core_gcc_custom.dll

Μεταγλώττιση του hello_world.cpp

> g++ hello_world.cpp -IC:\\wxWidgets-3.1.4\\include -IC:\\wxWidgets-3.1.4\\lib\\gcc_dll\\mswu -LC:\\wxWidgets-3.1.4\\lib\\gcc_dll -lwxmsw31u_core -lwxbase31u -o hello_world

Εναλλακτικά αν έχει οριστεί ως μεταβλητή περιβάλλοντος (environment variable) η WXWIN με WXWIN=C:\wxWidgets-3.1.4 τότε η μεταγλώττιση μπορεί να γίνει ως εξής:

> g++ hello_world.cpp -I%WXWIN%\\include -I%WXWIN%\\lib\\gcc_dll\\mswu -L%WXWIN%\\lib\\gcc_dll -lwxmsw31u_core -lwxbase31u -o hello_world

Εκτέλεση κώδικα

> hello_world.exe

Εγκατάσταση wxWidgets σε Ubuntu 18.04

  1. Εγκατάσταση gtk

     $ sudo apt-get install libgtk-3-dev
    
  2. Μεταφόρτωση του πηγαίου κώδικα Source for Linux, macOS, etc (πρόκειται για αρχείο της μορφής wxWidgets-3.1.4.tar.bz2)

  3. Αποσυμπίεση σε φάκελο ~/wxWidgets-3.1.4 (στο αρχείο ~/wxWidgets-3.1.4/docs/gtk/install.md υπάρχουν οδηγίες εγκατάστασης για Linux)

  4. Μεταγλώττιση wxWidgets

     $ cd ~/wxWidgets-3.1.4
     $ mkdir build-gtk 
     $ cd build-gtk
     $ ../configure --with-gtk  
     $ make
    
  5. Εγκατάσταση header files και βιβλιοθηκών

     $ sudo su
     $ make install
     $ ldconfig
    
  6. Μεταγλώττιση των samples και demos

     $ cd samples; make;cd ..
     $ cd demos; make
    

Μεταγλώττιση και εκτέλεση του Hello World GUI app (μεταγλώττιση σε Ubuntu 18.04 με g++)

Παράδειγμα: παράθυρο με μενού

Μεταγλώττιση του hello_world.cpp

$ g++ hello_world.cpp  `wx-config --cxxflags --libs` -o hello_world

Εκτέλεση κώδικα

$ ./hello_world

Εγκατάσταση wxWidgets σε OSX

  1. Μεταφόρτωση του πηγαίου κώδικα Source for Linux, macOS, etc (πρόκειται για αρχείο της μορφής wxWidgets-3.1.4.tar.bz2)

  2. Αποσυμπίεση σε φάκελο ~/wxWidgets-3.1.4 (στο αρχείο ~/wxWidgets-3.1.4/docs/osx/install.txt υπάρχουν οδηγίες εγκατάστασης για OSX)

  3. Μεταγλώττιση wxWidgets

     $ cd ~/wxWidgets-3.1.4
     $ mkdir build-cocoa-debug
     $ cd build-cocoa-debug
     $ ../configure --enable-debug
     $ make
    
  4. Εγκατάσταση των header files στο standard directory /usr/local/include και της βιβλιοθήκης στο standard directory /usr/local/lib

     $ sudo su
     $ make install
     $ exit
    
  5. Μεταγλώττιση των samples και demos

     $ cd samples; make; cd ..
     $ cd demos; make
    

Hello World GUI app

Παράθυρο με μενού


Άλλες πηγές