A következő példaprogramot akartam lefordítani:
#include <gtkmm.h>
int main(int argc, char *argv[])
{
Glib::RefPtr<Gtk::Application> app =
Gtk::Application::create(argc, argv,
"org.gtkmm.examples.base");
Gtk::ApplicationWindow window;
return app->run(window);
}
Ezzel a paranccsal próbáltam fordítani:
g++ simple.cc -o simple `pkg-config gtkmm-3.0 --cflags --libs`
Hibaüzenet: no matching function for call to Gtk::Application::create (a teljes hibaüzenetet nem tudom most bemásolni, mert azon a gépen ahol a gtkmm telepítve van nincs internet)
Ha Anjutával létrehozok egy Gtk C++ projektet, akkor ugyanez a kód lefordul. Már mindent átnéztem, de nem jövök rá, hogy mi lehet a gond. Biztos nem látom a fától az erdőt. Valami ötlet?
- 4615 megtekintés
Hozzászólások
Csak egy felületes kérdés, mi a pontos hibakimenet?
--
Coding for fun. ;)
- A hozzászóláshoz be kell jelentkezni
Illetve legy oly kedves az #include -ben a kacsacsoroket < / > tagekre kicserelni. Koszi.
--
Ki oda vagyik, hol szall a galamb, elszalasztja a kincset itt alant. | Gentoo Portal
- A hozzászóláshoz be kell jelentkezni
Köszi
---
arch linux user
- A hozzászóláshoz be kell jelentkezni
Ezt kifelejtettem, javítottam.
---
arch linux user
- A hozzászóláshoz be kell jelentkezni
Nálam ez van:
g++ simple.cc -o simple `pkg-config gtkmm-3.0 --cflags --libs` simple.cc: In function ‘int main(int, char**)’: simple.cc:5:14: error: missing template arguments before ‘app’ simple.cc:5:14: error: expected ‘;’ before ‘app’ simple.cc:11:8: error: ‘app’ was not declared in this scope
Ezért javítva:
#include <gtkmm.h>
int main(int argc, char *argv[])
{
Glib::RefPtr <Gtk::Application> app =
Gtk::Application::create(argc, argv,
"org.gtkmm.examples.base");
Gtk::ApplicationWindow window;
return app->run(window);
}
Hibátlanul lefordul.
Persze, így se jó, mert segfaultol. A véglegesen javított kód így néz ki:
#include <gtkmm.h>
int main(int argc, char *argv[])
{
Glib::RefPtr <Gtk::Application> app =
Gtk::Application::create(argc, argv,
"org.gtkmm.examples.base");
Gtk::Window window;
return app->run(window);
}
- A hozzászóláshoz be kell jelentkezni
A kacsacsőröket mindig elfelejtem, hogy nem jelennek meg rendesen.
A végleges kódodat este kipróbálom, most nincs rá lehetőségem.
---
arch linux user
- A hozzászóláshoz be kell jelentkezni