множество свойств и возможностей. Не беспокойтесь об этом, иначе вы полностью запутаетесь. Если ваш проект станет вести себя странно, попросите опытного друга помочь вам или создайте новый проект с нуля. Со временем потихоньку начинайте экспериментировать со свойствами и возможностями.
Приложение Г
Инсталляция библиотеки FLTK
“Если код и комментарии противоречат друг другу,
то, вероятно, оба неверны”.
Норм Шрайер (Norm Schreyer)
В этом приложении показано, как загрузить, инсталлировать и отредактировать связи графической библиотеки FLTK.
Г.1. Введение
Мы выбрали библиотеку FLTK (Fast Light Tool Kit) (читается как “фултик”) как основу для нашего представления графики и решения задач, связанных с созданием графического пользовательского интерфейса, потому что она является переносимой, относительно простой, относительно широко распространенной и легко инсталлируемой. Мы покажем, как инсталлировать библиотеку FLTK в среде Microsoft Visual Studio, потому что именно это интересует большинство наших студентов и вызывает у них наибольшие затруднения. Если вы используете какую-то другую систему (как некоторые из наших студентов), просто поищите в главном каталоге загружаемых файлов (раздел Г.3) инструкции, касающиеся вашей системы.
Если вы используете библиотеку, не являющуюся частью стандарта ISO C++, то вам придется загрузить ее, инсталлировать и правильно использовать в своем коде. Эта задача редко бывает тривиальной, так что инсталлирование библиотеки FLTK — неплохая задача, потому что загрузка и инсталлирование даже самой хорошей библиотеки часто вызывают трудности, если вы никогда не делали этого раньше. Не стесняйтесь спрашивать совета у людей, делавших это раньше, но не перепоручайте им свои проблемы, а учитесь у них.
Отметим, что в реальности файлы и процедуры могут немного отличаться от того, что мы описываем. Например, может появиться новая версия библиотеки FLTK или вы можете изменить версию Visual Studio, или вообще перейти в совершенно другую среду.
Г.2. Загрузка библиотеки FLTK
Перед тем как делать что-нибудь, сначала проверьте, не установлена ли библиотека FLTK на вашем компьютере (см. раздел Г.5). Если нет, то загрузите файлы библиотеки.
1. Зайдите на веб-страницу http://fltk.org. (Если не получится, то можете скопировать эти файлы с веб-сайта, посвященного этой книге (www.stroustrup.com/Programming/FLTK).
2. Щелкните на кнопке Download в навигационном меню.
3. Выберите в выпадающем меню пункт FLTK 1.1.x и щелкните на кнопке Show Download Locations.
4. Выберите место, откуда вы будете загружать файл, и загрузите файл с расширением .zip.
Полученный вами файл записан в формате zip. Это формат архивации, удобный для передачи файлов по сети. Для того чтобы разархивировать файлы и привести их к обычному виду, вам нужна специальная программа, например, в системе Windows для этого подходят программы WinZip и 7-Zip.
Г.3. Инсталляция библиотеки FLTK
При выполнении инструкций может возникнуть одна из двух проблем: за время, прошедшее с момента выхода нашей книги, что-то изменилось (это случается), или вы не понимаете терминологию (в этом случае мы ничем не можем вам помочь; извините). В последнем случае позовите друга, который вам все объяснит.
1. Распакуйте загруженный файл и откройте основной каталог, fltk-1.1.? В каталоге системы C++ (например, vc2005 или vcnet) откройте файл fltk.dsw. Если вас попросят подтвердить обновление всех старых проектов, отвечайте Yes to All.
2. В меню Build выберите команду Build Solution. Это может занять несколько минут. Исходный код компилируется в статические библиотеки (static link libraries), поэтому вам не придется компилировать исходный код библиотеки FLTK каждый раз при создании нового проекта. После завершения процесса закройте среду Visual Studio.
3. В основном каталоге библиотеки FLTK откройте подкаталог lib. Скопируйте (а не просто переместите или перетащите) все файлы с расширением .lib, за исключением файла README.lib (их должно быть семь) в каталог C:Program FilesMicrosoft Visual StudioVclib.
4. Вернитесь в основной каталог библиотеки FLTK и скопируйте подкаталог FL в каталог C:Program FilesMicrosoft Visual StudioVcinclude.
Эксперты скажут вам, что было бы лучше инсталлировать библиотеку, а не копировать файлы в каталоги C:Program FilesMicrosoft Visual StudioVclib и C:Program FilesMicrosoft Visual StudioVcinclude. Они правы, но мы не стремимся быть экспертами по среде Visual Studio. Если эксперты будут настаивать, попросите их продемонстрировать лучшую альтернативу.
Г.4. Использование библиотеки FLTK в среде Visual Studio
1. Создайте новый проект в среде Visual Studio, внеся одно изменение в обычной процедуре: выбирая тип проекта, выберите опцию “Win32 project”, а не “Console application”. Убедитесь, что вы создаете “Empty project”; в противном случае мастер добавит в ваш проект много лишнего кода, который вы не поймете и вряд ли будете использовать.
2. Находясь в среде Visual Studio, выберите команду Project в главном меню, а в выпадающем меню выполните команду Properties.
3. В левом меню окна Properties щелкните на пиктограмме Linker. В открывающемся подменю выберите команду Input. В поле редактирования Dependencies, находящемся справа, введите следующий текст:
fltkd.lib wsock32.lib comctl32.lib fltkjpegd.lib fltkimagesd.lib
(Следующий шаг может оказаться ненужным, поскольку в настоящее время он выполняется по умолчанию.)
В поле редактирования Ignore Specific Library введите следующий текст:
libcd.lib
4. Этот шаг может оказаться ненужным, так как в настоящее время опция /MDd включается по умолчанию. В левом меню того же самого окна Properties выберите команду C/C++, чтобы открыть другое подменю. Открыв подменю, выберите команду Code Generation. В правом меню измените опцию Runtime Library на Multi-threaded Debug DLL (/MDd). Щелкните на кнопке OK, чтобы закрыть окно Properties.
Г.5. Как тестировать, если не все работает
Создайте новый файл с расширением .cpp в новом проекте и введите следующий код. Он должен скомпилироваться без проблем.
#include <FL/Fl.h>
#include <FL/Fl_Box.h>
#include <FL/Fl_Window.h>
int main()
{
Fl_Window window(200, 200, "Window title");
Fl_Box box(0,0,200,200,"Hey, I mean, Hello, World!");
window.show();
return Fl::run();
}
Если что-то не работает, выполните следующее.
• Если вы получили сообщение компилятора, утверждающее, что файл с расширением .lib невозможно найти, то, возможно, вы сделали что-то не так при инсталлировании библиотеки. Внимательно проверьте п. 3, в котором указан путь для сохранения библиотечных файлов (.lib) на вашем компьютере.
• Если вы получили сообщение компилятора, утверждающее, что файл с расширением .h невозможно открыть, значит, скорее всего, вы ошиблись при инсталлировании. Внимательно проверьте п. 3, в котором указан путь для