dongju-chae / nns-contributhon

4 stars 1 forks source link

[Build] NNStreamer 타이젠 패키지 만들기 (using gbs) #7

Open dongju-chae opened 4 years ago

dongju-chae commented 4 years ago

아래 설명은 우분투 16.04/18.04 기준입니다.

gbs는 타이젠 빌드 시스템으로서 우분투에서 사용되는 pbuilder와 비슷한 개념을 가지고 있습니다. 타이젠 빌드에 대해서도 궁금해하시는 분이 계셔서 가이드 공유드립니다.

  1. gbs 설치 및 .gbs.conf 파일 설정
    
    $ sudo apt install gbs

$ cat ~/.gbs.conf [general] profile = profile.tizen tmpdir = /var/tmp editor = vim packaging_branch = tizen workdir = .

[profile.tizen] obs = obs.tizen repos = repo.base, repo.unified, repo.debug buildroot = ~/GBS-ROOT-SNAPSHOT/

[obs.tizen] url = https://build.tizen.org

[repo.base] url = http://download.tizen.org/snapshots/tizen/base/latest/repos/standard/packages/

[repo.unified] url = http://download.tizen.org/snapshots/tizen/unified/latest/repos/standard/packages/

[repo.debug] url = http://download.tizen.org/snapshots/tizen/base/latest/repos/standard/debug/


2. gbs로 nnstreamer 빌드하기

$ pwd /home/dchae/nnstreamer

$ gbs build -A x86_64 --include-all info: generate repositories ... warning: No local package repository for arch x86_64 info: build conf has been downloaded at: /var/tmp/dchae-gbs/tizen.conf info: start building packages from: /home/dchae/nnstreamer (git) 2020-07-30 15:27 +0900 gbs 0.25.12 info: prepare sources... info: start export source from: /home/dchae/nnstreamer ... info: the following uncommitted changes would be included: api/android/build-android-lib.sh info: Creating (native) source archive nnstreamer-1.5.3.tar.gz from 'ff4403a541586a876776bce262f7437e4a72c302' info: package files have been exported to: /home/dchae/GBS-ROOT-SNAPSHOT/local/sources/tizen/nnstreamer-1.5.3-0 info: retrieving repo metadata... info: parsing package data... info: building repo metadata ... info: resolving skipped packages ... info: package dependency resolving ... info: there is no circle in 1 packages info: [1/1] building nnstreamer-1.5.3-0 x86_64 tizen (worker: 0) logging output to /home/dchae/GBS-ROOT-SNAPSHOT/local/BUILD-ROOTS/scratch.x86_64.0/.build.log... [ 0s] on X86_64, no limit mem size [ 0s] Using BUILD_ROOT=/home/dchae/GBS-ROOT-SNAPSHOT/local/BUILD-ROOTS/scratch.x86_64.0 [ 0s] Using BUILD_ARCH=x86_64:i686:i586:i486:i386:noarch [ 0s] [ 0s] [ 0s] dchae-ubuntu started "build nnstreamer.spec" at Thu Jul 30 06:27:49 UTC 2020. [ 0s] [ 0s] [ 0s] processing recipe /home/dchae/GBS-ROOT-SNAPSHOT/local/sources/tizen/nnstreamer-1.5.3-0/nnstreamer.spec ...

... [ 빌드 중 생략 ] ...

