【发布时间】:2014-04-13 20:03:13
【问题描述】:
我尝试通过从这里下载的 CodeBlocks 编译这些文件:
https://git.gnome.org/browse/gtkmm-documentation/tree/examples/book/frame?h=master
当我尝试用代码块编译它时,我得到了那个错误:
main.cpp|8|对`ExampleWindow::ExampleWindow()'的未定义引用|
但是我从终端编译它是有效的:
g++ main.cc examplewindow.cc -o simple `pkg-config gtkmm-3.0 --cflags --libs`
有没有办法让代码块编译两个源文件?
------------- 构建:在 youtube 中调试(编译器:GNU GCC 编译器)---------------
g++ -Wall -fexceptions -g -std=gnu++11 -pthread -I/usr/include/gtkmm-3.0 -I/usr/lib/x86_64-linux-gnu/gtkmm-3.0/include -I/usr/include/atkmm-1.6 -I/usr/include/giomm-2.4 -I /usr/lib/x86_64-linux-gnu/giomm-2.4/include -I/usr/include/pangomm-1.4 -I/usr/lib/x86_64-linux-gnu/pangomm-1.4/include -I/usr/include /gtk-3.0 -I/usr/include/cairomm-1.0 -I/usr/lib/x86_64-linux-gnu/cairomm-1.0/include -I/usr/include/gdk-pixbuf-2.0 -I/usr/include /gtk-3.0/unix-print -I/usr/include/gdkmm-3.0 -I/usr/lib/x86_64-linux-gnu/gdkmm-3.0/include -I/usr/include/atk-1.0 -I/usr /include/glibmm-2.4 -I/usr/lib/x86_64-linux-gnu/glibmm-2.4/include -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0 /include -I/usr/include/sigc++-2.0 -I/usr/lib/x86_64-linux-gnu/sigc++-2.0/include -I/usr/include/pango-1.0 -I/usr/include/cairo -I /usr/include/pixman-1 -I/usr/include/freetype2 -I/usr/include/libpng12 -I/usr/include/at-spi2-atk/2.0 -I/usr/include/gio-unix-2.0 / -I/usr/include/harfbuzz -lgtkmm-3.0 -latkmm-1.6 -lgdkmm-3.0 -lgiomm-2.4 -lpangomm-1.4 -lgtk-3 -lglibmm-2.4 -lcairomm-1.0 -lgdk-3 -latk-1.0 -lgio-2.0 -lpangocairo-1.0 -lgdk_pixbuf-2.0 -lcairo-gobject -lpango-1.0 -lcairo -lsigc-2.0 -lgobject-2.0 -lglib-2.0 -I/usr /include/ -I/usr/lib/x86_64-linux-gnu/ -c /home/bahaa/programming/c++/youtube/main.cpp -o obj/Debug/main.o g++ -o bin/Debug/youtube obj/Debug/main.o -L/usr/lib/mysql -lmysqlclient -lgtkmm-3.0 -latkmm-1.6 -lgdkmm-3.0 -lgiomm-2.4 -lpangomm-1.4 -lgtk-3 -lglibmm -2.4 -lcairomm-1.0 -lgdk-3 -latk-1.0 -lgio-2.0 -lpangocairo-1.0 -lgdk_pixbuf-2.0 -lcairo-gobject -lpango-1.0 -lcairo -lsigc-2.0 -lgobject-2.0 -lglib-2.0 obj/ Debug/main.o:在函数
main': /home/bahaa/programming/c++/youtube/main.cpp:8: undefined reference toExampleWindow::ExampleWindow()' /home/bahaa/programming/c++/youtube/main.cpp:8:未定义的引用ExampleWindow::~ExampleWindow()' /home/bahaa/programming/c++/youtube/main.cpp:8: undefined reference toExampleWindow::~ExampleWindow()' collect2:错误:ld 返回 1 退出 status 进程以状态 1 终止(0 分 1 秒) 3 错误,0 个警告(0 分 1 秒)
https://www.youtube.com/watch?v=3v3koVNb7hU&feature=youtu.be
【问题讨论】:
-
你的项目中有它吗?它的布局是怎样的?您在构建窗口中看到什么命令?答案是肯定的,但如果你想知道为什么你没有成功,你必须展示你的尝试。
-
我只是在代码块中添加了然后将它们重命名
标签: c++ ubuntu codeblocks gtkmm