ros / meta-ros

OpenEmbedded Layers for ROS 1 and ROS 2
MIT License
382 stars 251 forks source link

How to add meta-ros (ros 2 dashing) to existing image "demo-image-full" on Nvidia Jetson TX2? #1047

Closed Arshdsam closed 1 year ago

Arshdsam commented 1 year ago

I'am a newbie in Yocto Project, I used tegra-demo-distro repo to successfully built the "demo-image-full" (Dunfell) image and boot it on my Jetson TX2. My Host PC is running on Ubuntu 18.04 LTS. When I tried adding meta-ros using the inputs from and from this link but ended up in errors. My bblayers.conf : BBLAYERS ?= " /home/hope/DunfellOS/tegra-demo-distro/layers/meta /home/hope/DunfellOS/tegra-demo-distro/layers/meta-tegra /home/hope/DunfellOS/tegra-demo-distro/layers/meta-tegra/contrib /home/hope/DunfellOS/tegra-demo-distro/layers/meta-oe /home/hope/DunfellOS/tegra-demo-distro/layers/meta-python /home/hope/DunfellOS/tegra-demo-distro/layers/meta-networking /home/hope/DunfellOS/tegra-demo-distro/layers/meta-filesystems /home/hope/DunfellOS/tegra-demo-distro/layers/meta-virtualization /home/hope/DunfellOS/tegra-demo-distro/layers/meta-tegra-community /home/hope/DunfellOS/tegra-demo-distro/layers/meta-mender-core /home/hope/DunfellOS/tegra-demo-distro/layers/meta-mender-tegra /home/hope/DunfellOS/tegra-demo-distro/layers/meta-tegra-support /home/hope/DunfellOS/tegra-demo-distro/layers/meta-demo-ci /home/hope/DunfellOS/tegra-demo-distro/layers/meta-tegrademo /home/hope/DunfellOS/tegra-demo-distro/layers/meta-ros/meta-ros2 /home/hope/DunfellOS/tegra-demo-distro/layers/meta-ros/meta-ros2-dashing /home/hope/DunfellOS/tegra-demo-distro/layers/meta-ros/meta-ros-backports-gatesgarth /home/hope/DunfellOS/tegra-demo-distro/layers/meta-ros/meta-ros-common " also. added these two lines at beginning of bblayers.conf : ROS_DISTRO = "dashing"

I used the methods suggested in the https://github.com/ros/meta-ros/wiki/OpenEmbedded-Build-Instructions#add-meta-ros-to-an-existing-openembedded-project But when i did bibake -p ros-core, thsi was the result: ~/DunfellOS/tegra-demo-distro/build-testdistro$ bitbake -p ros-core Parsing recipes: 100% |######################################################################################################################| Time: 0:01:17 Parsing of 3189 .bb files complete (0 cached, 3189 parsed). 4600 targets, 220 skipped, 1 masked, 0 errors. (NOTHING MORE, NOTHING LESS)

After entering "bitbake -p ros-core", i entered "bitbake ros-image-world" but ended up in earlier errors: $ bitbake ros-image-world Loading cache: 100% |########################################################################################################################| Time: 0:00:00 Loaded 4599 entries from dependency cache. Parsing recipes: 100% |######################################################################################################################| Time: 0:00:00 Parsing of 3189 .bb files complete (3188 cached, 1 parsed). 4600 targets, 220 skipped, 1 masked, 0 errors. NOTE: Resolving any missing task queue dependencies

