The OpenNET Project / Index page

[ новости /+++ | форум | wiki | теги | ]

Прогресс в обеспечении поддержки LLVM/Clang в NetBSD

31.12.2018 08:31

Разработчики NetBSD отчитались о работе по обеспечению возможности сборки с использованием компилятора Clang и библиотек, развиваемых проектом LLVM. В настоящее время buildbot успешно выполняет сборку и проходит тесты для библиотек LLVM, компилятора Clang, утилит clang-tools-extra, компоновщика lld, оптимизатора polly, runtime-библиотеки OpenMP, а также библиотек libunwind, libcxxabi и libcxx. Частично реализована поддержка отладчика lldb. Из ближайших планов отмечается включение runtime compiler-rt в buildbot, портирование компоновщика LLD для формирования рабочих исполняемых файлов NetBSD, портирование компонентов DFSan, ESan, LSan и shadowcallstack.

  1. Главная ссылка к новости (http://blog.netbsd.org/tnf/ent...)
  2. OpenNews: Релиз операционной системы NetBSD 7.2
  3. OpenNews: Изменение процесса формирования релизов NetBSD
  4. OpenNews: Аудит сетевого стека NetBSD выявил уязвимости в BSD-системах
  5. OpenNews: В NetBSD обеспечена поддержка повторяемых сборок
  6. OpenNews: Обеспечена возможность сборки ядер Linux 4.4 и 4.9 при помощи Clang
Лицензия: CC BY 3.0
Короткая ссылка: https://opennet.ru/49880-netbsd
Ключевые слова: netbsd, clang, llvm
При перепечатке указание ссылки на opennet.ru обязательно


Обсуждение (25) Ajax | 1 уровень | Линейный | +/- | Раскрыть всё | RSS
  • 1.1, Аноним (1), 08:58, 31/12/2018 [ответить] [﹢﹢﹢] [ · · · ]  
  • +5 +/
    Меньше gpl-a в системе, меньше проблем!
     
     
  • 2.2, Щавель (?), 10:36, 31/12/2018 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Проблемы от GPL только у голимых проприетарщиков.
     
     
  • 3.13, Аноним (13), 16:06, 31/12/2018 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Вообще-то, в приличном обществе за GPL и в морду дать могут.
     
     
  • 4.19, Аноним (19), 06:38, 01/01/2019 [^] [^^] [^^^] [ответить]  
  • +3 +/
    Во-во. Однажды на собеседовании обломился на этом. Есть репа на гитхабе - давай досвидания.
     
     
  • 5.24, Вот оно че (?), 16:03, 01/01/2019 [^] [^^] [^^^] [ответить]  
  • +/
    В чем подвох-то? Латентный дивергент или слишком умный?

    У меня однажды сработало ровно наоборот. Но это была вакансия работы по удаленке.

     
  • 2.9, DerRoteBaron (ok), 14:52, 31/12/2018 [^] [^^] [^^^] [ответить]  
  • –2 +/
    С компилятором это особенно сложный вопрос. Вот повадятся какие-то проприетарщики (какой-нибудь гугель или qualcomm) собирвть что-то писать для своего проприетарно пропатченного clang/llvm, так потом проблем не оберёшься.
     
  • 2.15, Аноним (15), 17:14, 31/12/2018 [^] [^^] [^^^] [ответить]  
  • +/
    Проблема не в GPLе GCC, а в том, что clang - кросс-компилятор. Реализовав поддержку для него сможешь собирать хоть под вёдра, хоть под рутеры, хоть под WebAssembly, хоть под iot, хоть под видеокарты, хоть под fpga (но работать не будет).
     
  • 2.16, nm0i (ok), 18:36, 31/12/2018 [^] [^^] [^^^] [ответить]  
  • +2 +/
    GNU is Not Usable
     

  • 1.3, iZEN (ok), 12:18, 31/12/2018 [ответить] [﹢﹢﹢] [ · · · ]  
  • –5 +/
    А смысл? Mesa 3D всё равно зависит от отдельно устанавливаемого LLVM.

    LLVM — большая ошибка архитектуры, не решающая проблемы единственной системы компиляции в операционной системе (как это делает GCC), но только множащаю сущности.

    Сейчас во FreeBSD, например, штатно установлены: системный компилятор LLVM/Clang 6.0.1 и порт того же LLVM/Clang 6.0.1 для Mesa 3D (графическая подсистема X.org). Также можно собрать другие версии LLVM/Clang из портов и они кому-то ещё нужны! Налицо размножение ненужных сущностей одного и того же функционального предназначения и кодовой базы. Что-то в этом не так. Неправильно это.

     
     
  • 2.4, Аноним (4), 12:36, 31/12/2018 [^] [^^] [^^^] [ответить]  
  • +6 +/
    Ошибка архитектуры в пакетном менеджере и мейнтейнерах, которые размножаются сущностями. Я не говорю про всякие хрусты, которые включают свою собственную внутренню версию ллвм. Еще флатпаки, аппимеджи с шнапсами завезут - будет одна архитектура ошибок.
     
     
  • 3.6, Аноним (6), 13:34, 31/12/2018 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Вот только не надо грязными руками касаться FreeBSD'ишного pkg: лучше ещё найти надо. Это вам не двусущное линуховое у@бище: yum/rpm || apt/dpkg. Здесь достаточно _одного_ pkg-static...
     
     
  • 4.8, Аноним (8), 14:50, 31/12/2018 [^] [^^] [^^^] [ответить]  
  • –1 +/
    pacman?
     
  • 4.10, Аноним (10), 14:53, 31/12/2018 [^] [^^] [^^^] [ответить]  
  • +1 +/
    pkg позволяет установить пакет с метаданными (пустое значение в поле порта, например), которые потом сам не может прочитать из базы. Н - надежность.
     
     
  • 5.11, Анонн (?), 15:17, 31/12/2018 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > pkg позволяет выстрелить в ногу, установ пакет с метаданными (пустое значение в поле порта, например),




    Installing (null)-6.1_5...
    pkg: Invalid package: object has missing property origin
    pkg: the package is not valid



    Ну-ну.

    > которые потом сам не может прочитать из базы. Н - надежность.

    Т.е. умудриться выстрелить себе в ногу - умудрился, а вот про pkg shell - не, не слышал?


     
  • 4.12, Аноним (4), 15:23, 31/12/2018 [^] [^^] [^^^] [ответить]  
  • –3 +/
    Кашу маслом, как грязное руками не испортишь. Потому что нет нормальных пакетных менежеров. Более менее продвинутый язык описания пакетов и их зависимостей есть только в гентушном портаже. Но то что есть язык не означает, что он как-то полезен. Потому что разруливание зависимостей - это непростая задача, которую естественно никто не пытался решить в пакетных менеджерах. Потому проблему решают в лоб: шнапсами, ржавыми карго-культами или удалением пол-системы ради установки безобидного пакета.
     
     
  • 5.20, YetAnotherOnanym (ok), 12:00, 01/01/2019 [^] [^^] [^^^] [ответить]  
  • +/
    Ага. А система USE-флагов какая замечательная! Заходит человек в ресторан, заказывает котлету, а официант ему: "Вы не говорили, что будете употреблять мясное и жареное". Вся суть USE-флагов в одной фразе.
     
     
  • 6.21, Аноним (4), 13:50, 01/01/2019 [^] [^^] [^^^] [ответить]  
  • +/
    И где я говорил, что портаж замечательный? А дальше разивать тему я не хочу, в виду отсутствия взаимопониания. То что у людей есть язык, не говорить от том что они умеют им пользоваться. Как и портаж.
     
     
  • 7.22, Аноним (22), 15:13, 01/01/2019 [^] [^^] [^^^] [ответить]  
  • +/
    И все превратилось в портаж - даже небо, даже Аллах!
     
     
  • 8.23, Аноним (4), 15:56, 01/01/2019 [^] [^^] [^^^] [ответить]  
  • +/
    Молодец, ты переплюнул меня в плотности использования слова портаж в одном соо... текст свёрнут, показать
     
  • 2.5, Аноним (6), 13:29, 31/12/2018 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Большая ошибка думать, что LLVM - ошибка :)
    Не используй devel/llvm60, ипользуй devel/llvm70 не только для сборки mesa-*, а и для [почти] всех портов. Не это ли свобода?
    Почему-то $(ls -ld /usr/ports/lang/gcc*|wc -l) = 12 тебя смущает меньше, нежели $(ls -ld /usr/ports/devel/llvm*|wc -l) = 8.
    Что-то в консерватории не так, Изя...
     
     
  • 3.7, iZEN (ok), 14:34, 31/12/2018 [^] [^^] [^^^] [ответить]  
  • –1 +/
    > Большая ошибка думать, что LLVM - ошибка :)
    > Не используй devel/llvm60, ипользуй devel/llvm70 не только для сборки mesa-*, а и
    > для [почти] всех портов. Не это ли свобода?

    Я это могу. Я свободен в выборе. Но по умолчанию всё вот так по-отдельности.

    > Что-то в консерватории не так, Изя...

    Дело не во мне, я всё могу настроить как надо. А в самой консерватории что-то пошло не так: множатся одни и те же сущности одних и тех же версий (LLVM/Clang 6.0.1 в системе и из портов установлены параллельно).


     
     
  • 4.17, Аноним84701 (ok), 19:09, 31/12/2018 [^] [^^] [^^^] [ответить]  
  • +/
    > Дело не во мне, я всё могу настроить как надо. А в самой консерватории что-то пошло не так: множатся одни и те же
    > сущности одних и тех же версий (LLVM/Clang 6.0.1 в системе и из портов установлены параллельно).

    А системный (базовый) разве не сильно урезанная версия, чтобы не добавлять к размеру системы чуть ли ни цельный гиг только для компилятора (тем более, последние версии LLVM несколько "разжирели")?


     
  • 2.18, бздун (?), 06:02, 01/01/2019 [^] [^^] [^^^] [ответить]  
  • –1 +/
    LLVM — большая ошибка архитектуры, не решающая проблемы единственной системы компиляции в операционной системе (как это делает GCC), но только множащаю сущности.

    Ну чего, как там с системным GCC покросскомпиляли?

     

  • 1.25, Аноним (-), 16:35, 01/01/2019 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Начнём с того, что Apple вздумали потеснить набор трансляторов GNU GCC поддержав деньгами никому ранее не известный компилятор LLVM высранный в свою очередь сотрудниками Иллинойского университета.

    Потом БЗДуны ни с того ни с сего приняли на ура новый компилятор. А чё лицензия GPL не нравится?

    Зачем вся эта кутерьма? Есть давно для всех юниксов фактический стандарт - это коллекция компиляторов ГНУ.

     
     
  • 2.26, Анонн (?), 16:57, 01/01/2019 [^] [^^] [^^^] [ответить]  
  • +/
    > Зачем вся эта кутерьма? Есть давно для всех юниксов фактический стандарт -
    > это коллекция компиляторов ГНУ.

    Опоздавшие родиться и не пользовавшийся GCC дошланговской эпохи знатоки опеннета всегда могут взять gcc 4.2 и сравнить выхлоп диагностики и ошибок с современными версиями. Заодно обосновать резкое улучшение в gcc только после появления шланга совершенно случайным совпадением …

     

     Добавить комментарий
    Имя:
    E-Mail:
    Текст:



    Партнёры:
    PostgresPro
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2024 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру