LINUX.ORG.RU

Компилятор Clang теперь пригоден для сборки Linux-ядра

 , ,


0

3

В блоге разработчиков Clang появилась информация о том, что с помощью Clang удалось собрать работоспособное ядро Linux версии 2.6.36 с поддержкой многопроцессорных систем (SMP). Несмотря на то, что некоторые компоненты ядра пока не поддаются компиляции, это событие приближает тот момент, когда Clang превратится в полноценный аналог GCC.

Немного технической информации:

  • В качестве основного стенда использовался Macbook 5.1 на базе Intel Core 2 Duo (не стоит забывать, что разработку Clang поддерживает в первую очередь компания Apple). На этой конфигурации удалось запустить ядро с работоспособным X-сервером, а также ядро в среде Qemu
  • В качестве второго стенда использовалась microATX-платформа на базе Intel Atom. В этом случае ядро также функционировало, однако разработчики не пытались запускать X-сервер
  • В системе на базе собранного ядра компилятор успешно собирает сам себя, а также новое ядро. Разработчики докладывают об успешной работе кода, полученного в ходе четвертого цикла самосборки.

Работоспособны следующие компоненты ядра:

  • Базовый код ядра, файловые системы, поддержка шин, в том числе и PCI, ACPI
  • SMP, SMT, SysV, pThreads и POSIX IPC
  • NUMA, управление памятью и SWAP
  • Сетевой стек IPv4, за исключением IPSec
  • Некоторые драйверы и прошивки

Пока не удалось добиться работы следующих подсистем:

  • CryptoAPI, а следовательно, и SELinux, Posix ACLs, IPSec, eCrypt
  • Стека IPv6 и код Netfilter/Router из-за зависимости от CryptoAPI
  • Виртуализации (поддержки гипервизора Xen)
  • Поддержки загружаемых модулей

Разработчики намерены и дальше улучшать совместимость между Clang и GCC и добиваться сборки с помощью Clang полностью работоспособного ядра.

>>> Подробности



Проверено: anonymous_incognito ()
Последнее исправление: Dmitry_Sokolowsky (всего исправлений: 3)
Ответ на: комментарий от Quasar

> тот же Webkit, основанный на KHTML.

Как я понимаю, Webkit открыли как раз в силу лицензии LGPL на KHMTL и только поэтому.

sv75 ★★★★★
()
Ответ на: комментарий от namezys

namezys> Технически gcc хуже. Просто старее

Ну нифига себе. Теперь время, когда код написан, сало технически параметром? Это параметр только для торсионщиков.

Quasar ★★★★★
()

Будет совсем хорошо когда ядро Linux будет запускаться поверх LLVM. Только не смейтесь. Это позволить выпускать одну Android прошивку под множество ARM смартфонов. По крайней мере, хомячки должны быть довольны. :)

anonymous
()
Ответ на: комментарий от baka-kun

baka-kun> Опят автор виноват в том, что распорядился своим трудом по собственному усмотрению? Ну-ну.

Авторы GCC runtime распорядились своим трудом по собственному усмотрению тоже. Так что ты противоречишь сам себе.

Quasar ★★★★★
()
Ответ на: комментарий от anonymous

> Скачать программу с офсайта сайта ни есть прийти в дом и забрать. Уже начинают надоедать твои глупые аналогии. А так, если ты трясёшься над своим кодом то тебе прямая дорога к проприетарщикам.

Мы сейчас не про пиратство говорим если что.

Я писал себе программу, написал, она вышла хорошей. И у меня ее просто забирают и начинают продавать. Да, безусловно, она у меня останется, но ведь кто-то возможно не вложив ни капли труда ей воспользуется, а я даже в авторах числиться не буду.

Так вот BSD - официальное разрешение использовать плоды моего творчества без моего согласия и вообще как будто меня не было. А GPL говорит: «Нет брат, если используешь нахаляву - будь добр - отплати тем же»

