-2

我的主要目标是让 GSL Shell 在我的 OSX 10.7 系统上运行。到目前为止,我拥有运行正确补丁的正确版本的 lua。我还有一个 GSL 的工作版本,它可以编译和运行示例程序。我可以完美地构建 agg 并通过在 macosx_sdl 文件夹中运行 make 来运行他们的示例程序。

我的第一个问题是我到底如何用 agg 创建自己的项目?我知道你应该简单地将文件添加到你的项目文件中然后去,但这似乎不想为我编译。是否只是添加包含目录和 libagg.a 的情况?

最后,我如何构建 gsl shell?目前它经常抱怨 agg-plot 文件夹,所以我应该把 agg 文件放在哪里来进行这个构建,然后当我完成它时,我应该把 agg 文件放在哪里,以便 lua 脚本可以访问它们?!

希望有人能帮忙!

4

1 回答 1

1

一般来说,要使用 AGG 库,您需要确保编译器能够找到头文件,并且在链接期间能够找到库,无论是静态库还是动态库。

要使头文件和库可用,您需要考虑用于构建软件的系统。如果使用传统的 makefile 系统,您需要添加一些标志以确保可以找到头文件。这可以通过在 makefile 中添加如下内容来实现:

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

对于链接器:

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

在 GSL Shell 1.1 的特定情况下,Makefile 中使用文件“make-packages”来配置所需的包。您可以在此处添加定位 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 库。如果通过调用 gcc 而不是 g++ 进行链接,则可能需要库 supc++,因为如果使用 gcc,则不包括 C++ 运行时库。

于 2011-11-02T13:42:14.413 回答