Разработка электронных устройств

Серийное и единичное производство аналоговой и цифровой электроники, приборов для промышленности, медицины, автоматизации. Разработка программного обеспечения для микроконтроллеров и сигнальных процессоров. Полное сопровождение проекта и написание технической литературы

Прототипы и серийное производство

Разработка и изготовление корпусов и передних панелей. Разработка и изготовление печатных платы любой сложности. Монтаж печатных плат.

Написание программного обеспечения

Весь путь от создания, поддержания и качества программного обеспечения под любую операционную систему. Основные направления сетевое и системное программирование, взаимодействие клинт - серверных систем.

Разработка механизмов различной степени сложности

Проектирование и прототипирование подвижных и неподвижных механизмов и узлов устройств и агрегатов. Полное сопровождение проекта и написание технической литературы

Создание, продвижение и обслуживание сайтов

Написание php/perl/c кода или использование cms. Собственный сервер для размещения Ваших проектов под любые нагрузки. Поддержание сайта в актуальности и продвижение в поисковых системах.

 
 

Сборка mjpg-streamer linux под Cubieboard, mk802, и прочие arm девайсы

Автор: от 08 Июль 2014 года, просмотров 3014

Google

Предполагается что у вас уже стоит linux на борту вашего портативного устройства, собран модуль ядра для поддержки uvc video и девайс подключен к интернету.

Идём http://sourceforge.net/projects/mjpg-streamer/files/mjpg-streamer/Sourcecode/ и качаем последние исходники, разархивируем. 

1
2
wget http://sourceforge.net/projects/mjpg-streamer/files/mjpg-streamer/Sourcecode/mjpg-streamer-r63.tar.gz
tar -xvzf mjpg-streamer.tar.gz

 Далее устанавливаем пакеты необходимые для сборки

1
apt-get install make gcc libjpeg-dev libv4l-dev

 Делаем сим линк библиотеки

1
ln -s /usr/include/libv4l1-videodev.h /usr/include/linux/videodev.h

 Пробуем собрать и получаем ошибку

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
root@linaro-nano:~/mjpg-streamer# make
gcc -O2 -DLINUX -D_GNU_SOURCE -Wall    -c -o mjpg_streamer.o mjpg_streamer.c
gcc -O2 -DLINUX -D_GNU_SOURCE -Wall    -c -o utils.o utils.c
gcc -O2 -DLINUX -D_GNU_SOURCE -Wall  -lpthread -ldl mjpg_streamer.o utils.o -o mjpg_streamer
mjpg_streamer.o: In function `signal_handler':
mjpg_streamer.c:(.text+0x14e): undefined reference to `dlclose'
mjpg_streamer.c:(.text+0x170): undefined reference to `dlclose'
mjpg_streamer.o: In function `main':
mjpg_streamer.c:(.text.startup+0x1d2): undefined reference to `dlopen'
mjpg_streamer.c:(.text.startup+0x1ea): undefined reference to `dlsym'
mjpg_streamer.c:(.text.startup+0x204): undefined reference to `dlsym'
mjpg_streamer.c:(.text.startup+0x21e): undefined reference to `dlsym'
mjpg_streamer.c:(.text.startup+0x238): undefined reference to `dlsym'
mjpg_streamer.c:(.text.startup+0x2f2): undefined reference to `dlopen'
mjpg_streamer.c:(.text.startup+0x30a): undefined reference to `dlsym'
mjpg_streamer.c:(.text.startup+0x324): undefined reference to `dlsym'
mjpg_streamer.c:(.text.startup+0x33e): undefined reference to `dlsym'
mjpg_streamer.c:(.text.startup+0x358): undefined reference to `dlsym'
mjpg_streamer.c:(.text.startup+0x4fc): undefined reference to `dlerror'
mjpg_streamer.c:(.text.startup+0x626): undefined reference to `dlerror'
collect2: error: ld returned 1 exit status
make: *** [mjpg_streamer] Error 1
root@linaro-nano:~/mjpg-streamer#

 Открываем файл Makefile и находим строку:

1
2
3
4
nano Makefile
 
Было $(CC) $(CFLAGS) $(LFLAGS) $(OBJECTS) -o $(APP_BINARY)
Стало $(CC) $(CFLAGS) $(OBJECTS) $(LFLAGS) -o $(APP_BINARY)

 Собираем и радуемся

1
./mjpg_streamer -i "input_uvc.so -d /dev/video0 -r 640x480 -f 24" -o "output_http.so -w ./www"

 

 

Категория: