Вход на хостинг
IT-новости
20.04.2016 iPhone 2017 года поместят в водонепроницаемый корпус из стекла
Линейка iPhone в новом году серьезно поменяется. В этом уверен аналитический исследователь Мин Чи Ку......
30.07.2015 Ищем уникальный контент для сайта
Ищем уникальный контент для сайта Без уникального контента Ваш сайт обречен на то, что его страницы......
Показываем созданное творение – window –> show(). Привязываем callback-фунцию quit_cb() на закрытие приложения. И наконец вызываем обработчик событий для всего созданного приложения – return Fl::run().
Если некоторые параметры остались для вас непонятными – обращайтесь к документации. Вполне возможно, что в версии, которую вы будете использовать, будут изменены некоторые параметры (это характерно для следующей версии FLTK 2.0).
Оформим данный файл как My_CPP_Test.cpp. И создадим make-файл для компиляции программы.
Makefile
FLTK=/usr/local/fltk/bin/fltk-config
OPTIONS=--compile
My_CPP_Test:
$(FLTK) $(OPTIONS) My_CPP_Test.cpp
clean:
rm My_CPP_Test
rebuild:
make clean; make My_CPP_Test
Теперь, запустив команду make, вы скомпилируете это тестовое приложение. У меня оно получилось размером примерно в 400 Кб. Посмотрим на него чуточку внимательнее.
bash-2.05b$ file My_CPP_Test
My_CPP_Test: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), dynamically linked (uses shared libs), not stripped
Уберем лишнюю отладочную информацию и посмотрим, от каких библиотек зависит наше новое приложение.
bash-2.05b$ strip My_CPP_Test
В итоге приложение теперь «похудело» до 240 Кб.
bash-2.05b$ ldd My_CPP_Test
libm.so.6 => /lib/libm.so.6 (0x40025000)
libXext.so.6 => /usr/X11R6/lib/libXext.so.6 (0x40049000)
libX11.so.6 => /usr/X11R6/lib/libX11.so.6 (0x40057000)
libc.so.6 => /lib/libc.so.6 (0x4011e000)
libdl.so.2 => /lib/libdl.so.2 (0x40254000)
/lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x40000000)
Достаточно симпатично, на мой взгляд. Вполне вероятно, что удастся запустить даже на дистрибутивах Linux, основанных на ядре 2.0.X, не говоря про современные.
Что и было протестировано на дистрибутиве SUSE Linux с ядром версии 2.2.18 и сопутствующими библиотеками (libc-2.1.3, ld-2.1.3). Радужные ожидания растаяли при запуске программы ldd: