Ubuntu16.04下調試gstreamer+rkisp(一)

在上一個關於luvcview任務中發現許多isp功能未實現,考慮用gstreamer再找到獨立rkisp插件進行編寫.目前由於相關資料較少,可能沒有直接的rkisp插件,好在能在githup上找到Linux-Rockchip相關文件.
https://github.com/rockchip-linux

根據 <RK_Linux_Camera_Gstreamer 應用開發>

1.搭建gstreamer環境

略.

2.安裝使用Gstreamer的插件

安裝使用 Gstreamer rkisp element:
首先解壓縮基於 Gstreamer 的 rkisp 插件,並根據不同環境進行編譯安裝。
Firefly 開發板上,請運行以下命令:

$ ./autogen.sh --prefix=/usr/local --enable-gst --enable-rkiq
$make
$ make install

在沒有編譯環境的開發板上,請先在 PC 端運行以下命令進行交叉編譯後,再將編譯生成的庫安裝
到開發板上,這裏以 excavator 開發板爲例:

$ export PATH=/path/to/cross-compiler:$PATH
$ CC=aarch64-linux-gcc ./autogen.sh --prefix=./out --host=aarch64-linux
--enable-gst --enable-rkiq
$ make
$ make install

目前準備在下述幾個包中進行編譯,懷着試一試的態度考察是否可行:
把它們就當成rkisp試試…
在這裏插入圖片描述若需需安裝交叉編譯工具,rk3399如下:

$ sudo apt-get install gcc-arm-linux-gnueabihf \
gcc-aarch64-linux-gnu device-tree-compiler lzop libncurses5-dev \
libssl1.0.0 libssl-dev

檢測交叉編譯工具:

$aarch64-linux-gnu-gcc -v

編譯過程與結果

gst-plugins-rockchip-master

在這裏插入圖片描述

fatal: Not a git repository (or any of the parent directories): .git
Failed to create commit hook symlink, copying instead ...
cp: 無法獲取'common/hooks/pre-commit.hook' 的文件狀態(stat): 沒有那個文件或目錄
+ passing argument --prefix=./out to configure
+ passing argument --host=aarch64-linux to configure
+ passing argument --enable-gst to configure
+ passing argument --enable-rkiq to configure
+ options passed to configure:  --prefix=./out --host=aarch64-linux --enable-gst --enable-rkiq
+ check for build tools
  checking for autoreconf ... 
/usr/bin/autoreconf
  checking for pkg-config ... 
/usr/bin/pkg-config
+ running autopoint --force...
libtoolize: putting auxiliary files in '.'.
libtoolize: copying file './ltmain.sh'
libtoolize: putting macros in 'm4'.
libtoolize: copying file 'm4/libtool.m4'
libtoolize: copying file 'm4/ltoptions.m4'
libtoolize: copying file 'm4/ltsugar.m4'
libtoolize: copying file 'm4/ltversion.m4'
libtoolize: copying file 'm4/lt~obsolete.m4'
libtoolize: Remember to add 'LT_INIT' to configure.ac.
libtoolize: Consider adding 'AC_CONFIG_MACRO_DIRS([m4])' to configure.ac,
libtoolize: and rerunning libtoolize and aclocal.
configure.ac:66: warning: The 'AM_PROG_MKDIR_P' macro is deprecated, and its use is discouraged.
configure.ac:66: You should use the Autoconf-provided 'AC_PROG_MKDIR_P' macro instead,
configure.ac:66: and use '$(MKDIR_P)' instead of '$(mkdir_p)'in your Makefile.am files.
configure.ac:46: installing './compile'
configure.ac:10: installing './config.guess'
configure.ac:10: installing './config.sub'
configure.ac:13: installing './install-sh'
configure.ac:13: installing './missing'
Makefile.am: installing './INSTALL'
Makefile.am:1: warning: AM_GNU_GETTEXT used but 'po' not in SUBDIRS
gst/rkv4l2/Makefile.am: installing './depcomp'
+ running configure ... 
  default flags:  --enable-maintainer-mode --enable-gtk-doc
  external flags:  --prefix=./out --host=aarch64-linux --enable-gst --enable-rkiq

