AG>Вопрос: как можно приспособить Linux для задач компиляции и линковки кодов C++17? AG>Примечание: меня интересует прежде всего применение этого добра в среде UBUNTU 14.04 (и в некоторой степени Debian 8).
ПОЛНЫЙ С++17 реализует gcc 8
Шахтер тут недавно постил про него.
Хочешь быть счастливым — будь им!
Без булдырабыз!!!
Здравствуйте, AlexGin, Вы писали:
V>>для 3.9 надо "-std=c++1z"
AG>Пробовал я эту опцию — бесполезно AG>Всё равно — была ругань на новые синтаксические выражения.
Здравствуйте, AlexGin, Вы писали:
AG>Доброе время суток, уважаемые коллеги!
AG>Я осваиваю новый для меня C++17, используя MSVC-2017 CE. С опцией для студии, требуемой для компилятора, успешно разобрался.
AG>Задумался на тему: для Linux (UBUNTU 14.04; Debian) — есть GCC и Clang.
Нафталином обмазываешься перед тем ка кза ПеКа садиться? Давно уже 18 убунта есть с новейшим gcc и clang где есть даже частично 21 стандарт. AG>Я так понимаю, что они также как и студия, поддерживают C++17? AG>Заранее спасибо, за любые подсказки!
Проапгрейди релиз убунты до 18.
Также работает Debian 8 (а вот Debian 9: не хочет устанавливаться — нет драйверов wi-fi, старые от Debian 8 не подходят).
В общем в мирке ОС Linux — всё очень удивительно
Пробовал — падают сразу после инсталляции: UBUNTU 16.04; UBUNTU 17.10; UBUNTU 18.04 — далее даже не стартуют
P.S. Апгрейд системы UBUNTU 14.04 — до более свежей — заканчивается аналогично: после него даже не стартует!
Здравствуйте, LaptevVV, Вы писали:
AG>>Вопрос: как можно приспособить Linux для задач компиляции и линковки кодов C++17? AG>>Примечание: меня интересует прежде всего применение этого добра в среде UBUNTU 14.04 (и в некоторой степени Debian 8). LVV>ПОЛНЫЙ С++17 реализует gcc 8 LVV>Шахтер тут недавно постил про него.
Да — gcc 8 успешно работает с C++17
ОГРОМНОЕ СПАСИБО!
Здравствуйте, AlexGin, Вы писали:
AG>Работает только UBUNTU 14.04!
Понятно, тогда это реально проблема. AG>Также работает Debian 8 (а вот Debian 9: не хочет устанавливаться — нет драйверов wi-fi, старые от Debian 8 не подходят). AG>В общем в мирке ОС Linux — всё очень удивительно
Может где-то пропиетаные либы есть из которых можно собрать модуль ядра? AG>Пробовал — падают сразу после инсталляции: UBUNTU 16.04; UBUNTU 17.10; UBUNTU 18.04 — далее даже не стартуют
У меня есть подозрение что это может быть связано с UEFI, тут нужно разобрваться, попробуй на SO поискать ответ. AG>P.S. Апгрейд системы UBUNTU 14.04 — до более свежей — заканчивается аналогично: после него даже не стартует!
Как вариант, можно попробовать поставить msys2/mingw и через него подцепить новый gcc в VS Code под винду, но решение так себе.
Здравствуйте, Kernan, Вы писали:
K>Может где-то пропиетаные либы есть из которых можно собрать модуль ядра?
Боюсь, что это самый долгий и трудный (тернистый) путь...
AG>>Пробовал — падают сразу после инсталляции: UBUNTU 16.04; UBUNTU 17.10; UBUNTU 18.04 — далее даже не стартуют K>У меня есть подозрение что это может быть связано с UEFI, тут нужно разобрваться, попробуй на SO поискать ответ.
Я в курсе, что любой Linux — ставим в обычном режиме (не на UEFI mode режиме, а на Legasy CSM BIOS режиме). Тем не менее — проблемы есть.
Более того, установщик UBUNTU имеет пробный режим запуска — try UBUNTU. Так этот режим у меня также корректно работает только для UBUNTU 14.04.
Для всех остальных (указанных выше в данной ветке) версий UBUNTU — пробный режим благополучно крашится
AG>>P.S. Апгрейд системы UBUNTU 14.04 — до более свежей — заканчивается аналогично: после него даже не стартует! K>Как вариант, можно попробовать поставить msys2/mingw и через него подцепить новый gcc в VS Code под винду, но решение так себе.
Для винды — у меня нет никаких проблем: MSVC-2017 CE — в настройках C/C++ -> CommandLine -> AdditionalOptions запишем: /std:c++17
и всё отлично работает
P.S. Так как все остальные разновидности C++ (11 & 14) я опробовал под UBUNTU/Debian, то у меня "чешутся руки" проделать то же для C++17.
Попутно замечу, что для других стандартов всё ставится "из коробки" c Qt v5.10.1:
здесь: https://download.qt.io/official_releases/qt/5.10/5.10.1
берём: qt-opensource-linux-x64-5.10.1.run
и просто ставим (без apt-get install, просто в стиле винды)!
При этом, перед установкой пакета qt-opensource-linux-x64-5.10.1.run я конечно же выполнял следующие установки:
я так понимаю на этом ноутбуке стоят Linux и Windows 10, тогда почему бы не поставить VMWare Player в десятку и оттуда уже запускать любые дистрибутивы любых линуксов.
Огромное Спасибо!
Удалось установить GCC v8, а также и clang-5.0 и clang-6.0 — благодаря подсказкам, приведенным по данным ссылкам!
И всё это на UBUNTU 14.04!
Здравствуйте, Masterspline, Вы писали:
M>https://apt.llvm.org/ и будет тебе самый clang 6.0 (с поддержкой c++17) для твоего Ubuntu Trusty (14.04). Как подключить gcc можно тоже поискать.
+100500
Спасибо — этот вариант уже подсказали ранее.
M>Еще вариант — использовать docker (там и gcc последний будет и clang).
Здравствуйте, AlexGin, Вы писали:
AG>Это — оно: AG>https://docs.docker.com/glossary/?term=Docker AG>как я понял — некий "адаптер" для выполнения компиляции где-то на сервере? Так?
Нет. Легкая и удобная виртуальная среда. Для поганять разные компиляторы в "чистой среде" — самое то. https://hub.docker.com/_/gcc/
Здравствуйте, AlexGin, Вы писали:
AG>На НОВОМ компьютере (на ноуте) — за ноябрь 2017 выпуска AG>Работает только UBUNTU 14.04!
1. Зачем ставить Linux на голое железо ноутбука, если основная цель — поиграться с С++17? Есть же WSL (в случае Win10) или виртуалки, в конце концов
2. Зачем ставить Linux, если основная цель — поиграться с С++17? Есть же GCC (mingw-64, к примеру), Clang