bson is provided by python-pymongo in meta-python
Not all runtime dependencies are automatically added, which leads to
dependency problems in the package management. Added two packages to
RDEPENDS.
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
- Add a description of this branch and its status.
- Fixup URLs for new location of meta-ros.git .
- Fixup URLs to use https: wherever possible.
- Switch the branches of the layer dependencies from [master] to [thud].
- Remove references to development guide wiki pages that no longer
exist or are no longer applicable to this branch.
SQUASH README
* it actually needs ${PYTHON_PN}-pyparsing-native as shown in
do_configure failure:
| DEBUG: Executing shell function do_configure
| -- Found PythonInterp: ament-cmake-core/git-r0/recipe-sysroot-native/usr/bin/python3-native/python3 (found suitable version "3.5.2", minimum required is "3")
| -- Using PYTHON_EXECUTABLE: ament-cmake-core/git-r0/recipe-sysroot-native/usr/bin/python3-native/python3
| Error parsing 'ament-cmake-core/git-r0/git/ament_cmake_core/package.xml':
| Traceback (most recent call last):
| File "ament-cmake-core/git-r0/git/ament_cmake_core/cmake/core/package_xml_2_cmake.py", line 145, in <module>
| main()
| File "ament-cmake-core/git-r0/git/ament_cmake_core/cmake/core/package_xml_2_cmake.py", line 56, in main
| raise e
| File "ament-cmake-core/git-r0/git/ament_cmake_core/cmake/core/package_xml_2_cmake.py", line 53, in main
| package = parse_package_string(args.package_xml.read())
| File "ament-cmake-core/git-r0/recipe-sysroot-native/usr/lib/python3.5/site-packages/ament_package/__init__.py", line 173, in parse_package_string
| pkg.build_depends = _get_dependencies(root, 'build_depend')
| File "ament-cmake-core/git-r0/recipe-sysroot-native/usr/lib/python3.5/site-packages/ament_package/__init__.py", line 364, in _get_dependencies
| from .dependency import Dependency
| File "ament-cmake-core/git-r0/recipe-sysroot-native/usr/lib/python3.5/site-packages/ament_package/dependency.py", line 15, in <module>
| from ament_package.condition import evaluate_condition
| File "ament-cmake-core/git-r0/recipe-sysroot-native/usr/lib/python3.5/site-packages/ament_package/condition.py", line 17, in <module>
| import pyparsing
| ImportError: No module named 'pyparsing'
| CMake Error at cmake/core/ament_package_xml.cmake:94 (message):
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
* Fix wrong suffix x86_64-linux-gnu in native python module shared library
* Python native module shared library is cross-compiled for correct
architecture but filename had an incorrect suffix 'x86_64-linux-gnu'.
As per python_cmake_module, if PYTHON_SOABI environment variable is not
defined, it'll query it from native's python sysconfig module.
https://github.com/ros2/rosidl/blob/master/python_cmake_module/cmake/Modules/FindPythonExtra.cmake
So adopt a solution similar to the one adopted below, where PYTHON_SOABI
is set explicitly for our specific build.
https://github.com/erlerobot/meta-ros2/blob/master/classes/ament.bbclass
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Fixes rosidl:
ImportError: No module named 'json'
ImportError: No module named 'em'
Fixes ros2:
ImportError: No module named 'xmlrpc'
ImportError: No module named 'pydoc'
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
* fixes rmw-fastrtps-cpp failure:
http://errors.yoctoproject.org/Errors/Details/174717/
DEBUG: Executing shell function do_compile
NOTE: VERBOSE=1 cmake --build TOPDIR/tmp-glibc/work/aarch64-oe-linux/rmw-fastrtps-cpp/git-r0/build --target all -- -j 9
ninja: error: 'TOPDIR/tmp-glibc/work/aarch64-oe-linux/fastrtps/git-r0/recipe-sysroot/usr/lib/libtinyxml2.so', needed by 'librmw_fastrtps_cpp.so', missing and no known rule to make it
WARNING: TOPDIR/tmp-glibc/work/aarch64-oe-linux/rmw-fastrtps-cpp/git-r0/temp/run.do_compile.13110:1 exit 1 from 'eval ${DESTDIR:+DESTDIR=${DESTDIR} }VERBOSE=1 cmake --build 'TOPDIR/tmp-glibc/work/aarch64-oe-linux/rmw-fastrtps-cpp/git-r0/build' "$@" -- -j 9'
ERROR: Function failed: do_compile (log file is located at TOPDIR/tmp-glibc/work/aarch64-oe-linux/rmw-fastrtps-cpp/git-r0/temp/log.do_compile.13110)
* it was caused by fastrtps's /usr/lib/fastrtps/cmake/fastrtpsTargets.cmake
containing the full path to libtinyxml2.so inside fastrtps's WORKDIR
which might be already removed by rm_work by the time when
rmw-fastrtps-cpp is being built
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
* using AUTOREV causes undeterministic builds when it might start failing
even when nothing was changed in the metadata
* it also forces bitbake to run git ls-remote on the github repo every
single time when the recipe is parsed and fails to build when doing builds
without network access (from pre-populated premirror)
* hydro-devel branch wasn't updated for last 3 years and there are only 73
commits in it, so AUTOREV wasn't really useful anyway
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
* fixes:
| checking for bison... no
| configure: error: You need to install bison
| NOTE: The following config.log files may provide further information.
| NOTE: /data/cibot/deleteme/build/tmp-glibc/work/i586-oe-linux/sphinxbase/0.8-r0/build/config.log
* needed since oe-core change:
http://git.openembedded.org/openembedded-core/commit/?id=b7edc20cc2dd82989bd9561f860cb25478a40f69
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
* meta-ros is compatible with Yocto 2.4 Rocko without any special
handling needed to integrate it, mark it as compatible
* LAYERSERIES_COMPAT variables are used only since 2.4 Rocko, so with
even older Yocto releases this isn't an issue, but with 2.4 it was
failing with:
bitbake -e zlib | tee env.zlib
ERROR: Unable to start bitbake server
which isn't really useful, bitbake-cookerdaemon.log shows better
explanation:
Traceback (most recent call last):
File "build-rocko/bitbake/lib/bb/cookerdata.py", line 285, in parseBaseConfiguration
self.data = self.parseConfigurationFiles(self.prefiles, self.postfiles)
File "build-rocko/bitbake/lib/bb/cookerdata.py", line 399, in parseConfigurationFiles
% (c, " ".join(layerseries), " ".join(compat)))
File "build-rocko/bitbake/lib/bb/__init__.py", line 104, in fatal
raise BBHandledException()
bb.BBHandledException
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "build-rocko/bitbake/lib/bb/daemonize.py", line 77, in createDaemon
function()
File "build-rocko/bitbake/lib/bb/server/process.py", line 433, in _startServer
self.cooker = bb.cooker.BBCooker(self.configuration, self.featureset)
File "build-rocko/bitbake/lib/bb/cooker.py", line 197, in __init__
self.initConfigurationData()
File "build-rocko/bitbake/lib/bb/cooker.py", line 356, in initConfigurationData
self.databuilder.parseBaseConfiguration()
File "build-rocko/bitbake/lib/bb/cookerdata.py", line 318, in parseBaseConfiguration
raise bb.BBHandledException
bb.BBHandledException
ERROR: Layer ros-layer is not compatible with the core layer which only supports these series: rocko (layer is compatible with sumo)
* and it's a bit complicated to override LAYERSERIES_COMPAT_ros-layer
from local build without meta-ros modification, changing it in some
other (own) layer, which is parsed after meta-ros works, but you might
not have suitable layer for this.
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>