Hi team,
I need help building ci-linux-arm64 using SDK-C.I am facing difficulties due to the lack of cross-compilation support. Below is the error message I am encountering:
-- Running vcpkg install - done
-- The C compiler identification is unknown
-- The CXX compiler identification is unknown
CMake Error at CMakeLists.txt:71 (project):
The CMAKE_C_COMPILER:
aarch64-linux-gnu-gcc
is not a full path and was not found in the PATH.
Tell CMake where to find the compiler by setting either the environment
variable "CC" or the CMake cache entry CMAKE_C_COMPILER to the full path to
the compiler, or to the compiler name if it is in the PATH.
CMake Error at CMakeLists.txt:71 (project):
The CMAKE_CXX_COMPILER:
aarch64-linux-gnu-g++
is not a full path and was not found in the PATH.
Tell CMake where to find the compiler by setting either the environment
variable "CXX" or the CMake cache entry CMAKE_CXX_COMPILER to the full path
to the compiler, or to the compiler name if it is in the PATH.
I have attempted to resolve this issue by installing the required compiler aarch64-linux-gnu-gcc/g++, but unfortunately, I have been unable to locate it in the DNF repository.
Can you tell me exactly how you're running cmake? Are you using the cmake preset ci-linux-arm (from CMakePresets.json)? Have you tried removing your build directory and running cmake again since you installed the tools?
You can see the tools that we install for cross compiling in our GitHub workflow. You may have noticed that we include a linux/arm build in our releases - does that not work for you?
What is your use case? Is there a reason you're building standalone ziti C-sdk?
typically you'd include C-sdk in your app by adding in to your CMake build via FetchContent
Hi scareything,
It works! The issue is that the execution of “bootstrap-vcpkg.sh”failed. Adding the paths to gcc/g++ in the CMakeLists file resolves the problem.
Hi ekoby,
I'm learning about Ziti deployment and attempting to install it locally by compiling from the GitHub source code. I'm going to follow the provided instructions step by step to see how secure the Ziti network is and assess its communication speed.
Hi team,
I successfully packaged for arm64 Linux, but now I'm attempting to package for arm Linux. The log indicates that I need the arm-linux-gnueabihf-gcc/g++ cross-compiler, which is different from what was downloaded with vcpkg for arm64. How can I obtain the correct one?
Hi team,
In my testing, I downloaded the ziti-edge-tunnel-Linux_arm64.zip file and successfully executed the enroll command via the command line in the Ziti network. However, when attempting to disable the currently active identity using the on_off_identity command, it returned an error message stating 'failed to connect: -2/no such file or directory'. I'm unsure of the reason for this error.
Does your host have a ziti group? You'll have this group if you installed ziti-edge-tunnel with your distro's package manager.
ziti-edge-tunnel won't start the IPC sockets if it can't assign this group to the socket files. You'll see warnings like this early in the zet log:
WARN ziti-edge-tunnel:ziti-edge-tunnel.c:1625 make_socket_path() local 'ziti' group not found.
WARN ziti-edge-tunnel:ziti-edge-tunnel.c:1626 make_socket_path() please create the 'ziti' group by running these commands:
WARN ziti-edge-tunnel:ziti-edge-tunnel.c:1628 make_socket_path() sudo groupadd --system ziti
WARN ziti-edge-tunnel:ziti-edge-tunnel.c:1629 make_socket_path() users can then be added to the 'ziti' group with:
WARN ziti-edge-tunnel:ziti-edge-tunnel.c:1630 make_socket_path() sudo usermod --append --groups ziti <USER>
WARN ziti-edge-tunnel:ziti-edge-tunnel.c:1729 run_tunneler_loop() One or more socket servers did not properly start.
We require the ziti group because otherwise the socket files would be owned/grouped root, and this would lead people to run client apps like our UI (and the ziti-edge-tunnel utility itself) to run as root (which should generally be avoided unless necessary).