You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Description of the problem:
I'm using bazel_toolchain to cross compile the c++ code. while i configure the bazel workspace with bazel_toolchain repo, it fails to download. Below is the Example: Worspace file:
load("@bazel_tools//tools/build_defs/repo:git.bzl", "git_repository")
I configured the WORKSPACE file with "bazel_toolchain" this should fetch the code from git repo and the build file is configured for cross compiled translation units (Linux & Windows) by loading bazel_toochains and clangenv is used to set for cross compilation for windows and linux.
However, the following error throws when building:
bazel build //main:hello_world_linux
ERROR: Error computing the main repository mapping: cannot load '@@bazel_toolchains//:rbe_autoconfig.bzl': no such file
The above error indicates that reb_autoconfig.bzl no such file exists since the git download didnt happen for the same though proper commit id is given.
Manually downloaded bazel_Toolchain but with this toolchain there is no reb_autoconfig.bzl is present and looks deprecated or removed.
Bazel version used:bazel version 7.0.0 Debain version used:Debian GNU/Linux rodete
Let me know if you need any more information
The text was updated successfully, but these errors were encountered:
Description of the problem:
I'm using bazel_toolchain to cross compile the c++ code. while i configure the bazel workspace with bazel_toolchain repo, it fails to download.
Below is the Example:
Worspace file:
load("@
bazel_tools//tools/build_defs/repo:git.bzl
", "git_repository")git_repository(
name = "
bazel_toolchains
",commit = "
6146252bda912a77a25c3b0ebe55ed0d00a1fa4d
",remote = "
https://github.com/bazelbuild/bazel-toolchains.git
",)
load("@
bazel_toolchains//:rbe_autoconfig.bzl
", "rbe_autoconfig
")load("@
bazel_toolchains//rules:envs.bzl
", "bazel_toolchain
")bazel_toolchain(
name = "x86_64-linux",
exec_compatible_with = [
"@platforms//os:linux",
"@platforms//cpu:x86_64",
],
target_compatible_with = [
"@platforms//os:linux",
"@platforms//cpu:x86_64",
],
toolchain = ":cc-compiler-x86_64-linux",
toolchain_type = "@bazel_tools//tools/cpp:toolchain_type",
)
bazel_toolchain(
name = "x86_64-windows",
exec_compatible_with = [
"@platforms//os:linux",
"@platforms//cpu:x86_64",
],
target_compatible_with = [
"@platforms//os:windows",
"@platforms//cpu:x86_64",
],
toolchain = ":cc-compiler-x86_64-windows",
toolchain_type = "@bazel_tools//tools/cpp:toolchain_type",
)
cc_toolchain_config(
name = "cc-compiler-x86_64-linux",
cpu = "k8",
compiler = "gcc",
host_system_name = "x86_64-unknown-linux-gnu",
target_system_name = "x86_64-unknown-linux-gnu",
target_libc = "glibc_2.24",
)
cc_toolchain_config(
name = "cc-compiler-x86_64-windows",
cpu= "k8",
compiler = "msvc-cl",
host_system_name = "x86_64-unknown-linux-gnu",
target_system_name = "x86_64-unknown-windows",
target_libc = "msvcrt",
)
BUILD FILE:
load("@bazel_toolchains//rules:environments.bzl", "clang_env")
clang_env(
name = "linux-x86_64",
base_cc_toolchain_config = ":cc-compiler-x86_64-linux",
extra_toolchains = ["@
bazel_toolchains//configs/ubuntu16_04_clang/x86_64_gcc:cc-toolchain-clang-x86_64-default
"],visibility = ["//visibility:public"],
)
clang_env(
name = "windows-x86_64",
base_cc_toolchain_config = ":cc-compiler-x86_64-windows",
extra_toolchains = ["@
bazel_toolchains//configs/windows_clang:x86_64
"],visibility = ["//visibility:public"],
)
cc_library(
name = "hello_greet",
srcs = ["hello_greet.cc"],
hdrs = ["hello_greet.h"],
copts = ["-D__STDC_FORMAT_MACROS"],
)
cc_shared_library(
name = "hello_greet_shared",
deps = [":hello_greet"],
copts = ["-D__STDC_FORMAT_MACROS"],
)
cc_binary(
name = "hello_world_linux",
srcs = ["hello_world.cc"],
deps = [":hello_greet"],
dynamic_deps = [":hello_greet_shared"],
copts = ["-D__STDC_FORMAT_MACROS"],
toolchain = ":linux-x86_64",
)
cc_binary(
name = "hello_world_windows",
srcs = ["hello_world.cc"],
deps = [":hello_greet"],
dynamic_deps = [":hello_greet_shared"],
copts = ["-D__STDC_FORMAT_MACROS"],
toolchain = ":windows-x86_64",
)
bazel.rc file
build:windows --copt=-DWIN32
build:windows --cxxopt=-std=c++14
build:linux --copt=-DLINUX
build:linux --cxxopt=-std=c++14
build:windows --cpu=x64_windows
build:linux --cpu=x64_linux
build:windows --compilation_mode=dbg
build:windows --compilation_mode=opt
build:linux --compilation_mode=dbg
build:linux --compilation_mode=opt
build:dbg --copt=-g
build:dbg -c dbg
build:opt --copt=-O3
build:opt --copt=-DNDEBUG
build:opt -c opt
Translation units to Build:
hello_greet.h
#ifndef LIB_HELLO_GREET_H_
#define LIB_HELLO_GREET_H_
#include
std::string get_greet(const std::string &thing);
#endif
hello_greet.cc
#include "hello_greet.h"
#include
std::string get_greet(const std::string& world) {
return "Hello " + world;
}
hello_world.cc
#include "hello_greet.h"
#include
#include
int main(int argc, char** argv) {
std::cout << get_greet("world") << std::endl;
return 0;
}
I configured the WORKSPACE file with "bazel_toolchain" this should fetch the code from git repo and the build file is configured for cross compiled translation units (Linux & Windows) by loading bazel_toochains and clangenv is used to set for cross compilation for windows and linux.
However, the following error throws when building:
bazel build //main:hello_world_linux
ERROR: Error computing the main repository mapping: cannot load '@@bazel_toolchains//:rbe_autoconfig.bzl': no such file
The above error indicates that
reb_autoconfig.bzl
no such file exists since the git download didnt happen for the same though proper commit id is given.Manually downloaded
bazel_Toolchain
but with this toolchain there is noreb_autoconfig.bzl
is present and looks deprecated or removed.Bazel version used:
bazel version 7.0.0
Debain version used:
Debian GNU/Linux rodete
Let me know if you need any more information
The text was updated successfully, but these errors were encountered: