【发布时间】:2016-04-19 02:12:48
【问题描述】:
我正在尝试使用 automake 构建我的项目。特别是在使用 Allegro5 时。
我可以使用以下命令构建我的代码
g++ -std=c++0x *.cpp -o mygame $(pkg-config --libs allegro-5.0 \
allegro_acodec-5.0 allegro_audio-5.0 allegro_color-5.0 allegro_dialog-5.0 \
allegro_font-5.0 allegro_image-5.0 allegro_main-5.0 allegro_memfile-5.0 \
allegro_physfs-5.0 allegro_primitives-5.0 allegro_ttf-5.0)
但我的 Makefile 将无法工作。
这是我的 src/Makefile.am
bin_PROGRAMS = mygame
AM_CXXFLAGS = "-std=c++0x"
mygame_SOURCES = Animation.cpp Body.cpp GameObject.cpp Menu.cpp Vector3.cpp \
Arena.cpp Button.cpp Keyboard.cpp Mesh.cpp Assets.cpp Character.cpp \
main.cpp Mouse.cpp Barrier.cpp Environment.cpp Manager.cpp TitleMenu.cpp
mygame_LDADD = allegro-5.0 allegro_acodec-5.0 allegro_audio-5.0 \
allegro_color-5.0 allegro_dialog-5.0 allegro_font-5.0 allegro_image-5.0 \
allegro_main-5.0 allegro_memfile-5.0 allegro_physfs-5.0 \
allegro_primitives-5.0 allegro_ttf-5.0
CLEANFILES = mygame *.o
这是我的 configure.ac
AC_INIT(bayou, 0.1.0)
AM_INIT_AUTOMAKE
AC_LANG_CPLUSPLUS
AC_PROG_CXX
LT_INIT
AC_OUTPUT(
Makefile \
src/Makefile\
)
运行我的第一个命令就可以了。运行 make 给了我
make: *** No rule to make target `allegro-5.0', needed by 'mygame'. Stop.
那么我应该如何设置我的 configure.ac 和 Makefile.am,以便我可以使用通常与 pkg-config 链接的库?
【问题讨论】:
-
我想我发现了如何使用 -L 和 -lallegro 设置命令。我需要运行
pkg-config --libs allegro-5.0 allegro_acodec-5.0 allegro_audio-5.0 allegro_color-5.0 llegro_dialog-5.0 allegro_font-5.0 allegro_image-5.0 allegro_main-5.0 allegro_memfile-5.0 allegro_physfs-5.0 allegro_primitives-5.0 allegro_ttf-5.0来获取库列表,然后我将按照这个问题的答案进行操作。不过,当我下班回家时,我将不得不这样做。 stackoverflow.com/questions/6560760/…
标签: makefile autoconf automake allegro5