Нифига себе. Где ты там увидел проприетарщину? GPLv2 внезапно стала проприетарной? Так что ли?

А где я сказал, что GPLv2 проприетарна? Я сказал, что различия связаны с проприетарзиной или ее поборниками. Например, GPL нельзя использовать в своей проприетарной проге, потому сделали LGPL, который встроить можно. Аналогично GPLv3 сделали, потому что некоторые умные люди находили способ, как онально ограничить тебя даже в рамках GPL и хотя код они не закрывали, но продуктами их труда пользоваться иначе, чем они тебе разрешили, было нельзя.

EvilBlueBeaver
()
Ответ на: комментарий от maxkit

maxkit> Обвиняют не его, обвиняет - он.

Столлман не имеет ничего против BSDL новой редакции, где отменён пункт, делающий эту лицензию полностью проприетарной.

maxkit> В BSD, например, никто не жалуется, просто планомерно выпиливают всё GPL из системы.

Отнюдь. Ещё как жалуются и плачут, так как фанатики BSD испытывают сверхсильную ненависть к GPL вообще и к GNU в частности (что интересно - к проприетарщине они относятся зачастую спокойно. Только Тео и ко. орут. Но они орут на всех.). Но тут появилась Apple, и кинула свой огрызок.

Quasar ★★★★★
()
Ответ на: комментарий от anonymous

>Будет совсем хорошо когда ядро Linux будет запускаться поверх LLVM.

Ты про что? В прошлом топике про LLVM говорили - «байткод» LLVM _уже_ привязан к платформе. Т.е. один фиг на каждой платформе нужна стадия компиляции исходник -> байткод|натив. Нак нафига?

yyk ★★★★★
()
Ответ на: комментарий от baka-kun

baka-kun> LGPL разрешает производную работу распространять под более жесткой GPL, но никаких прав на смену лицензии она не передает.

Тяжёлый случай... Пациент, да Вы оказывается халявщик и копираст-проприетарщик в одном флаконе.

Quasar ★★★★★
()
Ответ на: комментарий от maxkit

maxkit> apache финансируется крупными корпорациями, в том числе «ненавидимой» Столманом Microsoft. Как Вы думаете, если бы apache не финансировали, был бы этот продукт продуктом того же качества, что мы имеем сейчас? И прежде, чем начать ссылаться на nginx - пожалуйста посмотрите, какая лицензия там.

Apache не имеет аналогов. И попытки форкнуть его и разрабатывать самостоятельно обречены.
Аналогично X11 - уже X-серверы от Sun и других контор давно загнулись (даже XAppeal успешно сдох, а DesqView/X вообще мертворождённой была).

Quasar ★★★★★
()
Ответ на: комментарий от EvilBlueBeaver

>Мы сейчас не про пиратство говорим если что.

Ты читать умеешь? Русским написано «скачать с офсайта». Или уже скачивание GPLv2 программы стало пиратством?

Аналогично GPLv3 сделали, потому что некоторые умные люди находили способ, как онально ограничить тебя даже в рамках GPL и хотя код они не закрывали, но продуктами их труда пользоваться иначе, чем они тебе разрешили, было нельзя.

Меня, как разработчика, это вообще не должно волновать. А теперь посмотри внимательнее табличку. С либами LGPLv3 вполне себе можно линковать проприетарщину, а вот свою родную GPLv2 only нельзя. Как видишь, пропиетарщики оказались в более выгодном положении, чем свободный программист, который выбрал одну лицензию.

anonymous
()
Ответ на: комментарий от baka-kun

baka-kun> Как бы почти не весь уже.

Насчёт Webkit не скажу точно, но CUPS они не переписывали.

Quasar ★★★★★
()
Ответ на: комментарий от maxkit

maxkit> Они сделали FreeBSD, apache, x11, webkit и очень многие другие продукты.

