Ubuntu 12.04 中的 gtkmm 3 出错
error with gtkmm 3 in ubuntu 12.04
我在 Ubuntu 12.04 中安装 libgtkmm-3.0-dev,并尝试使用 C++ 和 gtkmm 3 学习和编写程序我转到此链接"http://developer.gnome.org/gtkmm-tutorial/unstable/sec-basics-simple-example.html.en"并尝试编译简单的示例程序:
#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);
}
我的文件名是"basic.cc",我打开终端并键入以下命令进行编译:
g++ basic.cc -o basic `pkg-config gtkmm-3.0 --cflags --libs`
编译完成没有任何错误,但是当我尝试在终端中运行类型为./basic的程序时,出现以下错误:
~$ ./simple
./simple: symbol lookup error: ./simple: undefined symbol:_ZN3Gtk11Application6createERiRPPcRKN4Glib7ustringEN3Gio16ApplicationFlagsE
~$
我该如何解决这个问题?
我可以用这个命令来堆积任何 gtkmm 2.4 代码:"G++ basic.cc -o 基本pkg-config gtkmm-3.0 --cflags --libs
"和这个命令:"g++ basic.cc -o 基本pkg-config gtkmm-2.4 --cflags --libs
"
谢谢
我想你遇到了这个gtkmm错误,显然是由最新版本的GTK+触发的,现在已经修复了:https://bugzilla.gnome.org/show_bug.cgi?id=681323
我已经要求 Ubuntu 更新他们的软件包,但如果他们这样做,他们通常会很慢:https://bugs.launchpad.net/ubuntu/+source/gtkmm3.0/+bug/1046469
您可能想尝试重新安装libgtkmm-3.0-dev。代码对我来说编译得很好,但我遇到了一个 Seg 错误。当我将Gtk::ApplicationWindow
更改为Gtk::Window
时,它确实有效。
您的安装没有任何问题。 该代码很糟糕。
再试一次,使用
Gtk::Window window;
而不是应用程序窗口。 当给定类的 GNOME 文档有"TODO"的描述时,这是一件坏事。
- 访问者访问变体并返回不同类型时出错
- 在Linux for Windows上编译C++代码时出错
- 读取文件的最后一行并输入到链接列表时出错
- 重载操作程序时出错>>用于类中的字符串 memebr
- 调用专用模板时出错"no matching function for call to [...]"
- C++-试图将函数指针推回到另一个CPP文件中的矢量时出错
- LINK 尝试使用 OpenSSL evp aes 256 c++ 时出错
- 在Google Kick start中提交时出错
- 在c++中访问int到类对象的映射时出错
- Windows 10-使用gtkmm-3.0库和g++[包括再现]的分段故障
- 分段错误当我试图运行程序时出错
- 使用dynamic_cast和构造函数时出错
- CHECK(调用)函数在Google Colab中出错
- 用pybind11包装C++抽象类时出错
- 为x86而非x64编译时出错
- 从R调用C++函数并对其进行集成时出错
- 这个函数哪里出错了
- C++GTKMM gui循环依赖关系
- C++ 创建包含链表和字符串的对象的链接列表时出错
- Ubuntu 12.04 中的 gtkmm 3 出错