Рейтинг:0

Обновите версию gcc в Ubuntu 18,04

флаг in

Я запускаю Ubuntu 18.04 в WSL, который я использую для компиляции своих программ на С++.

Мне нужно написать программу, которая получает имена всех файлов в определенном каталоге и добавляет их в вектор строк. Просматривая Интернет, я обнаружил, что могу использовать библиотеку «файловая система», чтобы сделать это простым и легким способом.

Проблема в том, что всякий раз, когда я пытаюсь использовать этот ответ, я получаю сообщение об ошибке 'файловая система' не была объявлена. Я подозреваю, что это происходит из-за того, что у меня не установлена ​​библиотека файловой системы.

Я уже нашел способ исправить это, используя экспериментальные функции и добавив флаг в команду компиляции, но мне все еще интересно, есть ли способ обновить мой пакет gcc до пакета с уже установленной библиотекой.

Моя текущая версия gcc — 7.5.0.

Есть ли способ сделать это?

Рейтинг:2
флаг hr

файловая система является экспериментальным в g++-7.5.0.

Вы все равно сможете использовать его, включив его как <experimental/filesystem> (который предоставляет пространство имен std::experimental::файловая система), и связывание libstdc++fs явно (с -lstdc++fs в командной строке g++), как описано в Файловая система в C++17

Кроме того, вы можете установить г++-9 (или даже gcc-10) в бионике из инструментальная цепь-r PPA.

Ответить или комментировать

Большинство людей не понимают, что склонность к познанию нового открывает путь к обучению и улучшает межличностные связи. В исследованиях Элисон, например, хотя люди могли точно вспомнить, сколько вопросов было задано в их разговорах, они не чувствовали интуитивно связи между вопросами и симпатиями. В четырех исследованиях, в которых участники сами участвовали в разговорах или читали стенограммы чужих разговоров, люди, как правило, не осознавали, что задаваемый вопрос повлияет — или повлиял — на уровень дружбы между собеседниками.