Fix build of RSS version with python 3.10 and Ubuntu 22.04
This commit is contained in:
parent
f64c09e2f6
commit
800b394d2a
|
@ -28,6 +28,10 @@ if (BUILD_RSS_VARIANT)
|
|||
install(FILES ${proj_lib} DESTINATION lib)
|
||||
list(APPEND ADRSS_LIBS ${proj_lib})
|
||||
|
||||
# as long as the libosm2dr uses the same odrSprial interface it is enough to copy the built static library
|
||||
set(odr_lib ${ADRSS_INSTALL_DIR}/../src/ad-rss-lib/dependencies/map/dependencies/odrSpiral/lib/libodrSpiral.a)
|
||||
install(FILES ${odr_lib} DESTINATION lib)
|
||||
list(APPEND ADRSS_LIBS ${odr_lib})
|
||||
|
||||
foreach(ad_lib ad_physics ad_rss ad_map_access ad_map_opendrive_reader ad_rss_map_integration)
|
||||
set(${ad_lib}_file ${ADRSS_INSTALL_DIR}/${ad_lib}/lib/lib${ad_lib}.a)
|
||||
|
|
|
@ -55,7 +55,7 @@ def get_libcarla_extensions():
|
|||
os.path.join(pwd, 'dependencies/lib/libxerces-c.a')]
|
||||
extra_link_args += ['-lz']
|
||||
extra_compile_args = [
|
||||
'-isystem', 'dependencies/include/system', '-fPIC', '-std=c++14',
|
||||
'-isystem', os.path.join(pwd, 'dependencies/include/system'), '-fPIC', '-std=c++14',
|
||||
'-Werror', '-Wall', '-Wextra', '-Wpedantic', '-Wno-self-assign-overloaded',
|
||||
'-Wdeprecated', '-Wno-shadow', '-Wuninitialized', '-Wunreachable-code',
|
||||
'-Wpessimizing-move', '-Wold-style-cast', '-Wnull-dereference',
|
||||
|
@ -77,6 +77,7 @@ def get_libcarla_extensions():
|
|||
extra_link_args += [os.path.join(pwd, 'dependencies/lib/libad_physics.a')]
|
||||
extra_link_args += [os.path.join(pwd, 'dependencies/lib/libad_map_opendrive_reader.a')]
|
||||
extra_link_args += [os.path.join(pwd, 'dependencies/lib/libboost_program_options.a')]
|
||||
extra_link_args += [os.path.join(pwd, 'dependencies/lib/libodrSpiral.a')]
|
||||
extra_link_args += [os.path.join(pwd, 'dependencies/lib/libspdlog.a')]
|
||||
extra_link_args += ['-lrt']
|
||||
extra_link_args += ['-ltbb']
|
||||
|
|
|
@ -29,7 +29,7 @@ IFS="," read -r -a PY_VERSION_LIST <<< "${PY_VERSION_LIST}"
|
|||
# -- Get ad-rss -------------------------------------------
|
||||
# ==============================================================================
|
||||
|
||||
ADRSS_VERSION=4.5.3
|
||||
ADRSS_VERSION=4.4.4
|
||||
ADRSS_BASENAME=ad-rss-${ADRSS_VERSION}
|
||||
ADRSS_COLCON_WORKSPACE="${CARLA_BUILD_FOLDER}/${ADRSS_BASENAME}"
|
||||
ADRSS_SRC_DIR="${ADRSS_COLCON_WORKSPACE}/src"
|
||||
|
@ -46,6 +46,7 @@ if [[ ! -d "${ADRSS_SRC_DIR}" ]]; then
|
|||
|
||||
# ADRSS_VERSION is designed for older boost, update datatype from boost::array to std::array
|
||||
grep -rl "boost::array" | xargs sed -i 's/boost::array/std::array/g'
|
||||
grep -rl "find_package(Boost" | xargs sed -i 's/find_package(Boost/find_package(Boost 1.80/g'
|
||||
popd
|
||||
|
||||
cat >"${ADRSS_COLCON_WORKSPACE}/colcon.meta" <<EOL
|
||||
|
@ -81,13 +82,16 @@ fi
|
|||
# ==============================================================================
|
||||
ADRSS_INSTALL_DIR="${CARLA_BUILD_FOLDER}/${ADRSS_BASENAME}/install"
|
||||
|
||||
CARLA_LLVM_VERSION_MAJOR=$(cut -d'.' -f1 <<<"$(clang --version | head -n 1 | sed -r 's/^([^.]+).*$/\1/; s/^[^0-9]*([0-9]+).*$/\1/')")
|
||||
|
||||
if [ -z "$CARLA_LLVM_VERSION_MAJOR" ] ; then
|
||||
fatal_error "Failed to retrieve the installed version of the clang compiler."
|
||||
else
|
||||
echo "Using clang-$CARLA_LLVM_VERSION_MAJOR as the CARLA compiler."
|
||||
fi
|
||||
# Automation doesn't work if the clang installed within the system is not matching the one that is provided by Unreal
|
||||
# Setup.sh would have to be adapted to reflect it
|
||||
# so we need to change
|
||||
#CARLA_LLVM_VERSION_MAJOR=$(cut -d'.' -f1 <<<"$(clang --version | head -n 1 | sed -r 's/^([^.]+).*$/\1/; s/^[^0-9]*([0-9]+).*$/\1/')")
|
||||
#if [ -z "$CARLA_LLVM_VERSION_MAJOR" ] ; then
|
||||
# fatal_error "Failed to retrieve the installed version of the clang compiler."
|
||||
#else
|
||||
# echo "Using clang-$CARLA_LLVM_VERSION_MAJOR as the CARLA compiler."
|
||||
#fi
|
||||
CXX_TAG=c10
|
||||
|
||||
#
|
||||
# Since it it not possible with boost-python to build more than one python version at once (find_package has some bugs)
|
||||
|
@ -102,11 +106,17 @@ for PY_VERSION in ${PY_VERSION_LIST[@]} ; do
|
|||
log "Building ${ADRSS_BASENAME} for python${PY_VERSION}"
|
||||
|
||||
pushd "${ADRSS_COLCON_WORKSPACE}" >/dev/null
|
||||
CMAKE_PREFIX_PATH="${CMAKE_PREFIX_PATH};${CARLA_BUILD_FOLDER}/boost-1.80.0-c$CARLA_LLVM_VERSION_MAJOR-install;${CARLA_BUILD_FOLDER}/proj-install"
|
||||
if [[ "${CMAKE_PREFIX_PATH}" == "" ]]; then
|
||||
CMAKE_PREFIX_PATH="${CARLA_BUILD_FOLDER}/boost-1.80.0-$CXX_TAG-install;${CARLA_BUILD_FOLDER}/proj-install"
|
||||
else
|
||||
CMAKE_PREFIX_PATH="${CARLA_BUILD_FOLDER}/boost-1.80.0-$CXX_TAG-install;${CARLA_BUILD_FOLDER}/proj-install;${CMAKE_PREFIX_PATH}"
|
||||
fi
|
||||
|
||||
# get the python version of the binding to be built
|
||||
PYTHON_VERSION=3
|
||||
PYTHON_BINDING_VERSIONS=${PYTHON_VERSION:8}
|
||||
# get the python version of the binding to be built, need to query the binary,
|
||||
# because might be just provided a '3' as PY_VERSION and then the symbolic linked python3 is called
|
||||
PYTHON_VERSION=$(/usr/bin/env python${PY_VERSION} -V 2>&1)
|
||||
PYTHON_BINDING_VERSIONS=${PYTHON_VERSION:7}
|
||||
PYTHON_BINDING_VERSIONS=${PYTHON_BINDING_VERSIONS%.*}
|
||||
echo "PYTHON_BINDING_VERSIONS=${PYTHON_BINDING_VERSIONS}"
|
||||
|
||||
# enforce sequential executor to reduce the required memory for compilation
|
||||
|
|
|
@ -146,7 +146,7 @@ function build_libcarla {
|
|||
M_TOOLCHAIN=${LIBSTDCPP_TOOLCHAIN_FILE}
|
||||
M_BUILD_FOLDER=${LIBCARLA_BUILD_CLIENT_FOLDER}.rss.$(echo "$2" | tr '[:upper:]' '[:lower:]')
|
||||
M_INSTALL_FOLDER=${LIBCARLA_INSTALL_CLIENT_FOLDER}
|
||||
CMAKE_EXTRA_OPTIONS="${CMAKE_EXTRA_OPTIONS:+${CMAKE_EXTRA_OPTIONS} }-DBUILD_RSS_VARIANT=ON -DADRSS_INSTALL_DIR=${CARLA_BUILD_FOLDER}/ad-rss-4.5.3/install"
|
||||
CMAKE_EXTRA_OPTIONS="${CMAKE_EXTRA_OPTIONS:+${CMAKE_EXTRA_OPTIONS} }-DBUILD_RSS_VARIANT=ON -DADRSS_INSTALL_DIR=${CARLA_BUILD_FOLDER}/ad-rss-4.4.4/install"
|
||||
else
|
||||
fatal_error "Invalid build configuration \"$1\""
|
||||
fi
|
||||
|
|
Loading…
Reference in New Issue