raylib-rs
raylib-rs copied to clipboard
Fail to build on FreeBSD 14 current
Hi there, I'm trying to port my raylib
project from MacOS
to FreeBSD
, but the compilation is fail:
Compiling cc v1.0.79
Compiling fs_extra v1.3.0
Compiling libc v0.2.140
Compiling cfg-if v1.0.0
Compiling lazy_static v1.4.0
Compiling cmake v0.1.49
Compiling raylib-sys v3.7.0
error: failed to run custom build command for `raylib-sys v3.7.0`
Caused by:
process didn't exit successfully: `/usr/home/wison/Rust/ping-pong-tron-legacy-rust/target/debug/build/raylib-sys-99c6dec6590bb7b2/build-script-build` (exit status: 101)
--- stdout
CMAKE_TOOLCHAIN_FILE_x86_64-unknown-freebsd = None
CMAKE_TOOLCHAIN_FILE_x86_64_unknown_freebsd = None
HOST_CMAKE_TOOLCHAIN_FILE = None
CMAKE_TOOLCHAIN_FILE = None
CMAKE_GENERATOR_x86_64-unknown-freebsd = None
CMAKE_GENERATOR_x86_64_unknown_freebsd = None
HOST_CMAKE_GENERATOR = None
CMAKE_GENERATOR = None
CMAKE_PREFIX_PATH_x86_64-unknown-freebsd = None
CMAKE_PREFIX_PATH_x86_64_unknown_freebsd = None
HOST_CMAKE_PREFIX_PATH = None
CMAKE_PREFIX_PATH = None
CMAKE_x86_64-unknown-freebsd = None
CMAKE_x86_64_unknown_freebsd = None
HOST_CMAKE = None
CMAKE = None
running: cd "/usr/home/wison/Rust/ping-pong-tron-legacy-rust/target/debug/build/raylib-sys-377270cf76bdc406/out/build" && CMAKE_PREFIX_PATH="" "cmake" "/usr/home/wison/Rust/ping-pong-tron-legacy-rust/target/debug/build/raylib-sys-377270cf76bdc406/out/raylib" "-DBUILD_EXAMPLES=OFF" "-DCMAKE_BUILD_TYPE=Release" "-DSUPPORT_BUSY_WAIT_LOOP=OFF" "-DPLATFORM=Desktop" "-DCMAKE_INSTALL_PREFIX=/usr/home/wison/Rust/ping-pong-tron-legacy-rust/target/debug/build/raylib-sys-377270cf76bdc406/out" "-DCMAKE_C_FLAGS= -ffunction-sections -fdata-sections -fPIC -m64" "-DCMAKE_C_COMPILER=/usr/bin/cc" "-DCMAKE_CXX_FLAGS= -ffunction-sections -fdata-sections -fPIC -m64" "-DCMAKE_CXX_COMPILER=/usr/bin/c++" "-DCMAKE_ASM_FLAGS= -ffunction-sections -fdata-sections -fPIC -m64" "-DCMAKE_ASM_COMPILER=/usr/bin/cc"
-- The C compiler identification is Clang 14.0.5
-- The CXX compiler identification is Clang 14.0.5
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working C compiler: /usr/bin/cc - skipped
-- Detecting C compile features
-- Detecting C compile features - done
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Check for working CXX compiler: /usr/bin/c++ - skipped
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Performing Test COMPILER_HAS_THOSE_TOGGLES
-- Performing Test COMPILER_HAS_THOSE_TOGGLES - Success
-- Testing if -Werror=pointer-arith can be used -- compiles
-- Testing if -Werror=implicit-function-declaration can be used -- compiles
-- Testing if -fno-strict-aliasing can be used -- compiles
-- Using raylib's GLFW
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD - Failed
-- Looking for pthread_create in pthreads
-- Looking for pthread_create in pthreads - not found
-- Looking for pthread_create in pthread
-- Looking for pthread_create in pthread - found
-- Found Threads: TRUE
-- Using X11 for window creation
-- Found X11: /usr/local/include
-- Looking for XOpenDisplay in /usr/local/lib/libX11.so;/usr/local/lib/libXext.so
-- Looking for XOpenDisplay in /usr/local/lib/libX11.so;/usr/local/lib/libXext.so - found
-- Looking for gethostbyname
-- Looking for gethostbyname - found
-- Looking for connect
-- Looking for connect - found
-- Looking for remove
-- Looking for remove - found
-- Looking for shmat
-- Looking for shmat - found
-- Looking for IceConnectionNumber in ICE
-- Looking for IceConnectionNumber in ICE - found
-- Audio Backend: miniaudio
-- Building raylib static library
-- Generated build type: Release
-- Compiling with the flags:
-- PLATFORM=PLATFORM_DESKTOP
-- GRAPHICS=GRAPHICS_API_OPENGL_33
-- Configuring done
-- Generating done
-- Build files have been written to: /usr/home/wison/Rust/ping-pong-tron-legacy-rust/target/debug/build/raylib-sys-377270cf76bdc406/out/build
running: cd "/usr/home/wison/Rust/ping-pong-tron-legacy-rust/target/debug/build/raylib-sys-377270cf76bdc406/out/build" && "cmake" "--build" "." "--target" "install" "--config" "Debug" "--parallel" "16"
[ 8%] Building C object raylib/external/glfw/src/CMakeFiles/glfw_objlib.dir/context.c.o
[ 8%] Building C object raylib/external/glfw/src/CMakeFiles/glfw_objlib.dir/init.c.o
[ 12%] Building C object raylib/external/glfw/src/CMakeFiles/glfw_objlib.dir/input.c.o
[ 16%] Building C object raylib/external/glfw/src/CMakeFiles/glfw_objlib.dir/monitor.c.o
[ 24%] Building C object raylib/external/glfw/src/CMakeFiles/glfw_objlib.dir/vulkan.c.o
[ 24%] Building C object raylib/external/glfw/src/CMakeFiles/glfw_objlib.dir/window.c.o
[ 32%] Building C object raylib/external/glfw/src/CMakeFiles/glfw_objlib.dir/x11_init.c.o
[ 32%] Building C object raylib/external/glfw/src/CMakeFiles/glfw_objlib.dir/x11_monitor.c.o
[ 36%] Building C object raylib/external/glfw/src/CMakeFiles/glfw_objlib.dir/x11_window.c.o
[ 40%] Building C object raylib/external/glfw/src/CMakeFiles/glfw_objlib.dir/xkb_unicode.c.o
[ 48%] Building C object raylib/external/glfw/src/CMakeFiles/glfw_objlib.dir/posix_time.c.o
[ 48%] Building C object raylib/external/glfw/src/CMakeFiles/glfw_objlib.dir/posix_thread.c.o
[ 56%] Building C object raylib/external/glfw/src/CMakeFiles/glfw_objlib.dir/glx_context.c.o
[ 56%] Building C object raylib/external/glfw/src/CMakeFiles/glfw_objlib.dir/egl_context.c.o
[ 64%] Building C object raylib/external/glfw/src/CMakeFiles/glfw_objlib.dir/osmesa_context.c.o
[ 64%] Building C object raylib/external/glfw/src/CMakeFiles/glfw_objlib.dir/null_joystick.c.o
--- stderr
CMake Warning (dev) at /usr/local/share/cmake/Modules/FindOpenGL.cmake:315 (message):
Policy CMP0072 is not set: FindOpenGL prefers GLVND by default when
available. Run "cmake --help-policy CMP0072" for policy details. Use the
cmake_policy command to set the policy and suppress this warning.
FindOpenGL found both a legacy GL library:
OPENGL_gl_LIBRARY: /usr/local/lib/libGL.so
and GLVND libraries for OpenGL and GLX:
OPENGL_opengl_LIBRARY: /usr/local/lib/libOpenGL.so
OPENGL_glx_LIBRARY: /usr/local/lib/libGLX.so
OpenGL_GL_PREFERENCE has not been set to "GLVND" or "LEGACY", so for
compatibility with CMake 3.10 and below the legacy GL library will be used.
Call Stack (most recent call first):
cmake/LibraryConfigurations.cmake:20 (find_package)
src/CMakeLists.txt:56 (include)
This warning is for project developers. Use -Wno-dev to suppress it.
CMake Warning:
Manually-specified variables were not used by the project:
CMAKE_ASM_COMPILER
CMAKE_ASM_FLAGS
/usr/home/wison/Rust/ping-pong-tron-legacy-rust/target/debug/build/raylib-sys-377270cf76bdc406/out/raylib/src/external/glfw/src/posix_time.c:81:9: error: implicit declaration of function 'gettimeofday' is invalid in C99 [-Werror,-Wimplicit-function-declaration]
gettimeofday(&tv, NULL);
^
1 error generated.
gmake[2]: *** [raylib/external/glfw/src/CMakeFiles/glfw_objlib.dir/build.make:216: raylib/external/glfw/src/CMakeFiles/glfw_objlib.dir/posix_time.c.o] Error 1
gmake[2]: *** Waiting for unfinished jobs....
gmake[1]: *** [CMakeFiles/Makefile2:159: raylib/external/glfw/src/CMakeFiles/glfw_objlib.dir/all] Error 2
gmake: *** [Makefile:166: all] Error 2
thread 'main' panicked at '
command did not execute successfully, got: exit status: 2
build script failed, must exit now', /home/wison/.cargo/registry/src/index.crates.io-6f17d22bba15001f/cmake-0.1.49/src/lib.rs:1104:5
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
Tried OpenGL_GL_PREFERENCE=GLVND cargo build
already but still fail:)
-
Raylib version
pkg info --list-files raylib # raylib-4.2.0: # /usr/local/include/raylib.h # /usr/local/include/raymath.h # /usr/local/include/rlgl.h # /usr/local/lib/cmake/raylib/raylib-config-version.cmake # /usr/local/lib/cmake/raylib/raylib-config.cmake # /usr/local/lib/libraylib.so # /usr/local/lib/libraylib.so.4.2.0 # /usr/local/lib/libraylib.so.420 # /usr/local/libdata/pkgconfig/raylib.pc # /usr/local/share/licenses/raylib-4.2.0/LICENSE # /usr/local/share/licenses/raylib-4.2.0/ZLIB # /usr/local/share/licenses/raylib-4.2.0/catalog.mk
-
FreeBSD version
uname -a # FreeBSD my-bsd 14.0-CURRENT FreeBSD 14.0-CURRENT #0: Sun Jan 8 12:56:00 NZDT 2023
@wisonye An issue with FreeBSD was fixed yesterday, please, try with latest raylib master branch from github.
@wisonye An issue with FreeBSD was fixed yesterday, please, try with latest raylib master branch from github.
I just gave it a try, but fail to compile the latest master
with the commit ([Update BINDINGS.md for raylib Odin 4.5 (]
I wison | /home/wison/temp/raylib mkdir build
I wison | /home/wison/temp/raylib cd build && cmake -DCMAKE_C_COMPILER=/usr/local/llvm15/bin/clang ..
-- The C compiler identification is Clang 15.0.6
-- The CXX compiler identification is Clang 15.0.6
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working C compiler: /usr/local/llvm15/bin/clang - skipped
-- Detecting C compile features
-- Detecting C compile features - done
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Check for working CXX compiler: /usr/local/llvm15/bin/clang++ - skipped
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Performing Test COMPILER_HAS_THOSE_TOGGLES
-- Performing Test COMPILER_HAS_THOSE_TOGGLES - Success
-- Testing if -Werror=pointer-arith can be used -- compiles
-- Testing if -Werror=implicit-function-declaration can be used -- compiles
-- Testing if -fno-strict-aliasing can be used -- compiles
-- Setting build type to 'Debug' as none was specified.
-- Using raylib's GLFW
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD - Failed
-- Looking for pthread_create in pthreads
-- Looking for pthread_create in pthreads - not found
-- Looking for pthread_create in pthread
-- Looking for pthread_create in pthread - found
-- Found Threads: TRUE
-- Including X11 support
-- Found X11: /usr/local/include
-- Looking for XOpenDisplay in /usr/local/lib/libX11.so;/usr/local/lib/libXext.so
-- Looking for XOpenDisplay in /usr/local/lib/libX11.so;/usr/local/lib/libXext.so - found
-- Looking for gethostbyname
-- Looking for gethostbyname - found
-- Looking for connect
-- Looking for connect - found
-- Looking for remove
-- Looking for remove - found
-- Looking for shmat
-- Looking for shmat - found
-- Looking for IceConnectionNumber in ICE
-- Looking for IceConnectionNumber in ICE - found
-- Audio Backend: miniaudio
-- Building raylib static library
-- Generated build type: Debug
-- Compiling with the flags:
-- PLATFORM=PLATFORM_DESKTOP
-- GRAPHICS=GRAPHICS_API_OPENGL_33
-- Building examples is enabled
-- Looking for CLOCK_MONOTONIC
-- Looking for CLOCK_MONOTONIC - found
-- Looking for QueryPerformanceCounter
-- Looking for QueryPerformanceCounter - not found
-- Looking for stdatomic.h
-- Looking for stdatomic.h - found
-- Testing if -std=c11 can be used -- compiles
-- Configuring done
-- Generating done
-- Build files have been written to: /home/wison/temp/raylib/build
I wison | /home/wison/temp/raylib/build make
[ 1%] Building C object raylib/external/glfw/src/CMakeFiles/glfw.dir/context.c.o
[ 1%] Building C object raylib/external/glfw/src/CMakeFiles/glfw.dir/init.c.o
[ 1%] Building C object raylib/external/glfw/src/CMakeFiles/glfw.dir/input.c.o
[ 2%] Building C object raylib/external/glfw/src/CMakeFiles/glfw.dir/monitor.c.o
[ 2%] Building C object raylib/external/glfw/src/CMakeFiles/glfw.dir/platform.c.o
[ 2%] Building C object raylib/external/glfw/src/CMakeFiles/glfw.dir/vulkan.c.o
[ 3%] Building C object raylib/external/glfw/src/CMakeFiles/glfw.dir/window.c.o
[ 3%] Building C object raylib/external/glfw/src/CMakeFiles/glfw.dir/egl_context.c.o
[ 3%] Building C object raylib/external/glfw/src/CMakeFiles/glfw.dir/osmesa_context.c.o
[ 4%] Building C object raylib/external/glfw/src/CMakeFiles/glfw.dir/null_init.c.o
[ 4%] Building C object raylib/external/glfw/src/CMakeFiles/glfw.dir/null_monitor.c.o
[ 4%] Building C object raylib/external/glfw/src/CMakeFiles/glfw.dir/null_window.c.o
[ 5%] Building C object raylib/external/glfw/src/CMakeFiles/glfw.dir/null_joystick.c.o
[ 5%] Building C object raylib/external/glfw/src/CMakeFiles/glfw.dir/posix_module.c.o
[ 5%] Building C object raylib/external/glfw/src/CMakeFiles/glfw.dir/posix_time.c.o
[ 6%] Building C object raylib/external/glfw/src/CMakeFiles/glfw.dir/posix_thread.c.o
[ 6%] Building C object raylib/external/glfw/src/CMakeFiles/glfw.dir/x11_init.c.o
[ 6%] Building C object raylib/external/glfw/src/CMakeFiles/glfw.dir/x11_monitor.c.o
[ 7%] Building C object raylib/external/glfw/src/CMakeFiles/glfw.dir/x11_window.c.o
[ 7%] Building C object raylib/external/glfw/src/CMakeFiles/glfw.dir/xkb_unicode.c.o
[ 7%] Building C object raylib/external/glfw/src/CMakeFiles/glfw.dir/glx_context.c.o
[ 8%] Building C object raylib/external/glfw/src/CMakeFiles/glfw.dir/posix_poll.c.o
[ 8%] Linking C static library libglfw3.a
[ 8%] Built target glfw
[ 8%] Building C object raylib/CMakeFiles/raylib.dir/rcore.c.o
[ 9%] Building C object raylib/CMakeFiles/raylib.dir/rmodels.c.o
In file included from /home/wison/temp/raylib/src/rmodels.c:112:
/home/wison/temp/raylib/src/external/par_shapes.h:1133:32: warning: implicit conversion from 'int' to 'float' changes value from 2147483647 to 2147483648 [-Wimplicit-const-int-float-conversion]
float r = (float) rand() / RAND_MAX;
~ ^~~~~~~~
/usr/include/stdlib.h:80:18: note: expanded from macro 'RAND_MAX'
#define RAND_MAX 0x7fffffff
^~~~~~~~~~
1 warning generated.
[ 9%] Building C object raylib/CMakeFiles/raylib.dir/rshapes.c.o
[ 9%] Building C object raylib/CMakeFiles/raylib.dir/rtext.c.o
[ 10%] Building C object raylib/CMakeFiles/raylib.dir/rtextures.c.o
[ 10%] Building C object raylib/CMakeFiles/raylib.dir/utils.c.o
[ 10%] Building C object raylib/CMakeFiles/raylib.dir/raudio.c.o
[ 11%] Linking C static library libraylib.a
[ 11%] Built target raylib
[ 11%] Building C object examples/CMakeFiles/audio_mixed_processor.dir/audio/audio_mixed_processor.c.o
[ 11%] Linking C executable audio_mixed_processor
ld: error: unable to find library -latomic
clang-15: error: linker command failed with exit code 1 (use -v to see invocation)
*** Error code 1
Stop.
make[2]: stopped in /usr/home/wison/temp/raylib/build
*** Error code 1
Stop.
make[1]: stopped in /usr/home/wison/temp/raylib/build
*** Error code 1
Stop.
make: stopped in /usr/home/wison/temp/raylib/build
Tried to install the following dependencies that are related to atomic
but will get this error: ld: error: unable to find library -latomic
-
devel/libatomic_ops
-
graphics/mesa-devel
Totally have no idea at this moment:)