использование библиотеки agg (antigrain) и работа с gsl-оболочкой - PullRequest
0 голосов
/ 23 октября 2011

Моя главная цель - заставить GSL Shell работать на моей системе OSX 10.7. Пока у меня есть правильная версия lua с правильными работающими патчами. У меня также есть рабочая версия GSL, которая компилирует и запускает примеры программ. Я могу отлично собрать agg, а также запустить их примеры программ, запустив make в папке macosx_sdl.

Мой первый вопрос: как мне создать свой собственный проект с помощью agg? Я знаю, что вы должны просто добавить файлы в файл вашего проекта и перейти, но это, похоже, не хочет компилировать для меня. Это просто случай добавления каталога включения и libagg.a?

Наконец, как мне создать оболочку gsl? В настоящее время он много жалуется на папку agg-plot, поэтому куда мне поместить файлы agg, чтобы сделать эту сборку, а затем, когда я это сделаю, куда мне поместить файлы agg, чтобы к ним могли добраться сценарии lua ?!

Надеюсь, кто-то может помочь!

1 Ответ

1 голос
/ 02 ноября 2011

Как правило, для использования библиотеки AGG необходимо убедиться, что компилятор может найти файлы заголовков и, во время компоновки, библиотеки в виде статических или динамических библиотек.

Чтобы сделать файлы заголовков и библиотеки доступными, вам необходимо принять во внимание систему, которая используется для сборки программного обеспечения.Если используется традиционная система makefile, вам нужно добавить несколько флагов, чтобы убедиться, что файл заголовков найден.Этого можно достичь, добавив в make-файл что-то вроде:

CFLAGS + = -I / path / to / agg / headers

и для компоновщика:

LIBS += -L / path / to / agg / library -lagg -lm

В конкретном случае GSL Shell 1.1 файл "make-packages" используется в Makefile для настройки необходимых пакетов.Здесь вы можете добавить флаги, необходимые для поиска библиотеки AGG:

AGG_INCLUDES = -I / usr / include / agg2 AGG_LIBS = -lagg -lX11 -lpthread -lsupc ++

, вам просто нужно изменитьпуть, предоставленный параметром «-I», и в AGG_LIBS добавьте параметр «-L / path / to / agg / library», чтобы указать путь, в котором расположены библиотеки AGG.

Обратите внимание, чтобиблиотеки agg зависят от других библиотек.Например, в Linux ему нужна как минимум библиотека X11.Библиотеки supc ++ могут понадобиться, если компоновка выполняется путем вызова gcc вместо g ++, поскольку, если используется gcc, библиотеки времени выполнения C ++ не включаются.

...