我試圖讓我的項目與automake構建。特別是在使用Allegro5時。我應該如何鏈接通常與pkg-config鏈接的automake庫?
我可以使用下面的命令就好
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配置鏈接?
我想我找到了如何設置使用-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'得到這些庫的列表,然後我會按照這個問題的答案。當我下班回家時,我將必須這樣做。 http://stackoverflow.com/questions/6560760/how-do-i-link-allegro-5-from-my-makefile – DeepDeadpool