This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision | ||
programming:gtk4 [2022/03/21 05:04] nanodano |
programming:gtk4 [2022/03/21 05:19] (current) nanodano |
||
---|---|---|---|
Line 150: | Line 150: | ||
cd libsigc++-3.2.0 | cd libsigc++-3.2.0 | ||
cmake . | cmake . | ||
+ | ./ | ||
make | make | ||
sudo make install | sudo make install | ||
Line 158: | Line 159: | ||
tar xzf glibmm-2.70.0.tar.gz | tar xzf glibmm-2.70.0.tar.gz | ||
cd glibmm-2.70.0 | cd glibmm-2.70.0 | ||
- | ./ | + | ./ |
make | make | ||
sudo make install | sudo make install | ||
Line 167: | Line 168: | ||
tar xBf cairomm-1.16.1.tar.xz | tar xBf cairomm-1.16.1.tar.xz | ||
cd cairomm-1.16.1 | cd cairomm-1.16.1 | ||
- | ./ | + | ./ |
make | make | ||
sudo make install | sudo make install | ||
Line 176: | Line 177: | ||
tar xzf pangomm-2.50.0.tar.gz | tar xzf pangomm-2.50.0.tar.gz | ||
cd pangomm-2.50.0 | cd pangomm-2.50.0 | ||
- | ./ | + | ./ |
make | make | ||
sudo make install | sudo make install | ||
Line 185: | Line 186: | ||
tar xBf gtkmm-4.6.0.tar.xz | tar xBf gtkmm-4.6.0.tar.xz | ||
cd gtkmm-4.6.0 | cd gtkmm-4.6.0 | ||
- | ./ | + | ./ |
make | make | ||
sudo make install | sudo make install | ||
Line 193: | Line 194: | ||
- | When compiling, use '' | + | When compiling, use '' |
<code bash> | <code bash> | ||
+ | # Compile app with gtk4 | ||
g++ main.cpp `pkg-config gtkmm-4.0 --cflags --libs` -std=c++20 | g++ main.cpp `pkg-config gtkmm-4.0 --cflags --libs` -std=c++20 | ||
+ | |||
+ | # Set path for shared library when running | ||
+ | LD_LIBRARY_PATH=/ | ||
+ | </ | ||
+ | |||
+ | Here is a gtkmm hello world: | ||
+ | |||
+ | <code cpp main.cpp> | ||
+ | // gtkmm4 example | ||
+ | |||
+ | // Compile with: | ||
+ | // g++ main.cpp `pkg-config gtkmm-4.0 --cflags --libs` -std=c++20 | ||
+ | |||
+ | // Run with | ||
+ | // LD_LIBRARY_PATH=/ | ||
+ | #include < | ||
+ | |||
+ | class MyWindow : public Gtk::Window | ||
+ | { | ||
+ | public: | ||
+ | MyWindow(); | ||
+ | }; | ||
+ | |||
+ | MyWindow:: | ||
+ | { | ||
+ | set_title(" | ||
+ | set_default_size(200, | ||
+ | } | ||
+ | |||
+ | int main(int argc, char* argv[]) | ||
+ | { | ||
+ | auto app = Gtk:: | ||
+ | |||
+ | return app-> | ||
+ | } | ||
</ | </ |