Build Configuration: BB_VERSION = "1.46.0" BUILD_SYS = "x86_64-linux" NATIVELSBSTRING = "universal" TARGET_SYS = "aarch64-oe4t-linux" MACHINE = "jetson-tx2-devkit" DISTRO = "tegrademo" DISTRO_VERSION = "3.1.27+snapshot-20230902" TUNE_FEATURES = "aarch64 armv8a crc" TARGET_FPU = "" DISTRO_NAME = "OE4Tegra Demonstration Distro" ROS_DISTRO = "dashing" ROS_VERSION = "2" ROS_PYTHON_VERSION = "3" meta = "HEAD:b1fdc92450ba1f3869116d88bd92a5a75b8e9f87" meta-tegra contrib = "HEAD:133446740965f2ec7c97694d163d47db4009aa83" meta-oe meta-python meta-networking meta-filesystems = "HEAD:b8b0b06821d4d4df0cce4f07fa31a8ca1dd38f46" meta-virtualization = "HEAD:0dbb8593fa38ac2a04fcac04ff3e35611e849824" meta-tegra-community = "HEAD:ec14043c4785268be16005dbb91c5e1018233c5a" meta-tegra-support meta-demo-ci meta-tegrademo = "dunfell:a8a50343a250119d10865d7c8ce92b7e4d7959dd" meta-ros2 meta-ros2-dashing meta-ros-backports-gatesgarth meta-ros-backports-hardknott meta-ros-common = "dunfell:cd2e0d0625385ca821aa5129d20805640ac80734"

Initialising tasks: 100% |###################################################################################################################| Time: 0:00:21 Sstate summary: Wanted 6011 Found 388 Missed 5623 Current 1261 (6% match, 22% complete) NOTE: Executing Tasks ERROR: kbd-2.2.0-r0 do_compile: oe_runmake failed ERROR: kbd-2.2.0-r0 do_compile: Execution of '/home/hope/DunfellOS/tegra-demo-distro/build-testdistro/tmp/work/aarch64-oe4t-linux/kbd/2.2.0-r0/temp/run.do_compile.2000' failed with exit code 1 ERROR: Logfile of failure stored in: /home/hope/DunfellOS/tegra-demo-distro/build-testdistro/tmp/work/aarch64-oe4t-linux/kbd/2.2.0-r0/temp/log.do_compile.2000 Log data follows: | DEBUG: Executing python function autotools_aclocals | DEBUG: SITE files ['endian-little', 'bit-64', 'arm-common', 'arm-64', 'common-linux', 'common-glibc', 'aarch64-linux', 'common'] | DEBUG: Python function autotools_aclocals finished | DEBUG: Executing shell function do_compile | NOTE: make -j 8 | make all-recursive | make[1]: Entering directory '/home/hope/DunfellOS/tegra-demo-distro/build-testdistro/tmp/work/aarch64-oe4t-linux/kbd/2.2.0-r0/build' | Making all in src | make[2]: Entering directory '/home/hope/DunfellOS/tegra-demo-distro/build-testdistro/tmp/work/aarch64-oe4t-linux/kbd/2.2.0-r0/build/src' | Making all in libcommon

