Fail to build on Jeson Nano
Exarkuniv opened this issue · 5 comments
its me again.
im seeing what i can get working on my jetson nano and right now. this is stumping me
its running Ubuntu 22.04.2 LTS
-- Found SDL2main: /usr/lib/aarch64-linux-gnu/libSDL2main.a (found version "2.26.1")
CMake Warning (dev) at /usr/share/cmake-3.27/Modules/FindPackageHandleStandardArgs.cmake:438 (message):
The package name passed to `find_package_handle_standard_args` (SDL2main)
does not match the name of the calling package (SDL2). This can lead to
problems in calling code that expects `find_package` result variables
(e.g., `_FOUND`) to follow a certain pattern.
Call Stack (most recent call first):
cmake/Modules/FindSDL2.cmake:274 (FIND_PACKAGE_HANDLE_STANDARD_ARGS)
cmake/Modules/FindSDL2_mixer.cmake:112 (find_package)
CMakeLists.txt:63 (find_package)
This warning is for project developers. Use -Wno-dev to suppress it.
-- Found SDL2_mixer: /usr/lib/aarch64-linux-gnu/libSDL2_mixer.so (found version "2.0.4")
-- Looking for C++ include filesystem
-- Looking for C++ include filesystem - not found
CMake Error at cmake/Modules/FindFilesystem.cmake:241 (message):
Cannot Compile simple program using std::filesystem
Call Stack (most recent call first):
CMakeLists.txt:66 (find_package)
i have followed your install doc for Ubuntu 19.
hope you can help me out with this
Hi @Exarkuniv, this error typically means that the compiler is too old and doesn't support all the necessary C++ 17 library features. What version of gcc is available on that system?
Then again, Ubuntu 22.04 should definitely have a recent enough gcc.
Can you post the output of the very beginning of the CMake command, where it prints information about the compiler?
Then again, Ubuntu 22.04 should definitely have a recent enough gcc.
i had the same thought
i believe this is what you want
= = = = = = = = = = = = = = = = = = = = =
Building 'rigelengine' : RigelEngine - Duke Nukem 2 source port
= = = = = = = = = = = = = = = = = = = = =
-- The C compiler identification is GNU 7.5.0
-- The CXX compiler identification is GNU 7.5.0
-- 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
-- No build type was specified, will default to Release
-- RigelEngine, build type: Release, version: 0.9.1
-- Found SDL2: /usr/lib/aarch64-linux-gnu/libSDL2.so (found version "2.26.1")
CMake Warning (dev) at /usr/share/cmake-3.27/Modules/FindPackageHandleStandardAr gs.cmake:438 (message):
The package name passed to `find_package_handle_standard_args` (SDL2main)
does not match the name of the calling package (SDL2). This can lead to
problems in calling code that expects `find_package` result variables
(e.g., `_FOUND`) to follow a certain pattern.
Call Stack (most recent call first):
cmake/Modules/FindSDL2.cmake:274 (FIND_PACKAGE_HANDLE_STANDARD_ARGS)
CMakeLists.txt:62 (find_package)
This warning is for project developers. Use -Wno-dev to suppress it.
-- Found SDL2main: /usr/lib/aarch64-linux-gnu/libSDL2main.a (found version "2.26 .1")
CMake Warning (dev) at /usr/share/cmake-3.27/Modules/FindPackageHandleStandardAr gs.cmake:438 (message):
The package name passed to `find_package_handle_standard_args` (SDL2main)
does not match the name of the calling package (SDL2). This can lead to
problems in calling code that expects `find_package` result variables
(e.g., `_FOUND`) to follow a certain pattern.
Call Stack (most recent call first):
cmake/Modules/FindSDL2.cmake:274 (FIND_PACKAGE_HANDLE_STANDARD_ARGS)
cmake/Modules/FindSDL2_mixer.cmake:112 (find_package)
CMakeLists.txt:63 (find_package)
This warning is for project developers. Use -Wno-dev to suppress it.
-- Found SDL2_mixer: /usr/lib/aarch64-linux-gnu/libSDL2_mixer.so (found version "2.0.4")
-- Looking for C++ include filesystem
-- Looking for C++ include filesystem - not found
CMake Error at cmake/Modules/FindFilesystem.cmake:241 (message):
Cannot Compile simple program using std::filesystem
Call Stack (most recent call first):
CMakeLists.txt:66 (find_package)
-- Configuring incomplete, errors occurred!
i believe this is what you want
Yes, perfect, thanks! Ok yeah it's as I thought, it's using gcc 7.5.0 but you need at least gcc 8.1.0 as per the instructions.
I'm not sure why a system based on Ubuntu 22.04 ships with such an old gcc. You might need to separately install a newer one, or maybe it's already installed and just not selected as the default.
ok, ill take a look and report back
so it seems that both gcc 10 and gcc 7 are installed
but it seemed that gcc7 was picked for as default for both gcc and g++
i changed that, and now its going.
as always, thanks for your help
Awesome, glad I could help!