Ты наркоманище! Во-первых BSD и X11 - проекты изначально академические. Во-вторых Apache - проект уникальный. В третьих Webkit - это KHTML. И вообще он под GPL.

Quasar ★★★★★
()
Ответ на: комментарий от anonymous

> Ты читать умеешь? Русским написано «скачать с офсайта». Или уже скачивание GPLv2 программы стало пиратством?

Если я скачал чью-то программу и установил ее себе, это значит, что я пользуюсь плодами его творчества и признаю это (а открытые лицензии как раз разрешают свободное пользование). А вот если я пришел и присвоил это себе, то это значит, что болт я клал на создателя программы. И если GPL тут хоть как-то защищает автора, то BSD выгоднее как раз тем самым проприетарщикам.

А про пиратство я упомянул в свете того, что мы говорим не о скачивании чео-либо, а присвоение прав на это что-то себе.

Либами LGPLv3 вполне себе можно линковать проприетарщину, а вот свою родную GPLv2 only нельзя. Как видишь, пропиетарщики оказались в более выгодном положении, чем свободный программист, который выбрал одну лицензию.

А теперь мы выясняем кто на самом деле читать не умеет. Там про линковку не написано ни слова. Там написано про «скопировать кусок кода из одной программы и вставить в другую». Линковать LGPL можно с чем угодно. А вот код использовать методом копи-паста можно только с совместимыми лицензиями. И если я возьму код LGPL и вставлю его в свой продукт GPL, то получится, что ограничение на линковку с проприетарщиной, которое автор кода решил снять , я установлю, тем самым нарушив первоначальные условия лицензии.

EvilBlueBeaver
()
Ответ на: комментарий от Quasar

> И вообще он под GPL.

Под LGPL, иначе бы сафари был опенсурсным %)

sv75 ★★★★★
()
Ответ на: комментарий от Ttt

>Если архитектура старой программы признаётся неисправимо плохой.

Не признается. Особенно если она в продакшене и есть прикормленные заказчики. (ПМы перед приездом представителя заказчика проводят инструктаж a)«Что говорить, если спросят» б)«чего ни в коем случае не говорить» в) «в каких случаях делать искренне удивленное лицо и обещать это исправить в новой версии») И в плане реюза - берется то же + сбоку придеолывается какая-то новая «фишка» за отдельные бабки с новой торговой маркой... Подпорки из велосипедов все равно никто не видит.

slackwarrior ★★★★★
()
Ответ на: комментарий от EvilBlueBeaver

>А вот если я пришел и присвоил это себе, то это значит, что болт я клал на создателя программы.

Почитай BSD и больше так не фонтанируй.

И если GPL тут хоть как-то защищает автора, то BSD выгоднее как раз тем самым проприетарщикам.

И как GPL защищает автора? Мне просто интересно. Какие могут быть интересы у автора, выложившего весь свой код в открытый доступ с возможностью модификации/перепродажи и т.п.. Лучше перечисли их.

то BSD выгоднее как раз тем самым проприетарщикам.

Хинт: это будет если только я это возжелаю. Плюс, пропиетарщики будут полностью зависеть от меня.

Линковать LGPL можно с чем угодно.

Прикидываешься тут идиотом? Сходи по ссылке и посмотри с чем можно, а с чем нельзя. И вообще, речь шла про невозможность линковки GPLv2 only с LGPLv3. Это куда хуже, чем проприетарщик, который втихаря поимел 2 килобайта моего быдлокода.

anonymous
()

ОООООООО сколько корма

namezys ★★★★
()
Ответ на: комментарий от anonymous

> И как GPL защищает автора? Мне просто интересно. Какие могут быть интересы у автора, выложившего весь свой код в открытый доступ с возможностью модификации/перепродажи и т.п.. Лучше перечисли их.

Интересы могут быть очень простыми - нежелание, чтобы твоим кодом пользовались нахаляву. Не бесплатно, а именно нахаляву.