[ 102s] Provides: nnstreamer-edgetpu-debuginfo = 1.5.3-0 nnstreamer-edgetpu-debuginfo(x86-64) = 1.5.3-0 [ 102s] Requires(rpmlib): rpmlib(CompressedFileNames) <= 3.0.4-1 rpmlib(PayloadFilesHavePrefix) <= 4.0-1 [ 102s] Checking for unpackaged file(s): /usr/lib/rpm/check-files /home/abuild/rpmbuild/BUILDROOT/nnstreamer-1.5.3-0.x86_64 [ 103s] Wrote: /home/abuild/rpmbuild/SRPMS/nnstreamer-1.5.3-0.src.rpm [ 103s] Wrote: /home/abuild/rpmbuild/RPMS/x86_64/nnstreamer-1.5.3-0.x86_64.rpm [ 104s] Wrote: /home/abuild/rpmbuild/RPMS/x86_64/nnstreamer-debugsource-1.5.3-0.x86_64.rpm [ 104s] Wrote: /home/abuild/rpmbuild/RPMS/x86_64/nnstreamer-tensorflow-lite-1.5.3-0.x86_64.rpm [ 104s] Wrote: /home/abuild/rpmbuild/RPMS/x86_64/nnstreamer-python2-1.5.3-0.x86_64.rpm [ 104s] Wrote: /home/abuild/rpmbuild/RPMS/x86_64/nnstreamer-protobuf-1.5.3-0.x86_64.rpm [ 104s] Wrote: /home/abuild/rpmbuild/RPMS/x86_64/nnstreamer-flatbuf-1.5.3-0.x86_64.rpm [ 104s] Wrote: /home/abuild/rpmbuild/RPMS/x86_64/nnstreamer-devel-1.5.3-0.x86_64.rpm [ 104s] Wrote: /home/abuild/rpmbuild/RPMS/x86_64/nnstreamer-devel-static-1.5.3-0.x86_64.rpm [ 104s] Wrote: /home/abuild/rpmbuild/RPMS/x86_64/nnstreamer-custom-filter-example-1.5.3-0.x86_64.rpm [ 105s] Wrote: /home/abuild/rpmbuild/RPMS/x86_64/capi-nnstreamer-1.5.3-0.x86_64.rpm [ 105s] Wrote: /home/abuild/rpmbuild/RPMS/x86_64/capi-nnstreamer-devel-1.5.3-0.x86_64.rpm [ 105s] Wrote: /home/abuild/rpmbuild/RPMS/x86_64/capi-nnstreamer-devel-static-1.5.3-0.x86_64.rpm [ 105s] Wrote: /home/abuild/rpmbuild/RPMS/x86_64/capi-ml-common-devel-1.5.3-0.x86_64.rpm [ 105s] Wrote: /home/abuild/rpmbuild/RPMS/x86_64/nnstreamer-tizen-internal-capi-devel-1.5.3-0.x86_64.rpm [ 105s] Wrote: /home/abuild/rpmbuild/RPMS/x86_64/nnstreamer-ncsdk2-1.5.3-0.x86_64.rpm [ 105s] Wrote: /home/abuild/rpmbuild/RPMS/x86_64/nnstreamer-tizen-sensor-1.5.3-0.x86_64.rpm [ 105s] Wrote: /home/abuild/rpmbuild/RPMS/x86_64/nnstreamer-edgetpu-1.5.3-0.x86_64.rpm [ 106s] Wrote: /home/abuild/rpmbuild/RPMS/x86_64/nnstreamer-debuginfo-1.5.3-0.x86_64.rpm [ 106s] Wrote: /home/abuild/rpmbuild/RPMS/x86_64/nnstreamer-tensorflow-lite-debuginfo-1.5.3-0.x86_64.rpm [ 106s] Wrote: /home/abuild/rpmbuild/RPMS/x86_64/nnstreamer-python2-debuginfo-1.5.3-0.x86_64.rpm [ 106s] Wrote: /home/abuild/rpmbuild/RPMS/x86_64/nnstreamer-protobuf-debuginfo-1.5.3-0.x86_64.rpm [ 106s] Wrote: /home/abuild/rpmbuild/RPMS/x86_64/nnstreamer-flatbuf-debuginfo-1.5.3-0.x86_64.rpm [ 107s] Wrote: /home/abuild/rpmbuild/RPMS/x86_64/nnstreamer-custom-filter-example-debuginfo-1.5.3-0.x86_64.rpm [ 107s] Wrote: /home/abuild/rpmbuild/RPMS/x86_64/capi-nnstreamer-debuginfo-1.5.3-0.x86_64.rpm [ 107s] Wrote: /home/abuild/rpmbuild/RPMS/x86_64/nnstreamer-ncsdk2-debuginfo-1.5.3-0.x86_64.rpm [ 107s] Wrote: /home/abuild/rpmbuild/RPMS/x86_64/nnstreamer-tizen-sensor-debuginfo-1.5.3-0.x86_64.rpm [ 107s] Wrote: /home/abuild/rpmbuild/RPMS/x86_64/nnstreamer-edgetpu-debuginfo-1.5.3-0.x86_64.rpm [ 107s] Executing(%clean): /bin/sh -e /var/tmp/rpm-tmp.afTaih [ 107s] + umask 022 [ 107s] + cd /home/abuild/rpmbuild/BUILD [ 107s] + cd nnstreamer-1.5.3 [ 107s] + /bin/rm -rf /home/abuild/rpmbuild/BUILDROOT/nnstreamer-1.5.3-0.x86_64 [ 107s] + exit 0 [ 107s] ... checking for files with abuild user/group [ 107s] [ 107s] dchae-ubuntu finished "build nnstreamer.spec" at Thu Jul 30 06:29:36 UTC 2020. [ 107s] info: finished building nnstreamer info: updating local repo info: Build Status Summary === Total succeeded built packages: (1) === info: generated html format report: /home/dchae/GBS-ROOT-SNAPSHOT/local/repos/tizen/x86_64/index.html info: generated RPM packages can be found from local repo: /home/dchae/GBS-ROOT-SNAPSHOT/local/repos/tizen/x86_64/RPMS info: generated source RPM packages can be found from local repo: /home/dchae/GBS-ROOT-SNAPSHOT/local/repos/tizen/x86_64/SRPMS info: build logs can be found in: /home/dchae/GBS-ROOT-SNAPSHOT/local/repos/tizen/x86_64/logs info: build roots located in: /home/dchae/GBS-ROOT-SNAPSHOT/local/BUILD-ROOTS/scratch.x86_64.* info: Done


3. 생성된 패키지 확인하기 (.rpm 파일이라서 우분투에서는 설치 불가능)