./configure --enable-maintainer-mode --enable-gtk-doc --prefix=./out --host=aarch64-linux --enable-gst --enable-rkiq
configure: WARNING: unrecognized options: --enable-gtk-doc, --enable-gst, --enable-rkiq
configure: error: expected an absolute directory name for --prefix: ./out
  configure failed

補全路徑

root@lowfree02:/home/lowfree/doc/rockchip-linux/gst-plugins-rockchip-master# CC=aarch64-linux-gcc ./autogen.sh --prefix=/home/lowfree/doc/rockchip-linux/gst-plugins-rockchip-master/out --host=aarch64-linux --enable-gst --enable-rkiq
fatal: Not a git repository (or any of the parent directories): .git
Failed to create commit hook symlink, copying instead ...
cp: 無法獲取'common/hooks/pre-commit.hook' 的文件狀態(stat): 沒有那個文件或目錄
+ passing argument --prefix=/home/lowfree/doc/rockchip-linux/gst-plugins-rockchip-master/out to configure
+ passing argument --host=aarch64-linux to configure
+ passing argument --enable-gst to configure
+ passing argument --enable-rkiq to configure
+ options passed to configure:  --prefix=/home/lowfree/doc/rockchip-linux/gst-plugins-rockchip-master/out --host=aarch64-linux --enable-gst --enable-rkiq
+ check for build tools
  checking for autoreconf ... 
/usr/bin/autoreconf
  checking for pkg-config ... 
/usr/bin/pkg-config
+ running autopoint --force...
libtoolize: putting auxiliary files in '.'.
libtoolize: copying file './ltmain.sh'
libtoolize: putting macros in 'm4'.
libtoolize: copying file 'm4/libtool.m4'
libtoolize: copying file 'm4/ltoptions.m4'
libtoolize: copying file 'm4/ltsugar.m4'
libtoolize: copying file 'm4/ltversion.m4'
libtoolize: copying file 'm4/lt~obsolete.m4'
libtoolize: Remember to add 'LT_INIT' to configure.ac.
libtoolize: Consider adding 'AC_CONFIG_MACRO_DIRS([m4])' to configure.ac,
libtoolize: and rerunning libtoolize and aclocal.
configure.ac:66: warning: The 'AM_PROG_MKDIR_P' macro is deprecated, and its use is discouraged.
configure.ac:66: You should use the Autoconf-provided 'AC_PROG_MKDIR_P' macro instead,
configure.ac:66: and use '$(MKDIR_P)' instead of '$(mkdir_p)'in your Makefile.am files.
configure.ac:46: installing './compile'
configure.ac:13: installing './missing'
Makefile.am:1: warning: AM_GNU_GETTEXT used but 'po' not in SUBDIRS
gst/rkv4l2/Makefile.am: installing './depcomp'
+ running configure ... 
  default flags:  --enable-maintainer-mode --enable-gtk-doc
  external flags:  --prefix=/home/lowfree/doc/rockchip-linux/gst-plugins-rockchip-master/out --host=aarch64-linux --enable-gst --enable-rkiq

./configure --enable-maintainer-mode --enable-gtk-doc --prefix=/home/lowfree/doc/rockchip-linux/gst-plugins-rockchip-master/out --host=aarch64-linux --enable-gst --enable-rkiq
configure: WARNING: unrecognized options: --enable-gtk-doc, --enable-gst, --enable-rkiq
checking build system type... x86_64-pc-linux-gnu
checking host system type... aarch64-unknown-linux-gnu
checking target system type... aarch64-unknown-linux-gnu
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for aarch64-linux-strip... no
checking for strip... strip
checking for a thread-safe mkdir -p... /bin/mkdir -p
checking for gawk... no
checking for mawk... mawk
checking whether make sets $(MAKE)... yes
checking whether make supports nested variables... yes
checking whether UID '0' is supported by ustar format... yes
checking whether GID '0' is supported by ustar format... yes
checking how to create a ustar tar archive... gnutar
checking nano version... 0 (release)
checking whether to enable maintainer-specific portions of Makefiles... yes
checking whether make supports nested variables... (cached) yes
checking how to print strings... printf
checking for style of include used by make... GNU
checking for aarch64-linux-gcc... aarch64-linux-gcc
checking whether the C compiler works... no
configure: error: in `/home/lowfree/doc/rockchip-linux/gst-plugins-rockchip-master':
configure: error: C compiler cannot create executables
See `config.log' for more details
  configure failed


