Я создаю небольшое приложение python, которое использует v4l на малине pi. После нескольких часов устранения неполадок я близок к ее установке. Мне просто нужно скомпилировать официальный драйвер V4L2.Официальный драйвер V4L2 для малины pi, как добавить флаги lrt в make-файл?
Я следую за этот учебник https://www.ics.com/blog/raspberry-pi-camera-module#.VAaCHqM0_YQ
Когда я добираюсь до шага макияжа я получаю эту ошибку: undefined reference to symbol 'clock_gettime'
Поиск Google говорит мне, что мне нужно «Добавить -lrt в список библиотек вы ссылаетесь на ", или помещаете его в make-файл. Я ничего не знаю о make и configure. Я пытался немного почитать, но я делаю это для работы и не успеваю пройти курс. Я не знаю, что делать ... Пожалуйста, помогите ...
Следует также упомянуть, что я просто не знаю, могу ли я изменить makefile или makefile.in или настроить? Я попытался разместить "-lrt"
в make-файле, но сложно и сложно понять, куда его поместить.
Вот фактическая ошибка:
Making all in v4l2-compliance
make[3]: Entering directory '/home/pi/v4l-utils/utils/v4l2-compliance'
CXXLD v4l2-compliance
/usr/bin/ld: v4l2-test-buffers.o: undefined reference to symbol '[email protected]@
GLIBC_2.4'
//lib/arm-linux-gnueabihf/librt.so.1: error adding symbols: DSO missing from com
mand line
collect2: ld returned 1 exit status
Makefile:388: recipe for target 'v4l2-compliance' failed
make[3]: *** [v4l2-compliance] Error 1
make[3]: Leaving directory '/home/pi/v4l-utils/utils/v4l2-compliance'
Makefile:347: recipe for target 'all-recursive' failed
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory '/home/pi/v4l-utils/utils'
Makefile:386: recipe for target 'all-recursive' failed
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory '/home/pi/v4l-utils'
Makefile:315: recipe for target 'all' failed
make: *** [all] Error 2
Я пытался отредактировать Makefile и обнаружил, что читать «LIBS =», и я изменил его на «LIBS = -lrt», Это не сработало.
Я нашел линию 388 в Makefile это то, что он читает в этой области:
# This directory's subdirectories are mostly independent; you can cd
# into them and run `make' without going through this Makefile.
# To change the values of `make' variables: instead of editing Makefiles,
# (1) if the variable is set in `config.status', edit `config.status'
# (which will cause the Makefiles to be regenerated when you run `make');
# (2) otherwise, pass the desired values on the `make' command line.
$(RECURSIVE_TARGETS):
@fail= failcom='exit 1'; \
for f in x $$MAKEFLAGS; do \
case $$f in \
*=* | --[!k]*);; \
*k*) failcom='fail=yes';; \
esac; \
done; \
dot_seen=no; \
target=`echo [email protected] | sed s/-recursive//`; \
list='$(SUBDIRS)'; for subdir in $$list; do \
echo "Making $$target in $$subdir"; \
if test "$$subdir" = "."; then \
dot_seen=yes; \
local_target="$$target-am"; \
else \
local_target="$$target"; \
fi; \
($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
|| eval $$failcom; \
done; \
if test "$$dot_seen" = "no"; then \
$(MAKE) $(AM_MAKEFLAGS) "$$target-am" || exit 1; \
fi; test -z "$$fail"
Так что я попытался запустить сделать так: сделать CFLAGS = «- LRT», что ничего не делать , Я посмотрел на config.status, и это еще один запутанный файл.
Я также имел проблемы с 'make' и после чтения файла README, который обнаружил, что необходимо запустить'/bootstrap.sh' перед тем '/ configure', то, что Ждут».. t, упомянутых в umm.com toturial. – SAMPro