$ ls -al ~/GBS-ROOT-SNAPSHOT/local/repos/tizen/x86_64/RPMS/ total 74232 drwxrwxr-x 2 dchae dchae 4096 7월 30 15:29 . drwxrwxr-x 6 dchae dchae 4096 7월 30 15:29 .. -rw-rw-r-- 2 dchae dchae 4785 7월 30 15:29 capi-ml-common-devel-1.5.3-0.x86_64.rpm -rw-rw-r-- 2 dchae dchae 41192 7월 30 15:29 capi-nnstreamer-1.5.3-0.x86_64.rpm -rw-rw-r-- 2 dchae dchae 92981 7월 30 15:29 capi-nnstreamer-debuginfo-1.5.3-0.x86_64.rpm -rw-rw-r-- 2 dchae dchae 13893 7월 30 15:29 capi-nnstreamer-devel-1.5.3-0.x86_64.rpm -rw-rw-r-- 2 dchae dchae 32761 7월 30 15:29 capi-nnstreamer-devel-static-1.5.3-0.x86_64.rpm -rw-rw-r-- 2 dchae dchae 144840 7월 30 15:29 nnstreamer-1.5.3-0.x86_64.rpm -rw-rw-r-- 2 dchae dchae 38304 7월 30 15:29 nnstreamer-custom-filter-example-1.5.3-0.x86_64.rpm -rw-rw-r-- 2 dchae dchae 240801 7월 30 15:29 nnstreamer-custom-filter-example-debuginfo-1.5.3-0.x86_64.rpm -rw-rw-r-- 2 dchae dchae 504905 7월 30 15:29 nnstreamer-debuginfo-1.5.3-0.x86_64.rpm -rw-rw-r-- 2 dchae dchae 226606 7월 30 15:29 nnstreamer-debugsource-1.5.3-0.x86_64.rpm -rw-rw-r-- 2 dchae dchae 22513 7월 30 15:29 nnstreamer-devel-1.5.3-0.x86_64.rpm -rw-rw-r-- 2 dchae dchae 168969 7월 30 15:29 nnstreamer-devel-static-1.5.3-0.x86_64.rpm -rw-rw-r-- 2 dchae dchae 577088 7월 30 15:29 nnstreamer-edgetpu-1.5.3-0.x86_64.rpm -rw-rw-r-- 2 dchae dchae 297301 7월 30 15:29 nnstreamer-edgetpu-debuginfo-1.5.3-0.x86_64.rpm -rw-rw-r-- 2 dchae dchae 18364 7월 30 15:29 nnstreamer-flatbuf-1.5.3-0.x86_64.rpm -rw-rw-r-- 2 dchae dchae 144981 7월 30 15:29 nnstreamer-flatbuf-debuginfo-1.5.3-0.x86_64.rpm -rw-rw-r-- 2 dchae dchae 8360 7월 30 15:29 nnstreamer-ncsdk2-1.5.3-0.x86_64.rpm -rw-rw-r-- 2 dchae dchae 19749 7월 30 15:29 nnstreamer-ncsdk2-debuginfo-1.5.3-0.x86_64.rpm -rw-rw-r-- 2 dchae dchae 27088 7월 30 15:29 nnstreamer-protobuf-1.5.3-0.x86_64.rpm -rw-rw-r-- 2 dchae dchae 274897 7월 30 15:29 nnstreamer-protobuf-debuginfo-1.5.3-0.x86_64.rpm -rw-rw-r-- 2 dchae dchae 17376 7월 30 15:29 nnstreamer-python2-1.5.3-0.x86_64.rpm -rw-rw-r-- 2 dchae dchae 88629 7월 30 15:29 nnstreamer-python2-debuginfo-1.5.3-0.x86_64.rpm -rw-rw-r-- 2 dchae dchae 563260 7월 30 15:29 nnstreamer-tensorflow-lite-1.5.3-0.x86_64.rpm -rw-rw-r-- 2 dchae dchae 245517 7월 30 15:29 nnstreamer-tensorflow-lite-debuginfo-1.5.3-0.x86_64.rpm -rw-rw-r-- 2 dchae dchae 4885 7월 30 15:29 nnstreamer-tizen-internal-capi-devel-1.5.3-0.x86_64.rpm -rw-rw-r-- 2 dchae dchae 15536 7월 30 15:29 nnstreamer-tizen-sensor-1.5.3-0.x86_64.rpm -rw-rw-r-- 2 dchae dchae 36081 7월 30 15:29 nnstreamer-tizen-sensor-debuginfo-1.5.3-0.x86_64.rpm

tony-jinwoo-ahn commented 4 years ago

gbs 설치는 했는데 빌드시 문제가 있습니다:

$ gbs build -A x86_64 --include-all
usage: git bisect [help|start|bad|good|new|old|terms|skip|next|reset|visualize|replay|log|run]

혹시 이런 현상을 본 적이 있으신가요?

tony-jinwoo-ahn commented 4 years ago

"Oh My Zsh" 관련 문제였습니다. 해결했습니다.