Хинт: это будет если только я это возжелаю. Плюс, пропиетарщики будут полностью зависеть от меня.

Каким образом они будут от вас зависеть? Я захотел, взял ваш код, встроил его в свою прогу, закрыл его, сделал с ним,что угодно и продаю. Чем вы меня можете ограничить? Если проект под BSD, то ничем. И я вам ничем не обязан, я просто взял и все, а то, что вы там что-то писали никого не волнует.

Прикидываешься тут идиотом? Сходи по ссылке и посмотри с чем можно, а с чем нельзя. И вообще, речь шла про невозможность линковки GPLv2 only с LGPLv3. Это куда хуже, чем проприетарщик, который втихаря поимел 2 килобайта моего быдлокода.

Еще раз повторяю, связывать свои программы, написанные под любой лицензией, можно с любой либой написанной под LGPL. Единственное ограничение - связывание должно быть динамическим. То есть если у вас есть готовая .so-шка под LGPL, то юзайте ее как вашей душе угодно. А вот если это не .so-шка, а .a-шка, то тут как раз и действуют те самые ограничения.

За сим не вижу смысла кормить вас дальше.

EvilBlueBeaver
()
Ответ на: комментарий от Quasar

> В третьих Webkit - это KHTML.

отпочкавался много лет назад... и большей частью переписан яблоками

namezys ★★★★
()
Ответ на: комментарий от EvilBlueBeaver

> Не бесплатно, а именно нахаляву.

А как им пользуются сейчас под GPL?

Если проект под BSD, то ничем.

Только ценой регулярного слияния форка и основного дерева. Обычно это не выгодно. Так что все изменения, которые делают они, они делают и в твою ветка. А то, что они смогли встроить в свою закрытую программу - это даже хорошо. Это расширяет пользователей твоего кода.

namezys ★★★★
()
Ответ на: комментарий от ott

Делись @ Дополняй

т.е. выпуская софт под BSD ты становишься бесполезным? :-)

Т.е. выпуская ПО под BSD я не стимулирую проприетарщиков продолжать делиться и дополнять.

Camel ★★★★★
()
Ответ на: комментарий от sv75

> Как я понимаю, Webkit открыли как раз в силу лицензии LGPL на KHMTL и только поэтому.

Darwin, GrandCentral и еще куча всего тоже из-за первоначальной лицензии? При условии, что последний вообще вырос в недрах яблока. Они же умные, они не закрывают все

namezys ★★★★
()
Ответ на: комментарий от Quasar

> А вот Darwin они сейчас в каждой версии закрывают, добавляя свои компоненты и называя полученную ОС Mac OS X.

Достаточно много новых компонентов имеют BSD лицензию

Или, к примеру, CUPS - просто форкнут, и форк будет популярнее, а Apple пойдёт в жопу.

Куда извините? Он на apple будет работать? Будет. А когда бы там появилось полноценное управление цветопространством, если не apple? Ибо программистам это не надо, а яблокам обязательно

namezys ★★★★
()
Ответ на: комментарий от EvilBlueBeaver

>Интересы могут быть очень простыми - нежелание, чтобы твоим кодом пользовались нахаляву. Не бесплатно, а именно нахаляву.

Объясни мне тупому, чем «бесплатно» отличается от «нахаляву».

Я захотел, взял ваш код, встроил его в свою прогу, закрыл его, сделал с ним,что угодно и продаю.

Ну и какие проблемы? Я это разрешил. GPL тоже разрешает продавать и использовать проги для любых коммерческих целей. Да, и ты так и не читал BSD.

Еще раз повторяю, связывать свои программы, написанные под любой лицензией, можно с любой либой написанной под LGPL.

Кто табличку видел? Посмотри ещё раз. А то уже честно уже надоел твой воинствующий ламеризм. Там даже для тупых написано I want to release a project under: GPLv2 only -> I want to use a library under GPLv3 и LGPLv3 стоит No.   

