CMake Compilers Set Incorrectly And Not Sure How to Fix It

Hi, I’m trying to compile a program to convert CK3 save files to EU4 save files. But I’m getting an error, because it looks like CMake is looking for packages called “gcc-11” and “g+±11”.
Now, I have gcc and g++ installed. I even double checked manually in my /usr/bin folder to make sure they were there in case something weird had happened. The issue seems to be that the packages I have installed are called “gcc” and “g++”, not “gcc-11” or “g+±11”.
Part of this was specified directly in one of the build scripts, so I edited it to fix that, but CMake itself still seems to be looking for gcc-11 and g+±11 after the initial point of looking at the compiler. I’m not even sure what could be causing this directly and I can’t seem to find any leads online (every similar error seems to just be people completely not having gcc or g++ installed), the errors are pretty arcane to me. Hopefully y’all can decipher them and help me figure out what the problem is. Thanks for y’all’s help!

~/Manual Apps/CK3toEU4: sudo ./build_linux.sh
-- The C compiler identification is GNU 11.1.0
-- The CXX compiler identification is GNU 11.1.0
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working C compiler: /usr/bin/gcc - 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/g++ - skipped
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Found CURL: -lcurl (found version "7.80.0")  
-- Found wxWidgets: -pthread;;;-lwx_baseu_net-3.0;-lwx_gtk2u_core-3.0;-lwx_baseu-3.0 (found version "3.0.5") 
-- Configuring done
-- Generating done
-- Build files have been written to: /home/amberabit/Manual Apps/CK3toEU4/Fronter/Fronter/build
[  3%] Building CXX object CMakeFiles/Fronter.dir/Source/Configuration/Mod.cpp.o
[  6%] Building CXX object CMakeFiles/Fronter.dir/Source/Configuration/Configuration.cpp.o
[  9%] Building CXX object CMakeFiles/Fronter.dir/Source/Configuration/RequiredFile.cpp.o
[ 15%] Building CXX object CMakeFiles/Fronter.dir/Source/Frontend.cpp.o
[ 12%] Building CXX object CMakeFiles/Fronter.dir/Source/Configuration/RequiredFolder.cpp.o
/bin/sh: line 1: g++-11: command not found
/bin/sh: line 1: g++-11: command not found
/bin/sh: line 1: g++-11: command not found
/bin/sh: line 1: g++-11: command not found
make[2]: *** [CMakeFiles/Fronter.dir/build.make:104: CMakeFiles/Fronter.dir/Source/Configuration/Mod.cpp.o] Error 127
make[2]: *** Waiting for unfinished jobs....
make[2]: *** [CMakeFiles/Fronter.dir/build.make:90: CMakeFiles/Fronter.dir/Source/Configuration/Configuration.cpp.o] Error 127
make[2]: *** [CMakeFiles/Fronter.dir/build.make:118: CMakeFiles/Fronter.dir/Source/Configuration/RequiredFile.cpp.o] Error 127
make[2]: *** [CMakeFiles/Fronter.dir/build.make:76: CMakeFiles/Fronter.dir/Source/Frontend.cpp.o] Error 127
/bin/sh: line 1: g++-11: command not found
make[2]: *** [CMakeFiles/Fronter.dir/build.make:132: CMakeFiles/Fronter.dir/Source/Configuration/RequiredFolder.cpp.o] Error 127
[ 18%] Building CXX object CMakeFiles/Fronter.dir/Source/Configuration/Options/CheckBoxOption.cpp.o
/bin/sh: line 1: g++-11: command not found
make[2]: *** [CMakeFiles/Fronter.dir/build.make:146: CMakeFiles/Fronter.dir/Source/Configuration/Options/CheckBoxOption.cpp.o] Error 127
make[1]: *** [CMakeFiles/Makefile2:83: CMakeFiles/Fronter.dir/all] Error 2
make: *** [Makefile:91: all] Error 2

Are you sure? :wink:

I’ve edited the only offending build script I can find.
Here’s the original:

#!/bin/bash
cd Fronter &&
rm -rf build &&
rm -rf ../Release &&
cmake -H. -Bbuild -DCMAKE_C_COMPILER=/usr/bin/gcc-11 -DCMAKE_CXX_COMPILER=/usr/bin/g++-11 &&
cmake --build build -- -j40 &&
cd ..

Here’s the fixed version:

#!/bin/bash
cd Fronter &&
rm -rf build &&
rm -rf ../Release &&
cmake -H. -Bbuild -DCMAKE_C_COMPILER=/usr/bin/gcc -DCMAKE_CXX_COMPILER=/usr/bin/g++ &&
cmake --build build -- -j40 &&
cd ..

This is the build script it’s hanging on and I did indeed edit it.

Oh, I see. It’s referencing something in the build folder. Check the scripts there.

Where is the source repo? I’d like to see the files.

I’ll continue to fish around in the folders to see if I can find the offending script.

It’s here:

Found another offending script (the main build script, in fact, I was just uh blind lol), but it’s still giving the same error, every time.

Search the files for the reference:

grep -iRl "g++-11" ./

I found an easy solution is just to link g++ to g+±11
ln /bin/g++ /bin/g++-11