gstreamer-camera-master

在這裏插入圖片描述

ln: 無法創建符號鏈接'.git/hooks/pre-commit': 沒有那個文件或目錄
Generating configure files
libtoolize: putting auxiliary files in '.'.
libtoolize: copying file './ltmain.sh'
libtoolize: putting macros in AC_CONFIG_MACRO_DIRS, 'm4'.
libtoolize: copying file 'm4/libtool.m4'
libtoolize: copying file 'm4/ltoptions.m4'
libtoolize: copying file 'm4/ltsugar.m4'
libtoolize: copying file 'm4/ltversion.m4'
libtoolize: copying file 'm4/lt~obsolete.m4'
libtoolize: Consider adding '-I m4' to ACLOCAL_AMFLAGS in Makefile.am.

configure.ac:31: installing './compile'
configure.ac:34: installing './config.guess'
configure.ac:34: installing './config.sub'
configure.ac:13: installing './install-sh'
configure.ac:13: installing './missing'
modules/rkisp/Makefile.am: installing './depcomp'
libtoolize: putting auxiliary files in '.'.
libtoolize: copying file './ltmain.sh'
libtoolize: putting macros in AC_CONFIG_MACRO_DIRS, 'm4'.
libtoolize: copying file 'm4/libtool.m4'
libtoolize: copying file 'm4/ltoptions.m4'
libtoolize: copying file 'm4/ltsugar.m4'
libtoolize: copying file 'm4/ltversion.m4'
libtoolize: copying file 'm4/lt~obsolete.m4'
libtoolize: Consider adding '-I m4' to ACLOCAL_AMFLAGS in Makefile.am.
configure.ac:31: installing './compile'
configure.ac:13: installing './missing'
modules/rkisp/Makefile.am: installing './depcomp'
configure: error: expected an absolute directory name for --prefix: ./out

ln: 無法創建符號鏈接'.git/hooks/pre-commit': 沒有那個文件或目錄
...
configure: error: expected an absolute directory name for --prefix: ./out

補全成絕對路徑

root@lowfree02:/home/lowfree/doc/rockchip-linux/gstreamer-camera-master# 
CC=aarch64-linux-gcc ./autogen.sh --prefix=/home/lowfree/doc/rockchip-linux/gstreamer-camera-master/out --host=aarch64-linux --enable-gst --enable-rkiq

ln: 無法創建符號鏈接'.git/hooks/pre-commit': 沒有那個文件或目錄
Generating configure files
libtoolize: Consider adding '-I m4' to ACLOCAL_AMFLAGS in Makefile.am.
libtoolize: putting auxiliary files in '.'.
libtoolize: copying file './ltmain.sh'
libtoolize: putting macros in AC_CONFIG_MACRO_DIRS, 'm4'.
libtoolize: copying file 'm4/libtool.m4'
libtoolize: copying file 'm4/ltoptions.m4'
libtoolize: copying file 'm4/ltsugar.m4'
libtoolize: copying file 'm4/ltversion.m4'
libtoolize: copying file 'm4/lt~obsolete.m4'
libtoolize: Consider adding '-I m4' to ACLOCAL_AMFLAGS in Makefile.am.
configure.ac:31: installing './compile'
configure.ac:13: installing './missing'
modules/rkisp/Makefile.am: installing './depcomp'
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for aarch64-linux-strip... no
checking for strip... strip
checking for a thread-safe mkdir -p... /bin/mkdir -p
checking for gawk... no
checking for mawk... mawk
checking whether make sets $(MAKE)... yes
checking whether make supports nested variables... yes
checking for aarch64-linux-gcc... aarch64-linux-gcc
checking whether the C compiler works... no
configure: error: in `/home/lowfree/doc/rockchip-linux/gstreamer-camera-master':
configure: error: C compiler cannot create executables
See `config.log' for more details

gstreamer-rockchip-extra-master

