Дмитрий Posted October 27, 2019 Share Posted October 27, 2019 (edited) В 25.10.2019 в 22:29, TheBB сказал: знает толк в извращениях! Потому что не знает толк в Линукс. Доставил пакеты и далее по инструкции: opkg install busybox ldd make gawk sed wget -qO- http://bin.entware.net/mipselsf-k3.4/include/include.tar.gz | tar xvz -C /opt/include Далее git clone https://github.com/Motion-Project/motion.git cd motion ./configure.ac --prefix=/opt Получаю ./configure.ac: Permission denied: Скрытый текст ~/motion # ./configure.ac --prefix=/opt -sh: ./configure.ac: Permission denied ~/motion # ls -al drwxr-xr-x 9 root root 4096 Oct 27 07:58 . drwxr-xr-x 4 root root 4096 Oct 27 07:51 .. drwxr-xr-x 8 root root 4096 Oct 27 07:51 .git -rw-r--r-- 1 root root 806 Oct 27 07:51 .gitignore -rw-r--r-- 1 root root 5823 Oct 27 07:51 .travis.yml -rw-r--r-- 1 root root 3074 Oct 27 07:51 CONTRIBUTING.md -rw-r--r-- 1 root root 408 Oct 27 07:51 ISSUE_TEMPLATE.md -rw-r--r-- 1 root root 2593 Oct 27 07:51 Makefile.am -rw-r--r-- 1 root root 1682 Oct 27 07:51 README.md -rw-r--r-- 1 root root 17448 Oct 27 07:51 configure.ac drwxr-xr-x 2 root root 4096 Oct 27 07:51 data drwxr-xr-x 2 root root 4096 Oct 27 07:51 doc drwxr-xr-x 2 root root 4096 Oct 27 07:51 man drwxr-xr-x 2 root root 4096 Oct 27 07:51 po drwxr-xr-x 2 root root 4096 Oct 27 07:51 scripts drwxr-xr-x 3 root root 4096 Oct 27 07:51 src Из под root все делал Edited October 27, 2019 by Дмитрий Quote Link to comment Share on other sites More sharing options...
Дмитрий Posted October 27, 2019 Share Posted October 27, 2019 (edited) Ну да, конечно, мой косяк, config нету: Скрытый текст Итак, чтобы собрать что-то из исходников, нужно сначала собрать конфигуратор; как собрать конфигуратор, описано в файле configure.in. Для сборки конфигуратора необходимо выполнить ./bootstrap или ./autogen.sh Если таких скриптов не оказалось, то можно выполнить последовательно следующие команды: aclocal autoheader automake --gnu --add-missing --copy --foreign autoconf -f -Wall Появился ./configure Edited October 27, 2019 by Дмитрий Quote Link to comment Share on other sites More sharing options...
Дмитрий Posted October 27, 2019 Share Posted October 27, 2019 (edited) Ну что опять? Скрытый текст ~/motion # ./configure --prefix=/opt checking for a BSD-compatible install... ./install-sh -c checking whether build environment is sane... yes checking for a thread-safe mkdir -p... ./install-sh -c -d checking for gawk... gawk checking whether make sets $(MAKE)... yes checking whether make supports nested variables... yes checking for gcc... gcc checking whether the C compiler works... yes checking for C compiler default output file name... a.out checking for suffix of executables... checking whether we are cross compiling... no checking for suffix of object files... o checking whether we are using the GNU C compiler... yes checking whether gcc accepts -g... yes checking for gcc option to accept ISO C89... none needed checking whether gcc understands -c and -o together... yes checking for style of include used by make... GNU checking dependency style of gcc... gcc3 checking for g++... g++ checking whether we are using the GNU C++ compiler... yes checking whether g++ accepts -g... yes checking dependency style of g++... gcc3 checking how to run the C preprocessor... gcc -E checking for grep that handles long lines and -e... /opt/bin/grep checking for egrep... /opt/bin/grep -E checking for ANSI C header files... yes checking for sys/types.h... yes checking for sys/stat.h... yes checking for stdlib.h... yes checking for string.h... yes checking for memory.h... yes checking for strings.h... yes checking for inttypes.h... yes checking for stdint.h... yes checking for unistd.h... yes checking minix/config.h usability... no checking minix/config.h presence... no checking for minix/config.h... no checking whether it is safe to define __EXTENSIONS__... yes checking build system type... mipsel-unknown-Linux-gnu checking host system type... mipsel-unknown-linux-gnu ./configure: line 4737: syntax error: unexpected word (expecting ")") configure Edited October 27, 2019 by Дмитрий Quote Link to comment Share on other sites More sharing options...
TheBB Posted October 27, 2019 Author Share Posted October 27, 2019 (edited) 22 часа назад, Дмитрий сказал: Ну да, конечно, мой косяк, config нету: `cat doc/INSTALL` Цитата ... Once required packages are installed, execute: autoreconf -fiv ./configure make make install ... доустановить `opkg install libmicrohttpd libjpeg libffmpeg-full` и слегка подправить `ln -s /opt/lib/libjpeg.so.9.3.0 /opt/lib/libjpeg.so` c `git clone git://github.com/Motion-Project/motion.git motion_a` понятно /opt/home # git clone git://github.com/Motion-Project/motion.git motion_a Cloning into 'motion_a'... remote: Enumerating objects: 25, done. remote: Counting objects: 100% (25/25), done. remote: Compressing objects: 100% (25/25), done. remote: Total 6791 (delta 11), reused 3 (delta 0), pack-reused 6766 Receiving objects: 100% (6791/6791), 5.47 MiB | 583.00 KiB/s, done. Resolving deltas: 100% (5069/5069), done. /opt/home # /opt/home # cp -r motion_a motion_b /opt/home # cd motion_b/ /opt/home/motion_b # идём дальше ))) патчим "configure.ac" `patch -p1 -i ../motion_configute.patch` (<-- сам патч, закинуть в любое место и патчить с указанием пути к нему) upd: патчем мы отламываем "gettext" и разные проверки /opt/home/motion_b # patch -p1 -i ../motion_configute.patch patching file configure.ac /opt/home/motion_b # запускаем `autoreconf -fiv` /opt/home/motion_b # autoreconf -fiv autoreconf: Entering directory `.' autoreconf: configure.ac: not using Gettext autoreconf: running: aclocal --force -I m4 aclocal: warning: couldn't open directory 'm4': No such file or directory autoreconf: configure.ac: tracing autoreconf: configure.ac: not using Libtool autoreconf: running: /opt/bin/autoconf --force autoreconf: running: /opt/bin/autoheader --force autoreconf: running: automake --add-missing --copy --force-missing configure.ac:3: installing './compile' configure.ac:8: installing './config.guess' configure.ac:8: installing './config.sub' configure.ac:2: installing './install-sh' configure.ac:2: installing './missing' src/Makefile.am: installing './depcomp' autoreconf: Leaving directory `.' /opt/home/motion_b # запускаем `./configure --prefix=/opt --without-libsqlite3` upd: можно собрать и со "sqlite3", но потребуется дополнительная "фигурная резьба" в "configure.ac" и "Makefile" Скрытый текст /opt/home/motion_b # ./configure --prefix=/opt --without-sqlite3 checking for a BSD-compatible install... /opt/bin/install -c checking whether build environment is sane... yes checking for a thread-safe mkdir -p... ./install-sh -c -d checking for gawk... gawk checking whether make sets $(MAKE)... yes checking whether make supports nested variables... yes checking for gcc... gcc checking whether the C compiler works... yes checking for C compiler default output file name... a.out checking for suffix of executables... checking whether we are cross compiling... no checking for suffix of object files... o checking whether we are using the GNU C compiler... yes checking whether gcc accepts -g... yes checking for gcc option to accept ISO C89... none needed checking whether gcc understands -c and -o together... yes checking for style of include used by make... GNU checking dependency style of gcc... gcc3 checking for g++... g++ checking whether we are using the GNU C++ compiler... yes checking whether g++ accepts -g... yes checking dependency style of g++... gcc3 checking how to run the C preprocessor... gcc -E checking for grep that handles long lines and -e... /opt/bin/grep checking for egrep... /opt/bin/grep -E checking for ANSI C header files... yes checking for sys/types.h... yes checking for sys/stat.h... yes checking for stdlib.h... yes checking for string.h... yes checking for memory.h... yes checking for strings.h... yes checking for inttypes.h... yes checking for stdint.h... yes checking for unistd.h... yes checking minix/config.h usability... no checking minix/config.h presence... no checking for minix/config.h... no checking whether it is safe to define __EXTENSIONS__... yes checking build system type... mipsel-unknown-linux-gnu checking host system type... mipsel-unknown-linux-gnu checking stdio.h usability... yes checking stdio.h presence... yes checking for stdio.h... yes checking for stdlib.h... (cached) yes checking sys/time.h usability... yes checking sys/time.h presence... yes checking for sys/time.h... yes checking sys/wait.h usability... yes checking sys/wait.h presence... yes checking for sys/wait.h... yes checking sys/ioctl.h usability... yes checking sys/ioctl.h presence... yes checking for sys/ioctl.h... yes checking sys/mman.h usability... yes checking sys/mman.h presence... yes checking for sys/mman.h... yes checking sys/param.h usability... yes checking sys/param.h presence... yes checking for sys/param.h... yes checking sys/socket.h usability... yes checking sys/socket.h presence... yes checking for sys/socket.h... yes checking stdarg.h usability... yes checking stdarg.h presence... yes checking for stdarg.h... yes checking fcntl.h usability... yes checking fcntl.h presence... yes checking for fcntl.h... yes checking time.h usability... yes checking time.h presence... yes checking for time.h... yes checking signal.h usability... yes checking signal.h presence... yes checking for signal.h... yes checking limits.h usability... yes checking limits.h presence... yes checking for limits.h... yes checking errno.h usability... yes checking errno.h presence... yes checking for errno.h... yes checking assert.h usability... yes checking assert.h presence... yes checking for assert.h... yes checking netdb.h usability... yes checking netdb.h presence... yes checking for netdb.h... yes checking ctype.h usability... yes checking ctype.h presence... yes checking for ctype.h... yes checking regex.h usability... yes checking regex.h presence... yes checking for regex.h... yes checking math.h usability... yes checking math.h presence... yes checking for math.h... yes checking locale.h usability... yes checking locale.h presence... yes checking for locale.h... yes checking dirent.h usability... yes checking dirent.h presence... yes checking for dirent.h... yes checking for ctype.h... (cached) yes checking arpa/inet.h usability... yes checking arpa/inet.h presence... yes checking for arpa/inet.h... yes checking netinet/in.h usability... yes checking netinet/in.h presence... yes checking for netinet/in.h... yes checking termios.h usability... yes checking termios.h presence... yes checking for termios.h... yes checking for pkg-config... yes checking pthread.h usability... yes checking pthread.h presence... yes checking for pthread.h... yes checking setjmp.h usability... yes checking setjmp.h presence... yes checking for setjmp.h... yes checking jerror.h usability... yes checking jerror.h presence... yes checking for jerror.h... yes checking jpeglib.h usability... yes checking jpeglib.h presence... yes checking for jpeglib.h... yes checking jpg libraries... yes checking microhttpd.h usability... yes checking microhttpd.h presence... yes checking for microhttpd.h... yes checking libmicrohttpd libraries... yes checking pthread_np.h usability... no checking pthread_np.h presence... no checking for pthread_np.h... no checking for pthread_setname_np... yes checking for pthread_getname_np... yes checking for XSI strerror_r... no checking dev/bktr/ioctl_meteor.h usability... no checking dev/bktr/ioctl_meteor.h presence... no checking for dev/bktr/ioctl_meteor.h... no checking dev/bktr/ioctl_bt848.h usability... no checking dev/bktr/ioctl_bt848.h presence... no checking for dev/bktr/ioctl_bt848.h... no checking dev/ic/bt8xx.h usability... no checking dev/ic/bt8xx.h presence... no checking for dev/ic/bt8xx.h... no checking linux/videodev2.h usability... yes checking linux/videodev2.h presence... yes checking for linux/videodev2.h... yes checking for webp... no checking MMAL pkg-config path... .:/opt/vc/lib/pkgconfig checking for MMAL... no checking MariaDB pkg-config path... checking for MariaDB... no checking MySQL pkg-config path... checking for MySQL... no checking PostgreSQL pkg-config path... checking for PostgreSQL... no checking for sqlite3... skipping checking for kill... /opt/bin/kill checking that generated files are newer than configure... done configure: creating ./config.status config.status: creating Makefile config.status: creating src/Makefile config.status: creating man/Makefile config.status: creating data/camera1-dist.conf config.status: creating data/camera2-dist.conf config.status: creating data/camera3-dist.conf config.status: creating data/camera4-dist.conf config.status: creating data/motion-dist.conf config.status: creating data/motion.service config.status: creating config.h config.status: executing depfiles commands ************************** Configure status motion 4.2.2+dirty20191016-98f060d ************************** CFLAGS: -g -O2 -D_THREAD_SAFE LIBS: -pthread -ljpeg LDFLAGS: OS : linux-gnu pthread_np : no pthread_setname_np : yes pthread_getname_np : yes XSI error : no webp support : yes V4L2 support : yes BKTR support : no MMAL support : no FFmpeg support : yes libavformat version : -- SQLite3 support : no MYSQL support : no PostgreSQL support : no MariaDB support : no Install prefix: /opt /opt/home/motion_b # правим Makefile`ы upd: т.к. отломали "gettext" и прочее (см. выше), в 1-ом исключаем локализацию, во 2-м меняем отломанную "libintl" на "libmicrohttpd" /opt/home/motion_b # sed -i -e 's, po , ,' Makefile /opt/home/motion_b # /opt/home/motion_b # sed -i -e 's,@LIBINTL@,-lmicrohttpd,' src/Makefile /opt/home/motion_b # запускаем `make` Скрытый текст /opt/home/motion_b # make make all-recursive make[1]: Entering directory '/opt/home/motion_b' Making all in src make[2]: Entering directory '/opt/home/motion_b/src' depbase=`echo motion.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\ gcc -DHAVE_CONFIG_H -I. -I.. -Dsysconfdir=\"/opt/etc/motion\" -DLOCALEDIR=\"/opt/share/locale\" -g -O2 -D_THREAD_SAFE -MT motion.o -MD -MP -MF $depbase.Tpo -c -o motion.o motion.c &&\ mv -f $depbase.Tpo $depbase.Po depbase=`echo logger.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\ gcc -DHAVE_CONFIG_H -I. -I.. -Dsysconfdir=\"/opt/etc/motion\" -DLOCALEDIR=\"/opt/share/locale\" -g -O2 -D_THREAD_SAFE -MT logger.o -MD -MP -MF $depbase.Tpo -c -o logger.o logger.c &&\ mv -f $depbase.Tpo $depbase.Po depbase=`echo conf.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\ gcc -DHAVE_CONFIG_H -I. -I.. -Dsysconfdir=\"/opt/etc/motion\" -DLOCALEDIR=\"/opt/share/locale\" -g -O2 -D_THREAD_SAFE -MT conf.o -MD -MP -MF $depbase.Tpo -c -o conf.o conf.c &&\ mv -f $depbase.Tpo $depbase.Po depbase=`echo draw.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\ gcc -DHAVE_CONFIG_H -I. -I.. -Dsysconfdir=\"/opt/etc/motion\" -DLOCALEDIR=\"/opt/share/locale\" -g -O2 -D_THREAD_SAFE -MT draw.o -MD -MP -MF $depbase.Tpo -c -o draw.o draw.c &&\ mv -f $depbase.Tpo $depbase.Po depbase=`echo jpegutils.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\ gcc -DHAVE_CONFIG_H -I. -I.. -Dsysconfdir=\"/opt/etc/motion\" -DLOCALEDIR=\"/opt/share/locale\" -g -O2 -D_THREAD_SAFE -MT jpegutils.o -MD -MP -MF $depbase.Tpo -c -o jpegutils.o jpegutils.c &&\ mv -f $depbase.Tpo $depbase.Po depbase=`echo video_loopback.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\ gcc -DHAVE_CONFIG_H -I. -I.. -Dsysconfdir=\"/opt/etc/motion\" -DLOCALEDIR=\"/opt/share/locale\" -g -O2 -D_THREAD_SAFE -MT video_loopback.o -MD -MP -MF $depbase.Tpo -c -o video_loopback.o video_loopback.c &&\ mv -f $depbase.Tpo $depbase.Po depbase=`echo video_v4l2.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\ gcc -DHAVE_CONFIG_H -I. -I.. -Dsysconfdir=\"/opt/etc/motion\" -DLOCALEDIR=\"/opt/share/locale\" -g -O2 -D_THREAD_SAFE -MT video_v4l2.o -MD -MP -MF $depbase.Tpo -c -o video_v4l2.o video_v4l2.c &&\ mv -f $depbase.Tpo $depbase.Po depbase=`echo video_common.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\ gcc -DHAVE_CONFIG_H -I. -I.. -Dsysconfdir=\"/opt/etc/motion\" -DLOCALEDIR=\"/opt/share/locale\" -g -O2 -D_THREAD_SAFE -MT video_common.o -MD -MP -MF $depbase.Tpo -c -o video_common.o video_common.c &&\ mv -f $depbase.Tpo $depbase.Po depbase=`echo video_bktr.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\ gcc -DHAVE_CONFIG_H -I. -I.. -Dsysconfdir=\"/opt/etc/motion\" -DLOCALEDIR=\"/opt/share/locale\" -g -O2 -D_THREAD_SAFE -MT video_bktr.o -MD -MP -MF $depbase.Tpo -c -o video_bktr.o video_bktr.c &&\ mv -f $depbase.Tpo $depbase.Po depbase=`echo netcam.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\ gcc -DHAVE_CONFIG_H -I. -I.. -Dsysconfdir=\"/opt/etc/motion\" -DLOCALEDIR=\"/opt/share/locale\" -g -O2 -D_THREAD_SAFE -MT netcam.o -MD -MP -MF $depbase.Tpo -c -o netcam.o netcam.c &&\ mv -f $depbase.Tpo $depbase.Po depbase=`echo netcam_http.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\ gcc -DHAVE_CONFIG_H -I. -I.. -Dsysconfdir=\"/opt/etc/motion\" -DLOCALEDIR=\"/opt/share/locale\" -g -O2 -D_THREAD_SAFE -MT netcam_http.o -MD -MP -MF $depbase.Tpo -c -o netcam_http.o netcam_http.c &&\ mv -f $depbase.Tpo $depbase.Po depbase=`echo netcam_ftp.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\ gcc -DHAVE_CONFIG_H -I. -I.. -Dsysconfdir=\"/opt/etc/motion\" -DLOCALEDIR=\"/opt/share/locale\" -g -O2 -D_THREAD_SAFE -MT netcam_ftp.o -MD -MP -MF $depbase.Tpo -c -o netcam_ftp.o netcam_ftp.c &&\ mv -f $depbase.Tpo $depbase.Po depbase=`echo netcam_jpeg.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\ gcc -DHAVE_CONFIG_H -I. -I.. -Dsysconfdir=\"/opt/etc/motion\" -DLOCALEDIR=\"/opt/share/locale\" -g -O2 -D_THREAD_SAFE -MT netcam_jpeg.o -MD -MP -MF $depbase.Tpo -c -o netcam_jpeg.o netcam_jpeg.c &&\ mv -f $depbase.Tpo $depbase.Po depbase=`echo netcam_wget.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\ gcc -DHAVE_CONFIG_H -I. -I.. -Dsysconfdir=\"/opt/etc/motion\" -DLOCALEDIR=\"/opt/share/locale\" -g -O2 -D_THREAD_SAFE -MT netcam_wget.o -MD -MP -MF $depbase.Tpo -c -o netcam_wget.o netcam_wget.c &&\ mv -f $depbase.Tpo $depbase.Po depbase=`echo netcam_rtsp.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\ gcc -DHAVE_CONFIG_H -I. -I.. -Dsysconfdir=\"/opt/etc/motion\" -DLOCALEDIR=\"/opt/share/locale\" -g -O2 -D_THREAD_SAFE -MT netcam_rtsp.o -MD -MP -MF $depbase.Tpo -c -o netcam_rtsp.o netcam_rtsp.c &&\ mv -f $depbase.Tpo $depbase.Po depbase=`echo track.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\ gcc -DHAVE_CONFIG_H -I. -I.. -Dsysconfdir=\"/opt/etc/motion\" -DLOCALEDIR=\"/opt/share/locale\" -g -O2 -D_THREAD_SAFE -MT track.o -MD -MP -MF $depbase.Tpo -c -o track.o track.c &&\ mv -f $depbase.Tpo $depbase.Po depbase=`echo alg.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\ gcc -DHAVE_CONFIG_H -I. -I.. -Dsysconfdir=\"/opt/etc/motion\" -DLOCALEDIR=\"/opt/share/locale\" -g -O2 -D_THREAD_SAFE -MT alg.o -MD -MP -MF $depbase.Tpo -c -o alg.o alg.c &&\ mv -f $depbase.Tpo $depbase.Po depbase=`echo event.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\ gcc -DHAVE_CONFIG_H -I. -I.. -Dsysconfdir=\"/opt/etc/motion\" -DLOCALEDIR=\"/opt/share/locale\" -g -O2 -D_THREAD_SAFE -MT event.o -MD -MP -MF $depbase.Tpo -c -o event.o event.c &&\ mv -f $depbase.Tpo $depbase.Po depbase=`echo picture.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\ gcc -DHAVE_CONFIG_H -I. -I.. -Dsysconfdir=\"/opt/etc/motion\" -DLOCALEDIR=\"/opt/share/locale\" -g -O2 -D_THREAD_SAFE -MT picture.o -MD -MP -MF $depbase.Tpo -c -o picture.o picture.c &&\ mv -f $depbase.Tpo $depbase.Po depbase=`echo rotate.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\ gcc -DHAVE_CONFIG_H -I. -I.. -Dsysconfdir=\"/opt/etc/motion\" -DLOCALEDIR=\"/opt/share/locale\" -g -O2 -D_THREAD_SAFE -MT rotate.o -MD -MP -MF $depbase.Tpo -c -o rotate.o rotate.c &&\ mv -f $depbase.Tpo $depbase.Po depbase=`echo translate.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\ gcc -DHAVE_CONFIG_H -I. -I.. -Dsysconfdir=\"/opt/etc/motion\" -DLOCALEDIR=\"/opt/share/locale\" -g -O2 -D_THREAD_SAFE -MT translate.o -MD -MP -MF $depbase.Tpo -c -o translate.o translate.c &&\ mv -f $depbase.Tpo $depbase.Po depbase=`echo md5.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\ gcc -DHAVE_CONFIG_H -I. -I.. -Dsysconfdir=\"/opt/etc/motion\" -DLOCALEDIR=\"/opt/share/locale\" -g -O2 -D_THREAD_SAFE -MT md5.o -MD -MP -MF $depbase.Tpo -c -o md5.o md5.c &&\ mv -f $depbase.Tpo $depbase.Po depbase=`echo stream.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\ gcc -DHAVE_CONFIG_H -I. -I.. -Dsysconfdir=\"/opt/etc/motion\" -DLOCALEDIR=\"/opt/share/locale\" -g -O2 -D_THREAD_SAFE -MT stream.o -MD -MP -MF $depbase.Tpo -c -o stream.o stream.c &&\ mv -f $depbase.Tpo $depbase.Po depbase=`echo ffmpeg.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\ gcc -DHAVE_CONFIG_H -I. -I.. -Dsysconfdir=\"/opt/etc/motion\" -DLOCALEDIR=\"/opt/share/locale\" -g -O2 -D_THREAD_SAFE -MT ffmpeg.o -MD -MP -MF $depbase.Tpo -c -o ffmpeg.o ffmpeg.c &&\ mv -f $depbase.Tpo $depbase.Po depbase=`echo webu.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\ gcc -DHAVE_CONFIG_H -I. -I.. -Dsysconfdir=\"/opt/etc/motion\" -DLOCALEDIR=\"/opt/share/locale\" -g -O2 -D_THREAD_SAFE -MT webu.o -MD -MP -MF $depbase.Tpo -c -o webu.o webu.c &&\ mv -f $depbase.Tpo $depbase.Po depbase=`echo webu_html.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\ gcc -DHAVE_CONFIG_H -I. -I.. -Dsysconfdir=\"/opt/etc/motion\" -DLOCALEDIR=\"/opt/share/locale\" -g -O2 -D_THREAD_SAFE -MT webu_html.o -MD -MP -MF $depbase.Tpo -c -o webu_html.o webu_html.c &&\ mv -f $depbase.Tpo $depbase.Po depbase=`echo webu_stream.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\ gcc -DHAVE_CONFIG_H -I. -I.. -Dsysconfdir=\"/opt/etc/motion\" -DLOCALEDIR=\"/opt/share/locale\" -g -O2 -D_THREAD_SAFE -MT webu_stream.o -MD -MP -MF $depbase.Tpo -c -o webu_stream.o webu_stream.c &&\ mv -f $depbase.Tpo $depbase.Po depbase=`echo webu_text.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\ gcc -DHAVE_CONFIG_H -I. -I.. -Dsysconfdir=\"/opt/etc/motion\" -DLOCALEDIR=\"/opt/share/locale\" -g -O2 -D_THREAD_SAFE -MT webu_text.o -MD -MP -MF $depbase.Tpo -c -o webu_text.o webu_text.c &&\ mv -f $depbase.Tpo $depbase.Po depbase=`echo mmalcam.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\ gcc -DHAVE_CONFIG_H -I. -I.. -Dsysconfdir=\"/opt/etc/motion\" -DLOCALEDIR=\"/opt/share/locale\" -g -O2 -D_THREAD_SAFE -MT mmalcam.o -MD -MP -MF $depbase.Tpo -c -o mmalcam.o mmalcam.c &&\ mv -f $depbase.Tpo $depbase.Po gcc -Dsysconfdir=\"/opt/etc/motion\" -DLOCALEDIR=\"/opt/share/locale\" -g -O2 -D_THREAD_SAFE -o motion motion.o logger.o conf.o draw.o jpegutils.o video_loopback.o video_v4l2.o video_common.o video_bktr.o netcam.o netcam_http.o netcam_ftp.o netcam_jpeg.o netcam_wget.o netcam_rtsp.o track.o alg.o event.o picture.o rotate.o translate.o md5.o stream.o ffmpeg.o webu.o webu_html.o webu_stream.o webu_text.o mmalcam.o -lmicrohttpd -pthread -ljpeg make[2]: Leaving directory '/opt/home/motion_b/src' Making all in man make[2]: Entering directory '/opt/home/motion_b/man' make[2]: Nothing to be done for 'all'. make[2]: Leaving directory '/opt/home/motion_b/man' make[2]: Entering directory '/opt/home/motion_b' make[2]: Leaving directory '/opt/home/motion_b' make[1]: Leaving directory '/opt/home/motion_b' /opt/home/motion_b # собсна, смотрим, что вышло /opt/home/motion_b # ./src/motion -h motion Version 4.2.2+dirty20191016-98f060d, Copyright 2000-2019 Jeroen Vreeken/Folkert van Heusden/Kenneth Lavrsen/Motion-Project maintainers Home page : https://motion-project.github.io/ usage: motion [options] Possible options: -b Run in background (daemon) mode. -n Run in non-daemon mode. -s Run in setup mode. -c config Full path and filename of config file. -d level Log level (1-9) (EMG, ALR, CRT, ERR, WRN, NTC, INF, DBG, ALL). default: 6 / NTC. -k type Type of log (COR, STR, ENC, NET, DBL, EVT, TRK, VID, ALL). default: ALL. -p process_id_file Full path and filename of process id file (pid file). -l log file Full path and filename of log file. -m Disable motion detection at startup. -h Show this screen. Motion is configured using a config file only. If none is supplied, it will read motion.conf from current directory, ~/.motion or /opt/etc/motion. /opt/home/motion_b # осталось отладка (если не взлетит) Edited October 28, 2019 by TheBB upd Quote Link to comment Share on other sites More sharing options...
Дмитрий Posted October 31, 2019 Share Posted October 31, 2019 В 27.10.2019 в 18:48, TheBB сказал: осталось отладка (если не взлетит) Все идеально, спасибо! Quote Link to comment Share on other sites More sharing options...
Zeleza Posted June 27, 2021 Share Posted June 27, 2021 Уважаемые гуру Прошу поделиться Вашим опытом. Являюсь полным новичоком в сборке пакетов и хочу решить следующую задачу: - собрать пакет ipk для кинетика, который состоит ТОЛЬКО из набора различных bash скриптов и дополнительных файлов (конфиги, текстовые данные). Подскажите пожалуйста, куда копать? Собирать все так же как описано на первой странице этого топика? Quote Link to comment Share on other sites More sharing options...
TheBB Posted June 27, 2021 Author Share Posted June 27, 2021 (edited) 8 часов назад, Zeleza сказал: который состоит ТОЛЬКО из набора различных bash скриптов и дополнительных файлов (конфиги, текстовые данные). Скрытый текст # XXX шапку заполняем по усмотрению # # Copyright (C) Year # # This is free software, licensed under... # include $(TOPDIR)/rules.mk PKG_NAME:=$pkg_name # XXX $pkg_name: здесь и ниже - имя пакета PKG_VERSION:=0.0.1 # XXX версия пакета PKG_RELEASE:=1 # XXX релиз include $(INCLUDE_DIR)/package.mk define Package/$pkg_name SECTION:= # XXX секция CATEGORY:= # XXX категория TITLE:= # XXX краткое описание URL:= # XXX дом. страница DEPENDS:= # XXX зависимости, если нужны endef # XXX описание пакета, если нужно define Package/$pkg_name/description endef # XXX конфиги пакета, если нужны define Package/$pkg_name/conffiles endef # ХХХ пропуск этапов сборки Build/Prepare:=: # XXX подготовка (скачивание, распаковка, наложение патчей, ...) Build/Configure:=: # XXX конфигурирование Build/Compile:=: # XXX компиляция define Package/$pkg_name/install $(INSTALL_DIR) $(1) $(CP) ./files/opt $(1) endef $(eval $(call BuildPackage,$pkg_name)) В директории "files" проекта пакета создать полную структуру расположения файлов /files/ |_ /opt/ |_ /bin/ |_ bash-file1.sh |_ /etc/ |_ /conf_dir1/ |_ config1.conf |_ config2.conf |_ /sbin/ |_ bash-file2.sh ... собсна, её и копировать в секции "define Package/$pkg_name/install" --- см. (как пример) https://github.com/Entware/rtndev/tree/master/entware-opt см. также макросы $(INSTALL_BIN) | $(INSTALL_DATA) | $(INSTALL_CONF) === https://openwrt.org/docs/guide-developer/packages#buildpackage_variables Edited June 27, 2021 by TheBB add2 Quote Link to comment Share on other sites More sharing options...
Zeleza Posted June 27, 2021 Share Posted June 27, 2021 @TheBB Большое Вам спасибо. Quote Link to comment Share on other sites More sharing options...
Zeleza Posted May 21, 2022 Share Posted May 21, 2022 (edited) Доброго всем утра, Прошу помочь посильную. При сборке пакета Жезл, после того, как случайно удалил файлы с компиляцией, пришлось весь процесс начинать заново, но столкнулся вот с такой вот проблемой при сборке toпolchain (см. ниже под катом). В menuconfig устанавливал только галочки, как и рекомендовали - opt-ndmsv2, ndmq, libndm + zezl: Скрытый текст bash scripts/headers_install.sh /opt/apps/entware/build_dir/toolchain-aarch64_cortex-a53_gcc-8.4.0_-/linux-dev//include/asm /opt/apps/entware/build_dir/toolchain-aarch64_cortex-a53_gcc-8.4.0_-/linux-3.10.108/arch/arm64/include/uapi/asm auxvec.h bitsperlong.h byteorder.h fcntl.h hwcap.h param.h ptrace.h setup.h sigcontext.h siginfo.h signal.h stat.h statfs.h unistd.h; bash scripts/headers_install.sh /opt/apps/entware/build_dir/toolchain-aarch64_cortex-a53_gcc-8.4.0_-/linux-dev//include/asm /opt/apps/entware/build_dir/toolchain-aarch64_cortex-a53_gcc-8.4.0_-/linux-3.10.108/arch/arm64/include/asm ; bash scripts/headers_install.sh /opt/apps/entware/build_dir/toolchain-aarch64_cortex-a53_gcc-8.4.0_-/linux-dev//include/asm /opt/apps/entware/build_dir/toolchain-aarch64_cortex-a53_gcc-8.4.0_-/linux-3.10.108/arch/arm64/include/generated/uapi/asm ; for F in kvm_para.h errno.h ioctl.h ioctls.h ipcbuf.h kvm_para.h mman.h msgbuf.h poll.h posix_types.h resource.h sembuf.h shmbuf.h socket.h sockios.h swab.h termbits.h termios.h types.h; do echo "#include <asm-generic/$F>" > /opt/apps/entware/build_dir/toolchain-aarch64_cortex-a53_gcc-8.4.0_-/linux-dev//include/asm/$F; done; touch /opt/apps/entware/build_dir/toolchain-aarch64_cortex-a53_gcc-8.4.0_-/linux-dev//include/asm/.install make[3]: Leaving directory '/opt/apps/entware/build_dir/toolchain-aarch64_cortex-a53_gcc-8.4.0_-/linux-3.10.108' touch /opt/apps/entware/build_dir/toolchain-aarch64_cortex-a53_gcc-8.4.0_-/linux-3.10.108/.configured touch /opt/apps/entware/build_dir/toolchain-aarch64_cortex-a53_gcc-8.4.0_-/linux-3.10.108/.built cp -fpR /opt/apps/entware/build_dir/toolchain-aarch64_cortex-a53_gcc-8.4.0_-/linux-dev/* /opt/apps/entware/staging_dir/toolchain-aarch64_cortex-a53_gcc-8.4.0_-/ mkdir -p /opt/apps/entware/staging_dir/toolchain-aarch64_cortex-a53_gcc-8.4.0_-/stamp touch /opt/apps/entware/build_dir/toolchain-aarch64_cortex-a53_gcc-8.4.0_-/linux-3.10.108/.built touch /opt/apps/entware/staging_dir/toolchain-aarch64_cortex-a53_gcc-8.4.0_-/stamp/.linux_installed make[2]: Leaving directory '/opt/apps/entware/toolchain/kernel-headers' time: toolchain/kernel-headers/compile#12.12#3.71#14.08 make[2]: Entering directory '/opt/apps/entware'make[2]: *** toolchain//headers: No such file or directory. Stop. make[2]: Leaving directory '/opt/apps/entware' time: toolchain//headers/compile#0.00#0.00#0.00 ERROR: toolchain//headers failed to build. make[1]: *** [toolchain/Makefile:97: toolchain//headers/compile] Error 1 make[1]: Leaving directory '/opt/apps/entware'make: *** [/opt/apps/entware/include/toplevel.mk:230: toolchain/install] Error 2 Кто встречался с подобной проблемой? В каком направлении искать решение? Повторюсь ничего не менял - только заново запустил пересборку. Edited May 21, 2022 by Zeleza Quote Link to comment Share on other sites More sharing options...
Александр Рыжов Posted May 21, 2022 Share Posted May 21, 2022 Строго по wiki: git clone https://github.com/Entware/Entware.git && cd Entware make package/symlinks cp -v configs/mipsel-3.4.config .config make tools/install make toolchain/install make target/compile Галки в `make menuconfig` трогать незачем, просто собирайте нужный пакет: make V=s package/<name>/compile Можно руководствоваться документацией по OpenWrt Buildroot'у. 1 Quote Link to comment Share on other sites More sharing options...
Zeleza Posted May 21, 2022 Share Posted May 21, 2022 Доброго вечера, Без флага export FORCE_UNSAFE_CONFIGURE=1 на Debian 11.3 не хотелось собираться. Но потом все удалил и собрал по новой, снова и уже с флагом. Благодарю за науку. Все удалось. Quote Link to comment Share on other sites More sharing options...
zyxmon Posted May 21, 2022 Share Posted May 21, 2022 В 2018 писали Цитата 3. Before you compile the toolchain if you are doing this as root like me set this variable to avoid errors. set FORCE_UNSAFE_CONFIGURE=1 export set FORCE_UNSAFE_CONFIGURE=1 Может Вы под рутом собирали? Это не стоит делать! Quote Link to comment Share on other sites More sharing options...
zyxmon Posted May 21, 2022 Share Posted May 21, 2022 https://openwrt.org/docs/guide-developer/toolchain/use-buildsystem Цитата Do everything as an unprivileged user, not root, without sudo. 2 Quote Link to comment Share on other sites More sharing options...
Zeleza Posted May 22, 2022 Share Posted May 22, 2022 Доброго утра, 8 часов назад, zyxmon сказал: Может Вы под рутом собирали? Это не стоит делать! Как говорят: "век живи - век учись.") Еще раз благодарю. Quote Link to comment Share on other sites More sharing options...
Zeleza Posted May 23, 2022 Share Posted May 23, 2022 Доброго вечера, Мудрые люди прошу помощи посильной в сборке пакета. Все сделал по написанному, НЕ из под root git clone https://github.com/Entware/Entware.git && cd Entware make package/symlinks cp -v configs/mipsel-3.4.config .config make tools/install make toolchain/install make target/compile make V=s package/<name>/compile Все этапы проходят без ошибок, но пакета в собранном виде (ipk) в папке ./bin/targets/mipsel-3.4/generic-glibc/packages/ не появляется. Куда посмотреть, что делаю не так? Quote Link to comment Share on other sites More sharing options...
Zeleza Posted May 23, 2022 Share Posted May 23, 2022 (edited) Все нашел, вопрос снимается - проблема была в не очевидной ошибке в Makefile самого пакета - не указал версию пакета в переменной PKG_VERSION. Отловить смог по дампу cat ./logs/package/utils/<пакет>/dump.txt Edited May 23, 2022 by Zeleza Quote Link to comment Share on other sites More sharing options...
zyxmon Posted May 23, 2022 Share Posted May 23, 2022 20 минут назад, Zeleza сказал: Куда посмотреть, что делаю не так? Пакет выбран в конфиге? make menuconfig Quote Link to comment Share on other sites More sharing options...
Zeleza Posted May 23, 2022 Share Posted May 23, 2022 (edited) 6 минут назад, zyxmon сказал: Пакет выбран в конфиге? make menuconfig Да, конечно, хотя @Александр Рыжов выше написал, что никакие галки трогать не стоит. ) Если не трудно, проясните этот момент пожалуйста, чтобы в голове все на свои места встало. В принципе нужно галку ставить или нет в menuconfig напротив собираемого пакета? Edited May 23, 2022 by Zeleza Quote Link to comment Share on other sites More sharing options...
zyxmon Posted May 23, 2022 Share Posted May 23, 2022 1 минуту назад, Zeleza сказал: В принципе нужно галку ставить или нет в menuconfig напротив собираемого пакета? Если собираете новый пакет, то нужно его выбрать в menuconfig 1 Quote Link to comment Share on other sites More sharing options...
Uzov Posted August 5, 2022 Share Posted August 5, 2022 В 21.11.2016 в 18:24, TheBB сказал: make tools/install make toolchain/install make target/compile make package/compile Одна особенность - так не создаётся Packages.gz. Лучше make. Quote Link to comment Share on other sites More sharing options...
TheBB Posted August 5, 2022 Author Share Posted August 5, 2022 1 минуту назад, Uzov сказал: Одна особенность - так не создаётся Packages.gz. Лучше make. или make package/index Quote Link to comment Share on other sites More sharing options...
Zeleza Posted November 30, 2022 Share Posted November 30, 2022 Доброго всем дня, Возможно кому будет полезно. Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.