How severe does this issue affect your experience of using Ray?
- High: It blocks me to complete my task.
How to use cmake to implement the bazel function?
The C++ Ray API is currently experimental with limited support and it’s not supported on Windows. You can track its development here and report issues on GitHub. Run the following commands to get started:
Install ray with C++ API support and generate a bazel project with the ray command.
pip install "ray[cpp]"
mkdir ray-template && ray cpp --generate-bazel-project-template-to ray-template
BUILD.bazel
# ray
cc_binary(
name = "example",
srcs = glob([
"*.cc",
]),
data = [
"example.so",
],
linkstatic = True,
deps = [
":ray_api",
],
)
cc_binary(
name = "example.so",
srcs = glob([
"*.cc",
]),
linkopts = ["-shared"],
linkstatic = True,
deps = [
":ray_api",
],
)
cc_library(
name = "ray_api",
srcs = [
"thirdparty/lib/libray_api.so",
],
hdrs = glob([
"thirdparty/include/**/*.h",
"thirdparty/include/**/*.hpp",
]),
linkopts = ["-Wl,-rpath, ./"],
strip_include_prefix = "thirdparty/include",
visibility = ["//visibility:public"],
)
CMakeList.txt
# cmake verson
cmake_minimum_required(VERSION 3.22.3)
set(CMAKE_CXX_STANDARD_REQUIRED ON)
set(CMAKE_CXX_STANDARD 17)
add_definitions(-D_GLIBCXX_USE_CXX11_ABI=0)
project(ray_demo)
link_directories(./build)
link_directories(thirdparty/lib)
include_directories(thirdparty/include)
add_executable(ray_demo src/example.cc)
target_link_libraries(ray_demo libray_api.so)