carla icon indicating copy to clipboard operation
carla copied to clipboard

CARLA C++ client example/easy_import_cmake_include

Open xavisolesoft opened this issue 9 months ago • 3 comments

Problem

Currently, we do not have any example about how to link CARLA C++ client with a C++ application. I have tried to do it by my self quickly but was not trivial as after adding all the next header files I was still having build issues:

add_compile_definitions(ASIO_NO_EXCEPTIONS,
                        BOOST_NO_EXCEPTIONS,
                        LIBCARLA_NO_EXCEPTIONS,
                        PUGIXML_NO_EXCEPTIONS,
                        BOOST_DISABLE_ABI_HEADERS,
                        BOOST_NO_RTTI,
                        BOOST_TYPE_INDEX_FORCE_NO_RTTI_COMPATIBILITY)

target_link_libraries(CarlaStudio PRIVATE C:/programing/carlaUE5/Build/LibCarla/carla-client.lib)
include_directories(C:/programing/carlaUE5/LibCarla/source
                    C:/programing/carlaUE5/Build/_deps/boost-src/libs/asio/include
                    C:/programing/carlaUE5/Build/_deps/boost-src/libs/config/include
                    C:/programing/carlaUE5/Build/_deps/boost-src/libs/throw_exception/include
                    C:/programing/carlaUE5/Build/_deps/boost-src/libs/assert/include
                    C:/programing/carlaUE5/Build/_deps/boost-src/libs/align/include
                    C:/programing/carlaUE5/Build/_deps/boost-src/libs/geometry/include
                    C:/programing/carlaUE5/Build/_deps/boost-src/libs/range/include
                    C:/programing/carlaUE5/Build/_deps/boost-src/libs/preprocessor/include
                    C:/programing/carlaUE5/Build/_deps/boost-src/libs/mpl/include
                    C:/programing/carlaUE5/Build/_deps/boost-src/libs/type_traits/include
                    C:/programing/carlaUE5/Build/_deps/boost-src/libs/iterator/include
                    C:/programing/carlaUE5/Build/_deps/boost-src/libs/static_assert/include
                    C:/programing/carlaUE5/Build/_deps/boost-src/libs/numeric/conversion/include
                    C:/programing/carlaUE5/Build/_deps/boost-src/libs/core/include
                    C:/programing/carlaUE5/Build/_deps/boost-src/libs/rational/include
                    C:/programing/carlaUE5/Build/_deps/boost-src/libs/utility/include
                    C:/programing/carlaUE5/Build/_deps/boost-src/libs/integer/include
                    C:/programing/carlaUE5/Build/_deps/boost-src/libs/multiprecision/include
                    C:/programing/carlaUE5/Build/_deps/boost-src/libs/math/include


                    C:/programing/carlaUE5/Build/_deps/rpclib-src/include)

Proposed solution

My proposal is to create some cmake file that can be included to any C++ project if possible; and anyway create a sample project about how to link with CARLA C++ client.

xavisolesoft avatar May 15 '24 15:05 xavisolesoft