anonymous
()
Ответ на: комментарий от maxkit

>Не нужно переворачивать факты. Во-первых, Вы не покупаете в магазине, а Вам дают даром.

Качеством дарёного тоже нужно поинтересоваться, крыс вон тоже конфетами и пряниками на халяву кормят.

Вам дают вместе с исходниками

В ГПЛ да, с ВСДЛ не обязательно.

Блобами, наверное, не сильно боитесь отравиться, а то, из чего только _могут_ сделать блоб - боитесь. Это извращённая логика.

Разница в маштабах и возможностях. А во вторых, когда-нибудь навороченные хелловорлды под лицензией БСДЛ научится строчить и робот Вася и всем раздавать, в принудительном порядке. А на просьбу показать исходники пошлёт всех за машинным маслом, бо лицензия это позволяет.

Napilnik ★★★★★
()
Ответ на: комментарий от namezys

> А как им пользуются сейчас под GPL?

Если я взял прогу под открытой лицензией и пользуюсь ей, то это лишь использование и ни до кому дела нет. Если я ее дописал, то под GPL я не имею права скрывать как то, что я взял из исходной проги, так и то, что я дописал. То есть это есть разумная плата за плод чужого труда.

В случае BSD я могу взять исходники, дописать их и, не сказав откуда они и кому принадлежат первоначальные права, просто нагло их скоммуниздить.

Только ценой регулярного слияния форка и основного дерева. Обычно это не выгодно. Так что все изменения, которые делают они, они делают и в твою ветка. А то, что они смогли встроить в свою закрытую программу - это даже хорошо. Это расширяет пользователей твоего кода.

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

Аналогично если кто-то возьмет ваш под под BSD, встроит его в свое приложение, а тот окажется паршивым, то это может бросить тень и на ваш продукт.

Все различие в том, что выбрав BSD пользователь официально отказывается от всех прав на данный продукт и последующих претензий к использованию результатов его труда.

EvilBlueBeaver
()
Ответ на: комментарий от baka-kun

>Не понимаю этой жабы (вернее, наверное, «собаки»): «А-а-а, они закроют мой код и заработают на нём деньги там, где я, лох, не смог. Так хрен им».

Вот жеж в точку! Я тоже никак не пойму...

yurkis
()
Ответ на: комментарий от namezys

Рынок не помогает.

Это делает за тебя рынок

Не всегда. FreeBSD R.I.P., Net*, Open*, все прочие тоже не главные тренды сезона.

Camel ★★★★★
()
Ответ на: комментарий от EvilBlueBeaver

>В случае BSD я могу взять исходники, дописать их и, не сказав откуда они и кому принадлежат первоначальные права, просто нагло их скоммуниздить.

4.2. Права на авторство не отчуждаемы. Трехпунктовая BSD вобще обязывает указывать авторов в About продукта и/или в документации.

yurkis
()
Ответ на: комментарий от anonimusnax

Здрасьте, давно уже есть и проверки диапазона массивов и многое другое.

Napilnik ★★★★★
()
Ответ на: комментарий от namezys

> Выбрав GPL ты запрещаешь использовать свой продукт в не GPL проектах.

Спасибо, кэп. Я в курсе :)

Но ничто не запрещает вынести функции в отдельную библиотеку под LGPL и использовать эти библиотеку откуда угодно и как угодно. Но саму библиотеку никто втихаря модифицировать не сможет.

EvilBlueBeaver
()
Ответ на: комментарий от namezys

>Выбрав GPL ты запрещаешь использовать свой продукт в не GPL проектах

И даже в некоторых под GPL.

anonymous
()
Ответ на: комментарий от EvilBlueBeaver

>Но ничто не запрещает вынести функции в отдельную библиотеку под LGPL и использовать эти библиотеку откуда угодно и как угодно.

Кроме GPLv2 only и LGPLv2.1 only

