CLion, Linux, ошибка при запуске собранной внутри IDE программы

Пытаюсь разобраться со сборкой .cpp программ под Linux (Linux Mint, до этого работал только на Windows). У меня установлен новейший тулчейн gcc и g++. Если я компилирую .cpp файл напрямую через командную строку:

g++ -o test main.cpp

А затем запускаю результат

./test

То в последствии все запускается и работает успешно. Программка как и положено выводит свой Hello World.

Если же я пытаюсь собрать точно такой же файл, но уже через CLion/CMake, а затем запустить его через командную строку, то получаю такую ошибку:

/lib/x86_64-linux-gnu/libstdc++.so.6: version `GLIBCXX_3.4.32' not found (required by ./test)

В настройках CLion указаны все пути к GCC

введите сюда описание изображения

Сам CMakeList.txt файл выглядит так:

cmake_minimum_required(VERSION 3.27)
project(test)

set(CMAKE_CXX_STANDARD 17)

add_executable(test main.cpp)

Но что интересно - через сам CLion программа запускается исправно.

введите сюда описание изображения

В чем тут дело? Какие действия тут происходят под капотом, из-за которых она работает в окне IDE, в то время как не работает если запускать её напрямую? Я в линуксе полный новичок (да и в общем то в подробности взаимодействия генератора/компилятора/сборщика тоже не особо посвящен). Возможно полезным будет упомянуть что CLion у меня установлен как FLatpak пакет (насколько мне известно, эта контейнеризация налагает какие-то ограничения и теоретически может тащить с собой какие-то старые файлы, но это просто теория).

P.S. Статическая линковка (static-libgcc -static-libstdc++) тоже ситуацию особо не меняют (появляются 2 аналогичные ошибки вместо одной)

P.P.S При конфигурации CMake проекта в консоль выводится следующая информация о компиляторе.

-- The C compiler identification is GNU 13.2.0
-- The CXX compiler identification is GNU 13.2.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

Когда я пытаюсь выяснить текущую версию компилятора в системе, то получаю это:

gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0
g++ (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0

Получается и правда какую-то встроенную использует (и при этом более новую чем моя)?


Ответы (0 шт):