analyze.l: In function 'find_incl_file_near_fn': | analyze.l:141:24: warning: passing argument 2 of 'kbdfile_find' from incompatible pointer type [-Wincompatible-pointer-types] | In file included from ../../../kbd-2.2.0/src/libkeymap/keymap/kmap.h:36, | from ../../../kbd-2.2.0/src/libkeymap/keymap.h:8, | from ../../../kbd-2.2.0/src/libkeymap/analyze.c:1: | ../../../kbd-2.2.0/src/libkeymap/../libkbdfile/kbdfile.h:40:37: note: expected 'char ' but argument is of type 'const char ' | int kbdfile_find(char fnam, char dirpath, char suffixes, struct kbdfile fp); | ~^~~~~ | analyze.l:141:42: warning: passing argument 3 of 'kbdfile_find' from incompatible pointer type [-Wincompatible-pointer-types] | In file included from ../../../kbd-2.2.0/src/libkeymap/keymap/kmap.h:36, | from ../../../kbd-2.2.0/src/libkeymap/keymap.h:8, | from ../../../kbd-2.2.0/src/libkeymap/analyze.c:1: | ../../../kbd-2.2.0/src/libkeymap/../libkbdfile/kbdfile.h:40:53: note: expected 'char ' but argument is of type 'const char const' | int kbdfile_find(char fnam, char dirpath, char suffixes, struct kbdfile fp); | ~^~ | analyze.l: In function 'find_standard_incl_file': | analyze.l:168:22: warning: passing argument 2 of 'kbdfile_find' from incompatible pointer type [-Wincompatible-pointer-types] | In file included from ../../../kbd-2.2.0/src/libkeymap/keymap/kmap.h:36, | from ../../../kbd-2.2.0/src/libkeymap/keymap.h:8, | from ../../../kbd-2.2.0/src/libkeymap/analyze.c:1: | ../../../kbd-2.2.0/src/libkeymap/../libkbdfile/kbdfile.h:40:37: note: expected 'char ' but argument is of type 'const char const' | int kbdfile_find(char fnam, char dirpath, char suffixes, struct kbdfile fp); | ~^~~~~ | analyze.l:168:40: warning: passing argument 3 of 'kbdfile_find' from incompatible pointer type [-Wincompatible-pointer-types] | In file included from ../../../kbd-2.2.0/src/libkeymap/keymap/kmap.h:36, | from ../../../kbd-2.2.0/src/libkeymap/keymap.h:8, | from ../../../kbd-2.2.0/src/libkeymap/analyze.c:1: | ../../../kbd-2.2.0/src/libkeymap/../libkbdfile/kbdfile.h:40:53: note: expected 'char ' but argument is of type 'const char const' | int kbdfile_find(char fnam, char dirpath, char suffixes, struct kbdfile fp); | ~^~ | analyze.l:197:24: warning: passing argument 2 of 'kbdfile_find' from incompatible pointer type [-Wincompatible-pointer-types] | In file included from ../../../kbd-2.2.0/src/libkeymap/keymap/kmap.h:36, | from ../../../kbd-2.2.0/src/libkeymap/keymap.h:8, | from ../../../kbd-2.2.0/src/libkeymap/analyze.c:1: | ../../../kbd-2.2.0/src/libkeymap/../libkbdfile/kbdfile.h:40:37: note: expected 'char ' but argument is of type 'const char const' | int kbdfile_find(char fnam, char dirpath, char suffixes, struct kbdfile fp); | ~^~~~~ | analyze.l:197:42: warning: passing argument 3 of 'kbdfile_find' from incompatible pointer type [-Wincompatible-pointer-types] | In file included from ../../../kbd-2.2.0/src/libkeymap/keymap/kmap.h:36, | from ../../../kbd-2.2.0/src/libkeymap/keymap.h:8, | from ../../../kbd-2.2.0/src/libkeymap/analyze.c:1: | ../../../kbd-2.2.0/src/libkeymap/../libkbdfile/kbdfile.h:40:53: note: expected 'char ' but argument is of type 'const char const' | int kbdfile_find(char fnam, char dirpath, char suffixes, struct kbdfile fp); | ~^~ | analyze.l: In function 'find_incl_file': | analyze.l:210:27: warning: passing argument 2 of 'kbdfile_find' from incompatible pointer type [-Wincompatible-pointer-types] | In file included from ../../../kbd-2.2.0/src/libkeymap/keymap/kmap.h:36, | from ../../../kbd-2.2.0/src/libkeymap/keymap.h:8, | from ../../../kbd-2.2.0/src/libkeymap/analyze.c:1: | ../../../kbd-2.2.0/src/libkeymap/../libkbdfile/kbdfile.h:40:37: note: expected 'char ' but argument is of type 'const char const' | int kbdfile_find(char fnam, char dirpath, char suffixes, struct kbdfile fp); | ~^~~~~ | analyze.l:210:45: warning: passing argument 3 of 'kbdfile_find' from incompatible pointer type [-Wincompatible-pointer-types] | In file included from ../../../kbd-2.2.0/src/libkeymap/keymap/kmap.h:36, | from ../../../kbd-2.2.0/src/libkeymap/keymap.h:8, | from ../../../kbd-2.2.0/src/libkeymap/analyze.c:1: | ../../../kbd-2.2.0/src/libkeymap/../libkbdfile/kbdfile.h:40:53: note: expected 'char ' but argument is of type 'const char const' | int kbdfile_find(char fnam, char dirpath, char suffixes, struct kbdfile fp); | ~^~ | analyze.l:225:26: warning: passing argument 2 of 'kbdfile_find' from incompatible pointer type [-Wincompatible-pointer-types] | In file included from ../../../kbd-2.2.0/src/libkeymap/keymap/kmap.h:36, | from ../../../kbd-2.2.0/src/libkeymap/keymap.h:8, | from ../../../kbd-2.2.0/src/libkeymap/analyze.c:1: | ../../../kbd-2.2.0/src/libkeymap/../libkbdfile/kbdfile.h:40:37: note: expected 'char ' but argument is of type 'const char ' | int kbdfile_find(char fnam, char dirpath, char suffixes, struct kbdfile fp); | ~^~~~~ | analyze.l:225:36: warning: passing argument 3 of 'kbdfile_find' from incompatible pointer type [-Wincompatible-pointer-types] | In file included from ../../../kbd-2.2.0/src/libkeymap/keymap/kmap.h:36, | from ../../../kbd-2.2.0/src/libkeymap/keymap.h:8, | from ../../../kbd-2.2.0/src/libkeymap/analyze.c:1: | ../../../kbd-2.2.0/src/libkeymap/../libkbdfile/kbdfile.h:40:53: note: expected 'char ' but argument is of type 'const char const' | int kbdfile_find(char fnam, char dirpath, char suffixes, struct kbdfile fp); | ~^~ | In file included from analyze.l:10: | analyze.l: In function 'yylex': | analyze.l:466:19: error: format not a string literal and no format arguments [-Werror=format-security] | ../../../kbd-2.2.0/src/libkeymap/contextP.h:79:55: note: in definition of macro 'lk_log_cond' | lk_log(ctx, level, FILE, LINE, func, ##arg); | ^~~ | analyze.l:466:6: note: in expansion of macro 'ERR' | cc1: some warnings being treated as errors | Makefile:604: recipe for target 'analyze.lo' failed | make[4]: [analyze.lo] Error 1 | make[4]: Leaving directory '/home/hope/DunfellOS/tegra-demo-distro/build-testdistro/tmp/work/aarch64-oe4t-linux/kbd/2.2.0-r0/build/src/libkeymap' | Makefile:476: recipe for target 'all' failed | make[3]: [all] Error 2 | make[3]: Leaving directory '/home/hope/DunfellOS/tegra-demo-distro/build-testdistro/tmp/work/aarch64-oe4t-linux/kbd/2.2.0-r0/build/src/libkeymap' | Makefile:1083: recipe for target 'all-recursive' failed | make[2]: [all-recursive] Error 1 | make[2]: Leaving directory '/home/hope/DunfellOS/tegra-demo-distro/build-testdistro/tmp/work/aarch64-oe4t-linux/kbd/2.2.0-r0/build/src' | Makefile:471: recipe for target 'all-recursive' failed | make[1]: [all-recursive] Error 1 | make[1]: Leaving directory '/home/hope/DunfellOS/tegra-demo-distro/build-testdistro/tmp/work/aarch64-oe4t-linux/kbd/2.2.0-r0/build' | Makefile:402: recipe for target 'all' failed | make: *** [all] Error 2 | ERROR: oe_runmake failed | WARNING: exit code 1 from a shell command. | ERROR: Execution of '/home/hope/DunfellOS/tegra-demo-distro/build-testdistro/tmp/work/aarch64-oe4t-linux/kbd/2.2.0-r0/temp/run.do_compile.2000' failed with exit code 1 ERROR: Task (/home/hope/DunfellOS/tegra-demo-distro/layers/meta/recipes-core/kbd/kbd_2.2.0.bb:do_compile) failed with exit code '1' NOTE: Tasks Summary: Attempted 4063 tasks of which 3147 didn't need to be rerun and 1 failed.

Summary: 1 task failed: /home/hope/DunfellOS/tegra-demo-distro/layers/meta/recipes-core/kbd/kbd_2.2.0.bb:do_compile Summary: There were 2 ERROR messages shown, returning a non-zero exit code.

Am I missing something here ? Relaying on your response!!! Thanks in Advance !!!