anonymous
()
Ответ на: комментарий от Gorthauer

>Так ведь хочется заюзать анализатор кода от компилятора в IDE для генерации варнингов, подсветки синтаксиса, статического анализа кода.

А в чем проблемы? Конечно придется немного напильником пройтись но исходники все на C и вполне себе неплохо организованы. Тем более что не весь же gcc тащить а только его g++ часть из которой нужен лишь cp.

A-234 ★★★★★
()
Ответ на: комментарий от yurkis

> 4.2. Права на авторство не отчуждаемы. Трехпунктовая BSD вобще обязывает указывать авторов в About продукта и/или в документации.

Это обязывает делать 4-пунтковая олдовая лицензия

Цитата: 3. All advertising materials mentioning features or use of this software must display the following acknowledgement:

This product includes software developed by the <organization>.

Если я неправ - поправьте меня.

EvilBlueBeaver
()
Ответ на: комментарий от anonymous

> Кроме GPLv2 only и LGPLv2.1 only

Батенька, да вы идиот.

* sys-libs/glibc

Latest version available: 2.12.1-r1

Latest version installed: 2.12.1-r1

Size of downloaded files: 15,387 kB

Homepage: http://www.gnu.org/software/libc/libc.html

Description: GNU libc6 (also called glibc2) C library

License: LGPL-2

То есть существование программ под GPL по вашему невозможно в принципе, поскольку всем (ну не всем, но большинству) им придется юзать glibc?

EvilBlueBeaver
()
Ответ на: Рынок не помогает. от Camel

> FreeBSD R.I.P., Net*, Open*, все прочие тоже не главные тренды сезона.

Да ладно. Не RIP. Как минимум область для академических инструментов

namezys ★★★★
()
Ответ на: комментарий от A-234

> А в чем проблемы?

IDE хочется закрытую иметь.

Тем более что не весь же gcc тащить а только его g++ часть из которой нужен лишь cp.

у gcc нет статического анализа. а obj-c достаточно динамичен

namezys ★★★★
()
Ответ на: комментарий от namezys

> GPL не перелецензиурется в LGPL

Я могу изначально выделить либу и приложение под разными лицензиями. В любом случае нормальный разработчик так и сделает.

EvilBlueBeaver
()
Ответ на: комментарий от EvilBlueBeaver

> Кроме GPLv2 only и LGPLv2.1 only

Батенька, да вы идиот.

Это вы так о себе? самокритично.. glibc имеет LGPL v 2.1 or later - а не LGPL v2.1 only.. учим дальше матчасть.

anonymous
()
Ответ на: комментарий от KblCb

>Подумаешь бином ньютона. Вот когда он научится поддерживать стандарт C++, хотя бы предыдущий (чего кстати gcc не умеет), можно будет выкидывать gcc.

Вот когда он научится поддерживать стандарт C++, хотя бы предыдущий (чего кстати <your favorite compiler> не умеет)...

Waterlaz ★★★★★
()
Ответ на: комментарий от KblCb

> Вот когда он научится поддерживать стандарт C++, хотя бы предыдущий (чего кстати gcc не умеет), можно будет выкидывать gcc.

опять гелий протекает? заморозить обратно

namezys ★★★★
()
Ответ на: комментарий от namezys

>При этом есть интересная особенность. компания, создатель проекта, может в любой момент отпочкавать закрытую ветку, если надо, но основанную на октрытой. А если это будет GPL, то все будет переписано заново.

Да ну? А как же MySQL Enterprise?

rusty_angel
()
Ответ на: комментарий от yurkis

>4.2. Права на авторство не отчуждаемы. Трехпунктовая BSD вобще обязывает указывать авторов в About продукта и/или в документации.

Напишут твоё имя в титрах, поднимут ЧСВ, а будет ли какой-то другой профит, зависит от лотереи и целесообразности прикарманить код.

Napilnik ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.