我不得不从源代码构建 ImageMagick 来解决我遇到的问题。完成后,我现在可以使用新的共享库编译我的代码,顺便提一下,它被称为libMagick++-6.Q8.so
. 我可以毫无问题地做到这一点。
我需要的是能够轻松地将二进制文件移动到其他机器,而不必依赖(自定义构建的)共享库,但是针对libMagick++-6.Q8.a
文件构建我的代码会导致大量undefined reference
链接器错误。
这是我的相关行Makefile
:
CXX= g++
CFLAGS= -DRENDER_TO_TEX -DUSEMAGICK -DMAGICKCORE_HDRI_ENABLE=0 -DMAGICKCORE_QUANTUM_DEPTH=8 -O2 -pthread
LIBS= -L/opt/vc/lib -L/usr/lib -lbcm_host -lEGL -lGLESv2 -lstdc++
LIBS+= /usr/lib/libjsoncpp.a /usr/lib/libboost_regex.a /usr/local/lib/libMagick++-6.Q8.a
INCS= -I/opt/vc/include -I/opt/vc/include/interface/vcos/pthreads -I/opt/vc/include/interface/vmcs_host/linux -I/usr/local/include/ImageMagick-6
slideshow: slideshow.cpp $(OBJS)
$(CXX) $(CFLAGS) slideshow.cpp ${INCS} ${LIBS} ${OBJS} -o $@