root@lowfree02:/home/lowfree/doc/rockchip-linux/gstreamer-rockchip-extra-master# CC=aarch64-linux-gcc ./autogen.sh --prefix=/home/lowfree/doc/rockchip-linux/gstreamer-rockchip-extra-master/out --host=aarch64-linux --enable-gst --enable-rkiq
fatal: Not a git repository (or any of the parent directories): .git
Failed to create commit hook symlink, copying instead ...
cp: 無法獲取'common/hooks/pre-commit.hook' 的文件狀態(stat): 沒有那個文件或目錄
+ passing argument --prefix=/home/lowfree/doc/rockchip-linux/gstreamer-rockchip-extra-master/out to configure
+ passing argument --host=aarch64-linux to configure
+ passing argument --enable-gst to configure
+ passing argument --enable-rkiq to configure
+ options passed to configure:  --prefix=/home/lowfree/doc/rockchip-linux/gstreamer-rockchip-extra-master/out --host=aarch64-linux --enable-gst --enable-rkiq
+ check for build tools
  checking for autoreconf ... 
/usr/bin/autoreconf
  checking for pkg-config ... 
/usr/bin/pkg-config
+ running autopoint --force...
libtoolize: putting auxiliary files in '.'.
libtoolize: copying file './ltmain.sh'
libtoolize: putting macros in 'm4'.
libtoolize: copying file 'm4/libtool.m4'
libtoolize: copying file 'm4/ltoptions.m4'
libtoolize: copying file 'm4/ltsugar.m4'
libtoolize: copying file 'm4/ltversion.m4'
libtoolize: copying file 'm4/lt~obsolete.m4'
libtoolize: Remember to add 'LT_INIT' to configure.ac.
libtoolize: Consider adding 'AC_CONFIG_MACRO_DIRS([m4])' to configure.ac,
libtoolize: and rerunning libtoolize and aclocal.
configure.ac:66: warning: The 'AM_PROG_MKDIR_P' macro is deprecated, and its use is discouraged.
configure.ac:66: You should use the Autoconf-provided 'AC_PROG_MKDIR_P' macro instead,
configure.ac:66: and use '$(MKDIR_P)' instead of '$(mkdir_p)'in your Makefile.am files.
configure.ac:46: installing './compile'
configure.ac:10: installing './config.guess'
configure.ac:10: installing './config.sub'
configure.ac:13: installing './install-sh'
configure.ac:13: installing './missing'
Makefile.am: installing './INSTALL'
Makefile.am:1: warning: AM_GNU_GETTEXT used but 'po' not in SUBDIRS
gst/kms/Makefile.am: installing './depcomp'
+ running configure ... 
  default flags:  --enable-maintainer-mode --enable-gtk-doc
  external flags:  --prefix=/home/lowfree/doc/rockchip-linux/gstreamer-rockchip-extra-master/out --host=aarch64-linux --enable-gst --enable-rkiq

./configure --enable-maintainer-mode --enable-gtk-doc --prefix=/home/lowfree/doc/rockchip-linux/gstreamer-rockchip-extra-master/out --host=aarch64-linux --enable-gst --enable-rkiq
configure: WARNING: unrecognized options: --enable-gtk-doc, --enable-gst, --enable-rkiq
checking build system type... x86_64-pc-linux-gnu
checking host system type... aarch64-unknown-linux-gnu
checking target system type... aarch64-unknown-linux-gnu
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for aarch64-linux-strip... no
checking for strip... strip
checking for a thread-safe mkdir -p... /bin/mkdir -p
checking for gawk... no
checking for mawk... mawk
checking whether make sets $(MAKE)... yes
checking whether make supports nested variables... yes
checking whether UID '0' is supported by ustar format... yes
checking whether GID '0' is supported by ustar format... yes
checking how to create a ustar tar archive... gnutar
checking nano version... 0 (release)
checking whether to enable maintainer-specific portions of Makefiles... yes
checking whether make supports nested variables... (cached) yes
checking how to print strings... printf
checking for style of include used by make... GNU
checking for aarch64-linux-gcc... aarch64-linux-gcc
checking whether the C compiler works... no
configure: error: in `/home/lowfree/doc/rockchip-linux/gstreamer-rockchip-extra-master':
configure: error: C compiler cannot create executables
See `config.log' for more details
  configure failed

