luvcview-0.2.4移植

1.luvcview运行依赖SDL多媒体库,下载SDL源码包,交叉编译SDL
tar –xzvf SDL-1.2.14.tar.gz
cd SDL-1.2.14
vi build.sh
#!/bin/sh
./configure CC=arm-arago-linux-gnueabi-gcc --target=arm-linux --host=arm-linux --prefix=/usr/local/SDL-ARM --enable-static --disable-shared --disable-joystick --disable-cdrom --disable-esd --disable-nasm --enable-video-x11 --enable-video-fbcon --enable-video-opengl --enable-osmesa-shared --disable-arts --without-x --enable-debug -enable-loadso --disable-video-directfb
make
sudo make install
【备注】
error:
./src/audio/dma/SDL_dmaaudio.c: In function 'DMA_WaitAudio':
./src/audio/dma/SDL_dmaaudio.c:166: error: impossible constraint in 'asm'
make: *** [build/SDL_dmaaudio.lo] Error 1

--disable-video-x11(加入此项可以编译通过,按照上面编译不会出现此错误)
2.下载luvcview标准源码包,交叉编译luvcview
tar xvf luvcview_0.2.4.orig.tar.gz
cd luvcview_0.2.4
vi Makefile
##############################
# spcaview Makefile
##############################

INSTALLROOT=$(PWD)

+CC=arm-arago-linux-gnueabi-gcc -pthread
+CPP=arm-arago-linux-gnueabi-g++ -pthread
INSTALL=install
APP_BINARY=luvcview
BIN=/usr/local/bin
#SDLLIBS = $(shell sdl-config --libs) 
#SDLFLAGS = $(shell sdl-config --cflags)
+SDLLIBS = -L/usr/local/SDL-ARM/lib -lSDL
+SDLFLAGS = /usr/local/SDL-ARM/include
+TSLLIBS = -L/usr/local/tslib/lib -lts
+TSLFLAGS = /usr/local/tslib/include

#LIBX11FLAGS= -I/usr/X11R6/include -L/usr/X11R6/lib
VERSION = 0.2.4

#WARNINGS = -Wall \
#           -Wundef -Wpointer-arith -Wbad-function-cast \
#           -Wcast-align -Wwrite-strings -Wstrict-prototypes \
#           -Wmissing-prototypes -Wmissing-declarations \
#           -Wnested-externs -Winline -Wcast-qual -W \
#           -Wno-unused
#           -Wunused

CFLAGS += -DUSE_SDL -O2 -DLINUX -DVERSION=\"$(VERSION)\" -I$(SDLFLAGS) $(WARNINGS)
CPPFLAGS = $(CFLAGS)

OBJECTS= luvcview.o color.o utils.o v4l2uvc.o gui.o avilib.o
		

all:	luvcview

clean:
	@echo "Cleaning up directory."
	rm -f *.a *.o $(APP_BINARY) core *~ log errlog *.avi

# Applications:
luvcview:	$(OBJECTS)
	$(CC)	$(CFLAGS) $(OBJECTS) $(X11_LIB) $(XPM_LIB)\
		$(MATH_LIB) \
		$(SDLLIBS)\
		+$(TSLLIBS)\
		-o $(APP_BINARY)
	chmod 755 $(APP_BINARY)


install: luvcview
	$(INSTALL) -s -m 755 -g root -o root $(APP_BINARY) $(BIN) 
	rm -f $(BIN)/uvcview
【备注】
每行以“+”开头的部分,表示是需要修改或添加的部分
手动加了一些库,编译的时候报错一些函数未定义,加了之后就可以了。
-lts 是触摸屏的库,之前移植过,也比较容易就不介绍了。

源代码修改 luvcview.c
(1). #include <X11/Xlib.h>
--->>> //#include <X11/Xlib.h>
#make(luvcview程序就可以编译成功了)
把 luvcview 复制到开发板 就能运行了。


附件列表

     

    posted @ 2017-08-20 21:13  hi!画家  阅读(1342)  评论(0编辑  收藏  举报