diff --git a/.github/workflows/continuous_integration.yml b/.github/workflows/continuous_integration.yml index 0a68792ca8..c8db57b9a6 100644 --- a/.github/workflows/continuous_integration.yml +++ b/.github/workflows/continuous_integration.yml @@ -537,7 +537,7 @@ jobs: - uses: actions/checkout@v3 - name: Install packages - run: sudo apt-get update && sudo apt-get install --yes build-essential libtool autoconf pkg-config gfortran libopenblas-dev liblapack-dev freeglut3-dev libxi-dev libxmu-dev doxygen python3 python3-dev python3-numpy python3-setuptools + run: sudo apt-get update && sudo apt-get install --yes build-essential libtool autoconf pkg-config gfortran libopenblas-dev liblapack-dev freeglut3-dev libxi-dev libxmu-dev doxygen python3 python3-dev python3-numpy python3-setuptools patchelf - name: Install SWIG # if: steps.cache-swig.outputs.cache-hit != 'true' @@ -639,7 +639,7 @@ jobs: - uses: actions/checkout@v3 - name: Install packages - run: sudo apt-get update && sudo apt-get install --yes build-essential libtool autoconf pkg-config gfortran libopenblas-dev liblapack-dev freeglut3-dev libxi-dev libxmu-dev doxygen python3 python3-dev python3-numpy python3-setuptools + run: sudo apt-get update && sudo apt-get install --yes build-essential libtool autoconf pkg-config gfortran libopenblas-dev liblapack-dev freeglut3-dev libxi-dev libxmu-dev doxygen python3 python3-dev python3-numpy python3-setuptools patchelf - name: Install SWIG # if: steps.cache-swig.outputs.cache-hit != 'true' diff --git a/Vendors/tropter/cmake/CMakeLists.txt b/Vendors/tropter/cmake/CMakeLists.txt index 591e74259f..d624554007 100644 --- a/Vendors/tropter/cmake/CMakeLists.txt +++ b/Vendors/tropter/cmake/CMakeLists.txt @@ -44,14 +44,45 @@ if(TROPTER_COPY_DEPENDENCIES AND APPLE) install(SCRIPT "${script}") elseif(TROPTER_COPY_DEPENDENCIES AND UNIX) - get_filename_component(gcc_libdir "${pkgcfg_lib_IPOPT_gfortran}" DIRECTORY) + message(STATUS "getting dir for ${pkgcfg_lib_IPOPT_gfortran}" ) + message(STATUS "ADOLC_DIR dir ${ADOLC_DIR}" ) + message(STATUS "ColPack_ROOT_DIR dir ${ColPack_ROOT_DIR}" ) + message(STATUS "IPOPT_LIBDIR dir ${IPOPT_LIBDIR}" ) + + get_filename_component(gcc_libdir "${pkgcfg_lib_IPOPT_gfortran}" DIRECTORY) - file(GLOB gfortran "${gcc_libdir}/libgfortran*.so") - file(GLOB quadmath "${gcc_libdir}/libquadmath*.so") + file(GLOB gfortran "${gcc_libdir}/../../../x86_64-linux-gnu/libgfortran*.so*") + file(GLOB quadmath "${gcc_libdir}/../../../x86_64-linux-gnu/libquadmath*.so*") + message(STATUS "gfortran list ${gfortran}" ) + message(STATUS "quadmath list ${quadmath}" ) - install(FILES - ${ADOLC_DIR}/lib64/libadolc.so.2.1.0 DESTINATION ${CMAKE_INSTALL_LIBDIR}) -endif() + install(FILES + ${ADOLC_DIR}/lib64/libadolc.so.2 + ${ADOLC_DIR}/lib64/libadolc.so.2.1.0 + ${ADOLC_DIR}/lib64/libadolc.so + # /usr/local/opt/boost/lib/libboost_system.so + ${ColPack_ROOT_DIR}/lib/libColPack.so.0 + ${ColPack_ROOT_DIR}/lib/libColPack.so + ${IPOPT_LIBDIR}/libipopt.so.1.10.8 + ${IPOPT_LIBDIR}/libipopt.so.1 + ${IPOPT_LIBDIR}/libipopt.so + ${IPOPT_LIBDIR}/libcoinmumps.so.1.6.0 + ${IPOPT_LIBDIR}/libcoinmumps.so.1 + ${IPOPT_LIBDIR}/libcoinmumps.so + ${IPOPT_LIBDIR}/libcoinmetis.so.1.3.5 + ${IPOPT_LIBDIR}/libcoinmetis.so.1 + ${IPOPT_LIBDIR}/libcoinmetis.so + + ${gfortran} + ${quadmath} + ${gcc_libdir}/libgcc_s.so + DESTINATION ${CMAKE_INSTALL_LIBDIR}) + set(script + ${CMAKE_CURRENT_BINARY_DIR}/tropter_install_linux_dependency_libraries.cmake) + configure_file(tropter_install_linux_dependency_libraries.cmake.in + "${script}" @ONLY) + install(SCRIPT "${script}") +endif() diff --git a/Vendors/tropter/cmake/tropter_install_linux_dependency_libraries.cmake.in b/Vendors/tropter/cmake/tropter_install_linux_dependency_libraries.cmake.in new file mode 100644 index 0000000000..6520410110 --- /dev/null +++ b/Vendors/tropter/cmake/tropter_install_linux_dependency_libraries.cmake.in @@ -0,0 +1,373 @@ +# Temporary hack to package dependencies on Linux. +# the macro names are kept similar to mac osx despite using +# patchelf instead of otool (which is not available on linux) +# for ease of comparison maintenance. Same with commented lines +# +set(libdir "@CMAKE_INSTALL_PREFIX@/@CMAKE_INSTALL_LIBDIR@") +message(STATUS "Editing RPATH of tropter dependency libraries") + +macro(install_name_tool_add_rpath lib) + execute_process(COMMAND bash "-c" "patchelf --force-rpath --set-rpath '$ORIGIN/:$ORIGIN/../../sdk/Simbody/lib' '${libdir}/lib${lib}'" + OUTPUT_VARIABLE res) + message(STATUS "patchelf --set-rpath '$ORIGIN/:../../sdk/Simbody/lib' '${libdir}/lib${lib}' '${res}'") +endmacro() + +macro(install_name_tool_delete_rpath lib) + execute_process(COMMAND bash "-c" "patchelf --remove-rpath '${libdir}/lib${lib}'" + OUTPUT_VARIABLE res) + message(STATUS "patchelf --remove-rpath '${libdir}/lib${lib}' '${res}'") +endmacro() + +macro(install_name_tool_print_rpath lib) + execute_process(COMMAND bash "-c" "patchelf --print-rpath '${libdir}/lib${lib}'" + OUTPUT_VARIABLE created_rpath) + message(STATUS "RPATH = '${created_rpath}'") +endmacro() + +# Get the directory containing libgcc_s.1.dylib. +# otool: Get the list of dependencies of gfortran, which includes libgcc_s. +# grep: Isolate the line containing libgcc. +# perl: Extract only the directory, without the filename. +# ^\\s+ matches all spaces at the start of the string. +# (.*) matches everything up to libgcc, and captures it as match gorup #1 +# \\/libg.* matches the rest of the line. +# \\1 replaces the contents of the entire match with match group #1 +#execute_process(COMMAND bash "-c" +# "otool -L ${libdir}/libgfortran.dylib | grep 'libgcc' | perl -pe 's/^\\s+(.*)\\/libg.*/\\1/gc'" +# OUTPUT_VARIABLE libgcc_dir +# OUTPUT_STRIP_TRAILING_WHITESPACE) + +# tropter +#install_name_tool_change(tropter adolc.2 "@ADOLC_DIR@/lib64") +#install_name_tool_change(tropter ipopt.1 "@IPOPT_LIBDIR@") +#install_name_tool_change(tropter coinmumps.1 "@IPOPT_LIBDIR@") +#install_name_tool_change(tropter coinmetis.1 "@IPOPT_LIBDIR@") +#install_name_tool_change_gfortran(tropter) +#install_name_tool_change_quadmath(tropter) +#install_name_tool_add_rpath(tropter.so) + +install_name_tool_print_rpath(tropter.so) +install_name_tool_delete_rpath(tropter.so) +install_name_tool_add_rpath(tropter.so) +install_name_tool_print_rpath(tropter.so) + +install_name_tool_print_rpath(ipopt.so) +install_name_tool_delete_rpath(ipopt.so) +install_name_tool_add_rpath(ipopt.so) +install_name_tool_print_rpath(ipopt.so) + +install_name_tool_print_rpath(adolc.so) +install_name_tool_delete_rpath(adolc.so) +install_name_tool_add_rpath(adolc.so) +install_name_tool_print_rpath(adolc.so) + +install_name_tool_print_rpath(coinmumps.so.1) +install_name_tool_delete_rpath(coinmumps.so.1) +install_name_tool_add_rpath(coinmumps.so.1) +install_name_tool_print_rpath(coinmumps.so.1) + +install_name_tool_print_rpath(coinmetis.so.1) +install_name_tool_delete_rpath(coinmetis.so.1) +install_name_tool_add_rpath(coinmetis.so.1) +install_name_tool_print_rpath(coinmetis.so.1) + + + +install_name_tool_print_rpath(casadi_conic_nlpsol.so) +install_name_tool_delete_rpath(casadi_conic_nlpsol.so) +install_name_tool_add_rpath(casadi_conic_nlpsol.so) +install_name_tool_print_rpath(casadi_conic_nlpsol.so) + +install_name_tool_print_rpath(casadi_conic_nlpsol.so.3.6) +install_name_tool_delete_rpath(casadi_conic_nlpsol.so.3.6) +install_name_tool_add_rpath(casadi_conic_nlpsol.so.3.6) +install_name_tool_print_rpath(casadi_conic_nlpsol.so.3.6) + +install_name_tool_print_rpath(casadi_conic_qrqp.so) +install_name_tool_delete_rpath(casadi_conic_qrqp.so) +install_name_tool_add_rpath(casadi_conic_qrqp.so) +install_name_tool_print_rpath(casadi_conic_qrqp.so) + +install_name_tool_print_rpath(casadi_conic_qrqp.so.3.6) +install_name_tool_delete_rpath(casadi_conic_qrqp.so.3.6) +install_name_tool_add_rpath(casadi_conic_qrqp.so.3.6) +install_name_tool_print_rpath(casadi_conic_qrqp.so.3.6) + +install_name_tool_print_rpath(casadi_importer_shell.so) +install_name_tool_delete_rpath(casadi_importer_shell.so) +install_name_tool_add_rpath(casadi_importer_shell.so) +install_name_tool_print_rpath(casadi_importer_shell.so) + +install_name_tool_print_rpath(casadi_importer_shell.so.3.6) +install_name_tool_delete_rpath(casadi_importer_shell.so.3.6) +install_name_tool_add_rpath(casadi_importer_shell.so.3.6) +install_name_tool_print_rpath(casadi_importer_shell.so.3.6) + +install_name_tool_print_rpath(casadi_integrator_collocation.so) +install_name_tool_delete_rpath(casadi_integrator_collocation.so) +install_name_tool_add_rpath(casadi_integrator_collocation.so) +install_name_tool_print_rpath(casadi_integrator_collocation.so) + +install_name_tool_print_rpath(casadi_integrator_collocation.so.3.6) +install_name_tool_delete_rpath(casadi_integrator_collocation.so.3.6) +install_name_tool_add_rpath(casadi_integrator_collocation.so.3.6) +install_name_tool_print_rpath(casadi_integrator_collocation.so.3.6) + +install_name_tool_print_rpath(casadi_integrator_cvodes.so) +install_name_tool_delete_rpath(casadi_integrator_cvodes.so) +install_name_tool_add_rpath(casadi_integrator_cvodes.so) +install_name_tool_print_rpath(casadi_integrator_cvodes.so) + +install_name_tool_print_rpath(casadi_integrator_cvodes.so.3.6) +install_name_tool_delete_rpath(casadi_integrator_cvodes.so.3.6) +install_name_tool_add_rpath(casadi_integrator_cvodes.so.3.6) +install_name_tool_print_rpath(casadi_integrator_cvodes.so.3.6) + +install_name_tool_print_rpath(casadi_integrator_idas.so) +install_name_tool_delete_rpath(casadi_integrator_idas.so) +install_name_tool_add_rpath(casadi_integrator_idas.so) +install_name_tool_print_rpath(casadi_integrator_idas.so) + +install_name_tool_print_rpath(casadi_integrator_idas.so.3.6) +install_name_tool_delete_rpath(casadi_integrator_idas.so.3.6) +install_name_tool_add_rpath(casadi_integrator_idas.so.3.6) +install_name_tool_print_rpath(casadi_integrator_idas.so.3.6) + +install_name_tool_print_rpath(casadi_integrator_rk.so) +install_name_tool_delete_rpath(casadi_integrator_rk.so) +install_name_tool_add_rpath(casadi_integrator_rk.so) +install_name_tool_print_rpath(casadi_integrator_rk.so) + +install_name_tool_print_rpath(casadi_integrator_rk.so.3.6) +install_name_tool_delete_rpath(casadi_integrator_rk.so.3.6) +install_name_tool_add_rpath(casadi_integrator_rk.so.3.6) +install_name_tool_print_rpath(casadi_integrator_rk.so.3.6) + +install_name_tool_print_rpath(casadi_interpolant_bspline.so) +install_name_tool_delete_rpath(casadi_interpolant_bspline.so) +install_name_tool_add_rpath(casadi_interpolant_bspline.so) +install_name_tool_print_rpath(casadi_interpolant_bspline.so) + +install_name_tool_print_rpath(casadi_interpolant_bspline.so.3.6) +install_name_tool_delete_rpath(casadi_interpolant_bspline.so.3.6) +install_name_tool_add_rpath(casadi_interpolant_bspline.so.3.6) +install_name_tool_print_rpath(casadi_interpolant_bspline.so.3.6) + +install_name_tool_print_rpath(casadi_interpolant_linear.so) +install_name_tool_delete_rpath(casadi_interpolant_linear.so) +install_name_tool_add_rpath(casadi_interpolant_linear.so) +install_name_tool_print_rpath(casadi_interpolant_linear.so) + +install_name_tool_print_rpath(casadi_interpolant_linear.so.3.6) +install_name_tool_delete_rpath(casadi_interpolant_linear.so.3.6) +install_name_tool_add_rpath(casadi_interpolant_linear.so.3.6) +install_name_tool_print_rpath(casadi_interpolant_linear.so.3.6) + +install_name_tool_print_rpath(casadi_linsol_csparsecholesky.so) +install_name_tool_delete_rpath(casadi_linsol_csparsecholesky.so) +install_name_tool_add_rpath(casadi_linsol_csparsecholesky.so) +install_name_tool_print_rpath(casadi_linsol_csparsecholesky.so) + +install_name_tool_print_rpath(casadi_linsol_csparsecholesky.so.3.6) +install_name_tool_delete_rpath(casadi_linsol_csparsecholesky.so.3.6) +install_name_tool_add_rpath(casadi_linsol_csparsecholesky.so.3.6) +install_name_tool_print_rpath(casadi_linsol_csparsecholesky.so.3.6) + +install_name_tool_print_rpath(casadi_linsol_csparse.so) +install_name_tool_delete_rpath(casadi_linsol_csparse.so) +install_name_tool_add_rpath(casadi_linsol_csparse.so) +install_name_tool_print_rpath(casadi_linsol_csparse.so) + +install_name_tool_print_rpath(casadi_linsol_csparse.so.3.6) +install_name_tool_delete_rpath(casadi_linsol_csparse.so.3.6) +install_name_tool_add_rpath(casadi_linsol_csparse.so.3.6) +install_name_tool_print_rpath(casadi_linsol_csparse.so.3.6) + +install_name_tool_print_rpath(casadi_linsol_ldl.so) +install_name_tool_delete_rpath(casadi_linsol_ldl.so) +install_name_tool_add_rpath(casadi_linsol_ldl.so) +install_name_tool_print_rpath(casadi_linsol_ldl.so) + +install_name_tool_print_rpath(casadi_linsol_ldl.so.3.6) +install_name_tool_delete_rpath(casadi_linsol_ldl.so.3.6) +install_name_tool_add_rpath(casadi_linsol_ldl.so.3.6) +install_name_tool_print_rpath(casadi_linsol_ldl.so.3.6) + +install_name_tool_print_rpath(casadi_linsol_lsqr.so) +install_name_tool_delete_rpath(casadi_linsol_lsqr.so) +install_name_tool_add_rpath(casadi_linsol_lsqr.so) +install_name_tool_print_rpath(casadi_linsol_lsqr.so) + +install_name_tool_print_rpath(casadi_linsol_lsqr.so.3.6) +install_name_tool_delete_rpath(casadi_linsol_lsqr.so.3.6) +install_name_tool_add_rpath(casadi_linsol_lsqr.so.3.6) +install_name_tool_print_rpath(casadi_linsol_lsqr.so.3.6) + +install_name_tool_print_rpath(casadi_linsol_qr.so) +install_name_tool_delete_rpath(casadi_linsol_qr.so) +install_name_tool_add_rpath(casadi_linsol_qr.so) +install_name_tool_print_rpath(casadi_linsol_qr.so) + +install_name_tool_print_rpath(casadi_linsol_qr.so.3.6) +install_name_tool_delete_rpath(casadi_linsol_qr.so.3.6) +install_name_tool_add_rpath(casadi_linsol_qr.so.3.6) +install_name_tool_print_rpath(casadi_linsol_qr.so.3.6) + +install_name_tool_print_rpath(casadi_linsol_symbolicqr.so) +install_name_tool_delete_rpath(casadi_linsol_symbolicqr.so) +install_name_tool_add_rpath(casadi_linsol_symbolicqr.so) +install_name_tool_print_rpath(casadi_linsol_symbolicqr.so) + +install_name_tool_print_rpath(casadi_linsol_symbolicqr.so.3.6) +install_name_tool_delete_rpath(casadi_linsol_symbolicqr.so.3.6) +install_name_tool_add_rpath(casadi_linsol_symbolicqr.so.3.6) +install_name_tool_print_rpath(casadi_linsol_symbolicqr.so.3.6) + +install_name_tool_print_rpath(casadi_linsol_tridiag.so) +install_name_tool_delete_rpath(casadi_linsol_tridiag.so) +install_name_tool_add_rpath(casadi_linsol_tridiag.so) +install_name_tool_print_rpath(casadi_linsol_tridiag.so) + +install_name_tool_print_rpath(casadi_linsol_tridiag.so.3.6) +install_name_tool_delete_rpath(casadi_linsol_tridiag.so.3.6) +install_name_tool_add_rpath(casadi_linsol_tridiag.so.3.6) +install_name_tool_print_rpath(casadi_linsol_tridiag.so.3.6) + +install_name_tool_print_rpath(casadi_nlpsol_ipopt.so) +install_name_tool_delete_rpath(casadi_nlpsol_ipopt.so) +install_name_tool_add_rpath(casadi_nlpsol_ipopt.so) +install_name_tool_print_rpath(casadi_nlpsol_ipopt.so) + +install_name_tool_print_rpath(casadi_nlpsol_ipopt.so.3.6) +install_name_tool_delete_rpath(casadi_nlpsol_ipopt.so.3.6) +install_name_tool_add_rpath(casadi_nlpsol_ipopt.so.3.6) +install_name_tool_print_rpath(casadi_nlpsol_ipopt.so.3.6) + +install_name_tool_print_rpath(casadi_nlpsol_qrsqp.so) +install_name_tool_delete_rpath(casadi_nlpsol_qrsqp.so) +install_name_tool_add_rpath(casadi_nlpsol_qrsqp.so) +install_name_tool_print_rpath(casadi_nlpsol_qrsqp.so) + +install_name_tool_print_rpath(casadi_nlpsol_ipopt.so.3.6) +install_name_tool_delete_rpath(casadi_nlpsol_ipopt.so.3.6) +install_name_tool_add_rpath(casadi_nlpsol_ipopt.so.3.6) +install_name_tool_print_rpath(casadi_nlpsol_ipopt.so.3.6) + +install_name_tool_print_rpath(casadi_nlpsol_qrsqp.so) +install_name_tool_delete_rpath(casadi_nlpsol_qrsqp.so) +install_name_tool_add_rpath(casadi_nlpsol_qrsqp.so) +install_name_tool_print_rpath(casadi_nlpsol_qrsqp.so) + +install_name_tool_print_rpath(casadi_nlpsol_qrsqp.so.3.6) +install_name_tool_delete_rpath(casadi_nlpsol_qrsqp.so.3.6) +install_name_tool_add_rpath(casadi_nlpsol_qrsqp.so.3.6) +install_name_tool_print_rpath(casadi_nlpsol_qrsqp.so.3.6) + +install_name_tool_print_rpath(casadi_nlpsol_scpgen.so) +install_name_tool_delete_rpath(casadi_nlpsol_scpgen.so) +install_name_tool_add_rpath(casadi_nlpsol_scpgen.so) +install_name_tool_print_rpath(casadi_nlpsol_scpgen.so) + +install_name_tool_print_rpath(casadi_nlpsol_scpgen.so.3.6) +install_name_tool_delete_rpath(casadi_nlpsol_scpgen.so.3.6) +install_name_tool_add_rpath(casadi_nlpsol_scpgen.so.3.6) +install_name_tool_print_rpath(casadi_nlpsol_scpgen.so.3.6) + +install_name_tool_print_rpath(casadi_nlpsol_sqpmethod.so) +install_name_tool_delete_rpath(casadi_nlpsol_sqpmethod.so) +install_name_tool_add_rpath(casadi_nlpsol_sqpmethod.so) +install_name_tool_print_rpath(casadi_nlpsol_sqpmethod.so) + +install_name_tool_print_rpath(casadi_nlpsol_sqpmethod.so.3.6) +install_name_tool_delete_rpath(casadi_nlpsol_sqpmethod.so.3.6) +install_name_tool_add_rpath(casadi_nlpsol_sqpmethod.so.3.6) +install_name_tool_print_rpath(casadi_nlpsol_sqpmethod.so.3.6) + +install_name_tool_print_rpath(casadi_rootfinder_fast_newton.so) +install_name_tool_delete_rpath(casadi_rootfinder_fast_newton.so) +install_name_tool_add_rpath(casadi_rootfinder_fast_newton.so) +install_name_tool_print_rpath(casadi_rootfinder_fast_newton.so) + +install_name_tool_print_rpath(casadi_nlpsol_sqpmethod.so.3.6) +install_name_tool_delete_rpath(casadi_nlpsol_sqpmethod.so.3.6) +install_name_tool_add_rpath(casadi_nlpsol_sqpmethod.so.3.6) +install_name_tool_print_rpath(casadi_nlpsol_sqpmethod.so.3.6) + +install_name_tool_print_rpath(casadi_rootfinder_fast_newton.so) +install_name_tool_delete_rpath(casadi_rootfinder_fast_newton.so) +install_name_tool_add_rpath(casadi_rootfinder_fast_newton.so) +install_name_tool_print_rpath(casadi_rootfinder_fast_newton.so) + +install_name_tool_print_rpath(casadi_rootfinder_fast_newton.so.3.6) +install_name_tool_delete_rpath(casadi_rootfinder_fast_newton.so.3.6) +install_name_tool_add_rpath(casadi_rootfinder_fast_newton.so.3.6) +install_name_tool_print_rpath(casadi_rootfinder_fast_newton.so.3.6) + +install_name_tool_print_rpath(casadi_rootfinder_kinsol.so) +install_name_tool_delete_rpath(casadi_rootfinder_kinsol.so) +install_name_tool_add_rpath(casadi_rootfinder_kinsol.so) +install_name_tool_print_rpath(casadi_rootfinder_kinsol.so) + +install_name_tool_print_rpath(casadi_rootfinder_kinsol.so.3.6) +install_name_tool_delete_rpath(casadi_rootfinder_kinsol.so.3.6) +install_name_tool_add_rpath(casadi_rootfinder_kinsol.so.3.6) +install_name_tool_print_rpath(casadi_rootfinder_kinsol.so.3.6) + +install_name_tool_print_rpath(casadi_rootfinder_newton.so) +install_name_tool_delete_rpath(casadi_rootfinder_newton.so) +install_name_tool_add_rpath(casadi_rootfinder_newton.so) +install_name_tool_print_rpath(casadi_rootfinder_newton.so) + +install_name_tool_print_rpath(casadi_rootfinder_newton.so.3.6) +install_name_tool_delete_rpath(casadi_rootfinder_newton.so.3.6) +install_name_tool_add_rpath(casadi_rootfinder_newton.so.3.6) +install_name_tool_print_rpath(casadi_rootfinder_newton.so.3.6) + +install_name_tool_print_rpath(casadi_rootfinder_nlpsol.so) +install_name_tool_delete_rpath(casadi_rootfinder_nlpsol.so) +install_name_tool_add_rpath(casadi_rootfinder_nlpsol.so) +install_name_tool_print_rpath(casadi_rootfinder_nlpsol.so) + +install_name_tool_print_rpath(casadi_rootfinder_nlpsol.so.3.6) +install_name_tool_delete_rpath(casadi_rootfinder_nlpsol.so.3.6) +install_name_tool_add_rpath(casadi_rootfinder_nlpsol.so.3.6) +install_name_tool_print_rpath(casadi_rootfinder_nlpsol.so.3.6) + +install_name_tool_print_rpath(casadi.so) +install_name_tool_delete_rpath(casadi.so) +install_name_tool_add_rpath(casadi.so) +install_name_tool_print_rpath(casadi.so) + +install_name_tool_print_rpath(casadi.so.3.6) +install_name_tool_delete_rpath(casadi.so.3.6) +install_name_tool_add_rpath(casadi.so.3.6) +install_name_tool_print_rpath(casadi.so.3.6) + +install_name_tool_print_rpath(casadi_sundials_common.so) +install_name_tool_delete_rpath(casadi_sundials_common.so) +install_name_tool_add_rpath(casadi_sundials_common.so) +install_name_tool_print_rpath(casadi_sundials_common.so) + +install_name_tool_print_rpath(casadi_sundials_common.so.3.6) +install_name_tool_delete_rpath(casadi_sundials_common.so.3.6) +install_name_tool_add_rpath(casadi_sundials_common.so.3.6) +install_name_tool_print_rpath(casadi_sundials_common.so.3.6) + +install_name_tool_print_rpath(casadi_xmlfile_tinyxml.so) +install_name_tool_delete_rpath(casadi_xmlfile_tinyxml.so) +install_name_tool_add_rpath(casadi_xmlfile_tinyxml.so) +install_name_tool_print_rpath(casadi_xmlfile_tinyxml.so) + +install_name_tool_print_rpath(casadi_xmlfile_tinyxml.so.3.6) +install_name_tool_delete_rpath(casadi_xmlfile_tinyxml.so.3.6) +install_name_tool_add_rpath(casadi_xmlfile_tinyxml.so.3.6) +install_name_tool_print_rpath(casadi_xmlfile_tinyxml.so.3.6) + + + +# adol-c +#install_name_tool_id(adolc.2) +#install_name_tool_add_rpath(adolc.so.2.1.0) +#install_name_tool_add_rpath(adolc.so) +#install_name_tool_add_rpath(adolc.so.2) +#install_name_tool_delete_rpath(adolc.2 "@ColPack_ROOT_DIR@/lib") diff --git a/cmake/OpenSimMacros.cmake b/cmake/OpenSimMacros.cmake index 3282964956..e2e606e92a 100644 --- a/cmake/OpenSimMacros.cmake +++ b/cmake/OpenSimMacros.cmake @@ -42,6 +42,7 @@ function(OpenSimAddInstallRPATH) "${CMAKE_INSTALL_PREFIX}") set_property(TARGET ${OSIMRP_TARGET} APPEND PROPERTY INSTALL_RPATH "${rpath_macro}/${to_root}${OSIMRP_TO}") + message(STATUS "Set rpath '${rpath_macro}/${to_root}${OSIMRP_TO}' to '${OSIMRP_TARGET}'") endfunction() # Similar to OpenSimAddInstallRPATH except the run-path is the same directory