gstreamer-rockchip-master

root@lowfree02:/home/lowfree/doc/rockchip-linux/gstreamer-rockchip-master# CC=aarch64-linux-gcc ./autogen.sh --prefix=/home/lowfree/doc/rockchip-linux/gstreamer-rockchip-master/out --host=aarch64-linux --enable-gst --enable-rkiqfatal: Not a git repository (or any of the parent directories): .git
Failed to create commit hook symlink, copying instead ...
cp: 無法創建普通文件'.git/hooks/pre-commit': 沒有那個文件或目錄
+ passing argument --prefix=/home/lowfree/doc/rockchip-linux/gstreamer-rockchip-master/out to configure
+ passing argument --host=aarch64-linux to configure
+ passing argument --enable-gst to configure
+ passing argument --enable-rkiq to configure
+ options passed to configure:  --prefix=/home/lowfree/doc/rockchip-linux/gstreamer-rockchip-master/out --host=aarch64-linux --enable-gst --enable-rkiq
+ check for build tools
  checking for autoreconf ... 
/usr/bin/autoreconf
  checking for pkg-config ... 
/usr/bin/pkg-config
+ running autopoint --force...
libtoolize: putting auxiliary files in '.'.
libtoolize: copying file './ltmain.sh'
libtoolize: putting macros in 'm4'.
libtoolize: copying file 'm4/libtool.m4'
libtoolize: copying file 'm4/ltoptions.m4'
libtoolize: copying file 'm4/ltsugar.m4'
libtoolize: copying file 'm4/ltversion.m4'
libtoolize: copying file 'm4/lt~obsolete.m4'
libtoolize: Remember to add 'LT_INIT' to configure.ac.
libtoolize: Consider adding 'AC_CONFIG_MACRO_DIRS([m4])' to configure.ac,
libtoolize: and rerunning libtoolize and aclocal.
configure.ac:63: warning: The 'AM_PROG_MKDIR_P' macro is deprecated, and its use is discouraged.
configure.ac:63: You should use the Autoconf-provided 'AC_PROG_MKDIR_P' macro instead,
configure.ac:63: and use '$(MKDIR_P)' instead of '$(mkdir_p)'in your Makefile.am files.
configure.ac:46: installing './compile'
configure.ac:13: installing './missing'
Makefile.am:1: warning: AM_GNU_GETTEXT used but 'po' not in SUBDIRS
gst/rkximage/Makefile.am: installing './depcomp'
+ running configure ... 
  default flags:  --enable-maintainer-mode --enable-gtk-doc
  external flags:  --prefix=/home/lowfree/doc/rockchip-linux/gstreamer-rockchip-master/out --host=aarch64-linux --enable-gst --enable-rkiq

./configure --enable-maintainer-mode --enable-gtk-doc --prefix=/home/lowfree/doc/rockchip-linux/gstreamer-rockchip-master/out --host=aarch64-linux --enable-gst --enable-rkiq
configure: WARNING: unrecognized options: --enable-gtk-doc, --enable-gst, --enable-rkiq
checking build system type... x86_64-pc-linux-gnu
checking host system type... aarch64-unknown-linux-gnu
checking target system type... aarch64-unknown-linux-gnu
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for aarch64-linux-strip... no
checking for strip... strip
checking for a thread-safe mkdir -p... /bin/mkdir -p
checking for gawk... no
checking for mawk... mawk
checking whether make sets $(MAKE)... yes
checking whether make supports nested variables... yes
checking whether UID '0' is supported by ustar format... yes
checking whether GID '0' is supported by ustar format... yes
checking how to create a ustar tar archive... gnutar
checking nano version... 0 (release)
checking whether to enable maintainer-specific portions of Makefiles... yes
checking whether make supports nested variables... (cached) yes
checking how to print strings... printf
checking for style of include used by make... GNU
checking for aarch64-linux-gcc... aarch64-linux-gcc
checking whether the C compiler works... no
configure: error: in `/home/lowfree/doc/rockchip-linux/gstreamer-rockchip-master':
configure: error: C compiler cannot create executables
See `config.log' for more details
  configure failed

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章