tq2440移植mjpg-streamer出现的一些问题

根据天嵌的教材进行移植,由于不是直接使用天嵌公司修改后的源码,所以编译出现了一些错误。天嵌公司的教材做的很详细,但美中不足的是往往只写出步骤,但没写出做这个步骤的原因。所以如果其中遗漏了一些关键步骤,出现问题往往让初学者难以修正。

移植完SDL库后,在__install目录下生成了 include、lib等文件夹。天嵌教材是将这些头文件和库直接拷贝到编译器对应的文件夹里。但可能是我的开发环境不大一样,或者我遗漏了一些步骤(移植方面经验不足),在mjpg-streamer下执行make后出现了一些错误。主要是当Makefile执行到

make[1]: 正在进入目录 `/opt/EmbedSky/apps/WebCam/mjpg-streamer/mjpg-streamer/plugins/output_viewer'

出现问题。问题主要有2个,无法找到SDL/SDL.h文件和cannot find -lSDL。很明显,这是因为Makefile没有找到对应的头文件和库文件,即使我按照天嵌的步骤将头文件和库文件烤到了对应的文件夹(这里我肯定遗漏了关键步骤)。为了找到对应的头文件,我直接修改mjpg-streamer/mjpg-streamer/plugins/output_viewer/Makefile 

#CFLAGS += -DUSE_SDL -I/usr/include/SDL

修改为
CFLAGS += -DUSE_SDL -I/opt/EmbedSky/apps/SDL-1.2.13/__install/include
这样编译器就能找到对应目录的头文件

再添加下面红色部分,这样编译器就能找到对应的库文件
LFLAGS += -ljpeg -lSDL -L/opt/EmbedSky/apps/SDL-1.2.13/__install/lib

再次编译成功。

你可能感兴趣的:(include,makefile,编译器)