каждый. Я изучаю книгу Бьярна Страуструпа «Принцип программирования и практика с использованием C ++». Я работаю с Netbeans 7.3 в Ubuntu 12.10. Я хочу построить и запустить эту простую графическую программу в главе 12 этой книги. Программа выглядит так:
#include "Simple_window.h" // get access to our window library
#include "Graph.h" // get access to our graphics library facilities
int main()
{
using namespace Graph_lib; // our graphics facilities are in Graph_lib
Point tl(100,100); // to become top left corner of window
Simple_window win(tl,600,400,"Canvas"); // make a simple window
Polygon poly; // make a shape (a polygon)
poly.add(Point(300,200)); // add a point
poly.add(Point(350,100)); // add another point
poly.add(Point(400,200)); // add a third point
poly.set_color(Color::red); // adjust properties of poly
win.attach (poly); // connect poly to the window
win.wait_for_button(); // give control to the display engine
}
Я не могу построить эту программу в течение 2 дней. Я добавил все графические библиотеки в http://www.stroustrup.com/Programming/Graphics/ в мой проект. Я также успешно установил FLTK-1.1.10 и настроил его на Netbeans. Все программы о FLTK работают в Netbeans очень хорошо. Но когда дело доходит до сборки и запуска программы, показанной выше, возникает много ошибок. Ошибки выглядят так: «Неопределенная ссылка на …». Как я могу решить эту проблему в Netbeans?
Ошибки происходят так:
g ++ -o dist / Debug / GNU-Linux-x86 / cppapplication_3 build / Debug / GNU-Linux-x86 / GUI.o build / Debug / GNU-Linux-x86 / Graph.o build / Debug / GNU-Linux-x86 / Simple_window.o build / Debug / GNU-Linux-x86 / Window.o build / Debug / GNU-Linux-x86 / main.o -L ../../ Загрузки / fltk-1.1.10 / lib -lfltk -lfltk_forms -lfltk_gl -lfltk_images -lfltk_jpeg
../../Downloads/fltk-1.1.10/lib/libfltk.a(Fl_get_system_colors.o): в функции getsyscolor(char const*, char const*, char const*, char const*, void (*)(unsigned char, unsigned char, unsigned char))':
XGetDefault»
Fl_get_system_colors.cxx:(.text+0x17): undefined reference to
Fl_get_system_colors.cxx :(. Text + 0x38): неопределенная ссылка на XParseColor'
fl_parse_color (char const *, unsigned char&без знака&без знака&) ‘:
../../Downloads/fltk-1.1.10/lib/libfltk.a(Fl_get_system_colors.o): In function
Fl_get_system_colors.cxx :(. Text + 0x2cd): неопределенная ссылка на `XParseColor ‘… …
Похоже, вам нужно указать библиотеки X, которые будут связаны:
-lXext -lX11
Если вы загрузили FLTK 1.3.3, имена включений будут отличаться от предыдущих версий. Так что на странице 1203 в книге Бьярна Страуструпа учебник о том, как установить fltk, больше не годится, потому что они сильно изменились. Вот учебник о том, как установить его для VS и как настроить его в проекте Win32. http://www.c-jump.com/bcc/common/Talk2/Cxx/FltkInstallVC/FltkInstallVC.html
А на сайте fltk есть несколько учебных пособий (не так хорошо объясненных, как Бьярне, но все в порядке).