The OpenNET Project / Index page

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



Вариант для распечатки  
Пред. тема | След. тема 
Форум Разговоры, обсуждение новостей
Режим отображения отдельной подветви беседы [ Отслеживать ]

Оглавление

Стабильный выпуск HardenedBSD 12, opennews (ok), 19-Дек-18, (0) [смотреть все]

Сообщения [Сортировка по времени | RSS]


1. "Стабильный выпуск HardenedBSD 12"  +/
Сообщение от Ivan_83 (ok), 19-Дек-18, 00:37 
Часть этого и во фряшечке легко включается.
Ответить | Правка | Наверх | Cообщить модератору

5. "Стабильный выпуск HardenedBSD 12"  +/
Сообщение от Аноним (5), 19-Дек-18, 03:02 
>Часть этого и во фряшечке легко включается.

Как со фряхе собирать порты с LTO? Ибо официальный метод не работает: https://wiki.freebsd.org/LinkTimeOptimisations

configure:4075: /usr/local/bin/clang70 -O2 -pipe -O2 -pipe -march=native -mtune=native -flto  -DLIBICONV_PLUG -fstack-protector -fno-strict-aliasing  -I/usr/local/include -DLIBICONV_PLUG  -fuse-ld=gold -Wl,--plugin /usr/local/llvm70/lib/LLVMgold.so -L/usr/local/lib -fstack-protector  conftest.c  >&5
Assertion failed: (PassInf && "Expected all immutable passes to be initialized"), function addImmutablePass, file /tmpfs/usr/ports/devel/llvm70/work/llvm-7.0.1.src/lib/IR/LegacyPassManager.cpp, line 812.
clang-7: error: unable to execute command: Abort trap (core dumped)

Ответить | Правка | Наверх | Cообщить модератору

28. "Стабильный выпуск HardenedBSD 12"  +/
Сообщение от Аноним (28), 19-Дек-18, 16:15 
Попробуй в /etc/make.conf:

---
LLVM_VERSION?=70
LLVM_LTO?=true

.if !empty(LLVM_VERSION)
  CC=/usr/local/llvm${LLVM_VERSION}/bin/clang
  CXX=/usr/local/llvm${LLVM_VERSION}/bin/clang++
  CPP=/usr/local/llvm${LLVM_VERSION}/bin/clang-cpp
  LDFLAGS+=-Wl,-rpath=/usr/local/llvm${LLVM_VERSION}/lib
  CONFIGURE_ENV+=LLVM_CONFIG=/usr/local/llvm${LLVM_VERSION}/bin/llvm-config
. if !empty(LLVM_LTO)
    CFLAGS.clang+=-flto=full
    LD=/usr/local/llvm${LLVM_VERSION}/bin/ld.lld
    LDFLAGS+=-fuse-ld=gold -Wl,--plugin /usr/local/llvm${LLVM_VERSION}/lib/LLVMgold.so
. endif
.endif
---

ну, до ума доведёшь напильником, т.к. мир я этим не собирал - только net/svnup...

$ uname -srm
FreeBSD 12.0-RELEASE amd64

Ответить | Правка | Наверх | Cообщить модератору

34. "Стабильный выпуск HardenedBSD 12"  +/
Сообщение от Аноним (5), 19-Дек-18, 19:59 
>ну, до ума доведёшь напильником

Да я бы с радостью. Только сборка почти каждого пакета вываливается с ошибкой:

Assertion failed: (PassInf && "Expected all immutable passes to be initialized"), function addImmutablePass, file /usr/ports/devel/llvm70/work/llvm-7.0.1.src/lib/IR/LegacyPassManager.cpp, line 812.
clang-7: error: unable to execute command: Abort trap (core dumped)
clang-7: error: linker command failed due to signal (use -v to see invocation)

Если юзать gcc+lto то собирается почти все. Так что можно утверждать, что clang+lto поломан и никто не собирается его чинить.

Ответить | Правка | Наверх | Cообщить модератору

40. "Стабильный выпуск HardenedBSD 12"  +/
Сообщение от Аноним (28), 20-Дек-18, 17:10 
> Да я бы с радостью. Только сборка почти каждого пакета вываливается с ошибкой:

не каждого.
я кое-что уже проверил.
net/svnup, databases/sqlite3, ports-mgmt/pkg, editors/libreoffice, mail/thunderbird, www/firefox
собираются и есть выигрыш в размере результирующего бинаря.

ты фигачишь -flto=full в CFLAGS, а в мурзилках - в CFLAGS.clang

p.s. и, да - правильно
LDFLAGS+=-fuse-ld=gold -Wl--plugin=/usr/local/llvm${LLVM_VERSION}/lib/LLVMgold.so

Ответить | Правка | Наверх | Cообщить модератору

43. "Стабильный выпуск HardenedBSD 12"  +/
Сообщение от Аноним (5), 21-Дек-18, 06:05 
>ты фигачишь -flto=full в CFLAGS, а в мурзилках - в CFLAGS.clang

Так если зафигачить в CFLAGS.clang то оно не будет юзаться. Посмотри листинг выполняемых команд при компляции.

>вот и devel/cmake подтянулся

А теперь возьми и вместо:
CFLAGS.clang+=-flto=full
поставь:
CFLAGS.clang+=-O2
...и увидишь, что размер бинарника не изменится ни на байт.

Вот пример:
с CFLAGS.clang+=-O2:

# ls -l `pkg info -l cmake | grep \/bin\/ccmake`
-rwxr-xr-x  1 root  wheel  4265752 Dec 21 04:35 /usr/local/bin/ccmake
# md5 /usr/local/bin/ccmake
MD5 (/usr/local/bin/ccmake) = 41eeae1983e4cd6fb3827d8598651727

с CFLAGS.clang+=-flto=full:

# ls -l `pkg info -l cmake | grep \/bin\/ccmake`
-rwxr-xr-x  1 root  wheel  4265752 Dec 21 04:41 /usr/local/bin/ccmake
kp ports/devel/llvm70 # md5 /usr/local/bin/ccmake
MD5 (/usr/local/bin/ccmake) = 41eeae1983e4cd6fb3827d8598651727

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

А если забирать -flto в CFLAGS, то видно как LTO колбасит при линковке дольше обычного, md5 и размер результирующего бинарника меняется.

----------------------------------------------------------

Вот тебе пример компиляции uWSGI:

Штатный компилятор:
-r-xr-xr-x  1 root  wheel  871688 Dec 21 04:50 /usr/local/bin/uwsgi
MD5 (/usr/local/bin/uwsgi) = 1f9ebc989affbded937d26720aff9b5f

clang70 из портов. В /etc/make.conf добавленно все что ты писал выше, только закомментированны CFLAGS.clang и LDFLAGS:

-r-xr-xr-x  1 root  wheel  879928 Dec 21 04:51 /usr/local/bin/uwsgi
MD5 (/usr/local/bin/uwsgi) = a3fa26c2ad12591aa99d19ac93c8a16e

Раскомментированы CFLAGS.clang и LDFLAGS:

-r-xr-xr-x  1 root  wheel  874928 Dec 21 04:51 /usr/local/bin/uwsgi
MD5 (/usr/local/bin/uwsgi) = cfe5af237673e679341dcbbed04224ef

А теперь добавляем в CFLAGS -flto=full:

-r-xr-xr-x  1 root  wheel  952768 Dec 21 04:52 /usr/local/bin/uwsgi
MD5 (/usr/local/bin/uwsgi) = b9d6776db2c70695bc7267c46689b4d4

А вот если собрать с -flto=thin:

-r-xr-xr-x  1 root  wheel  965040 Dec 21 05:00 /usr/local/bin/uwsgi
MD5 (/usr/local/bin/uwsgi) = ba91b7c8470fd87c7a048518fe5110ee

...и если еще добавить в LDFLAGS: ,-plugin-opt,jobs=24 то линкует значительно быстрее чем -flto=full

Ответить | Правка | Наверх | Cообщить модератору

41. "Стабильный выпуск HardenedBSD 12"  +/
Сообщение от Аноним (28), 20-Дек-18, 17:17 
вот и devel/cmake подтянулся:

штатным:
$ ls -l `pkg info -l cmake | fgrep local/bin`
-rwxr-xr-x  1 root  wheel  4399952 12 дек.  20:17 /usr/local/bin/ccmake
-rwxr-xr-x  1 root  wheel  4760408 12 дек.  20:17 /usr/local/bin/cmake
-rwxr-xr-x  1 root  wheel  4912056 12 дек.  20:17 /usr/local/bin/cpack
-rwxr-xr-x  1 root  wheel  5735560 12 дек.  20:17 /usr/local/bin/ctest

llvm70+lto:
$ ls -l `pkg info -l cmake | fgrep local/bin`
-rwxr-xr-x  1 root  wheel  4184272 20 дек.  16:11 /usr/local/bin/ccmake
-rwxr-xr-x  1 root  wheel  4527688 20 дек.  16:11 /usr/local/bin/cmake
-rwxr-xr-x  1 root  wheel  4660184 20 дек.  16:11 /usr/local/bin/cpack
-rwxr-xr-x  1 root  wheel  5446984 20 дек.  16:11 /usr/local/bin/ctest

$ make -V CFLAGS
-O2 -fno-strict-aliasing -fmerge-all-constants -pipe  -fstack-protector -isystem /usr/local/include

$ make -V CFLAGS.clang
-flto=full

$ make -V LDFLAGS
-Wl,-rpath=/usr/local/llvm70/lib -fuse-ld=gold -Wl,--plugin=/usr/local/llvm70/lib/LLVMgold.so -fstack-protector

Ответить | Правка | К родителю #34 | Наверх | Cообщить модератору

24. "Стабильный выпуск HardenedBSD 12"  +/
Сообщение от псевдонимус (?), 19-Дек-18, 14:43 
Ты, как я понял, контрибутишь в неё. Что говорят про пересмотр сроков поддержки? К чему готовиться?
Ответить | Правка | К родителю #1 | Наверх | Cообщить модератору

36. "Стабильный выпуск HardenedBSD 12"  +/
Сообщение от Ivan_83 (ok), 20-Дек-18, 02:23 
В основном в порты.
Я редко читаю рассылку и есть закрытые рассылки куда у меня доступа нет, так что я вообще не в теме.
В целом я же говорил на этот счёт тут, что разработчиков мало и многие вообще сидят на карренте, те он уже 13, а 12 это то куда им приходится бэкпортировать стабилизировавшиеся фичи.
А 11 это окаменевшая история куда что либо портировать ещё более затратно.

Нашёл багу с поведением shutdown(), накорябал тулсу которая собиралась и на BSD и на линухах и показывала какие последовательности socket() accept() shutdown() close() и чего то ещё как отрабатывают на разных BSD и линухе.
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=227259
Это породило два совершенно разных патча для 11 и 12 (куррент на тот момент).

ИМХО, помимо скромных ресурсов ещё есть часто искреннее не понимание зачем нужно сидеть на таком всяком старье и почему разрабы должны тащить туда апдейты когда народу тупо лень обновляться.

Разговоры о починке чего либо часто начинаются с "а на карренте это воспроизводится?", хотя ты сидишь на относительно свежем стабле (даже не релизе).

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

Для себя я не вижу никакой проблемы в сидении на стабле или хотя бы на релизе, ибо мажорные обновления всё равно редки и только при них требуется пересобирать весь софт.

Ответить | Правка | Наверх | Cообщить модератору

37. "Стабильный выпуск HardenedBSD 12"  +/
Сообщение от псевдонимус (?), 20-Дек-18, 11:40 
>часто искреннее не понимание зачем нужно сидеть на таком всяком старье

Вот это "искреннее непонимание" и есть самое грустное.

>ветка которая доживает своё с минимальным обслуживанием вообще.

Это ещё печальнее.

>Для себя я не вижу никакой проблемы в сидении на стабле

Ну да, ты ведь разработчик, то, что для многих это геморрой, тебя мало интересует ("Почему бы не обновиться?" А почему собственно кому-то впёрло обновляться?
Так и останутся от пользователей фри несколько сотен разработчиков и нетфликс с соней(


Даже то, что когда-то было дебианом имеет поддержку в 5 лет, слака тоже. У слаки видимо прорва ресурсов.

Ответить | Правка | Наверх | Cообщить модератору

39. "Стабильный выпуск HardenedBSD 12"  +/
Сообщение от Аноним (39), 20-Дек-18, 12:34 
> Даже то, что когда-то было дебианом имеет поддержку в 5 лет, слака тоже. У слаки видимо прорва ресурсов.

Давай не будем лукавить, все LTS линукс-ядра поддерживают десятки разрабов на профессиональной основе. А зафиксировать версии ПО в дистрах слаки и деба - много ума не надо, в этом и профит, кстати.

Ответить | Правка | Наверх | Cообщить модератору

42. "Стабильный выпуск HardenedBSD 12"  +/
Сообщение от Ivan_83 (ok), 21-Дек-18, 04:24 
Думаю что все адепты длительного суппорта всяких старых версий получают за это вполне конкретные бабки.
Здесь же открытый проект, каждый пилит что ему интересно и надо, естессно любителей некрофилии нет.
Есть немного разработчиков нанятых на деньги фонда, но они в основном пилят новые фичи, чинят баги и вот собственно потом бэкпортируют или делают отдельный патч для ещё поддерживаемых веток.
Если занять их только поддержкой старого барахла тогда прогресс ещё сильнее замедлится.

Хотите всякие LTS по 5 лет - тащите деньги, думаю по самым скромным прикидкам нужно 0,5-1м зелени ежегодно только на это, чтобы хватило на 5-10 фулл тайм разрабов.

Ответить | Правка | К родителю #37 | Наверх | Cообщить модератору

44. "Стабильный выпуск HardenedBSD 12"  +1 +/
Сообщение от КГБ СССР (?), 21-Дек-18, 08:05 
> Хотите всякие LTS по 5 лет - тащите деньги, думаю по самым
> скромным прикидкам нужно 0,5-1м зелени ежегодно только на это, чтобы хватило
> на 5-10 фулл тайм разрабов.

Предлагаю запомнить этот твит и через годик посмотреть, сколько добавилось денег и юзеров. А затем ещё через год.

Мой прогноз таков, что на троллинг-релизы (с телегой багов позади, которые никто чинить не собирается) не будет никаких денег вообще.

Ответить | Правка | Наверх | Cообщить модератору

46. "Стабильный выпуск HardenedBSD 12"  +/
Сообщение от псевдонимус (?), 21-Дек-18, 09:11 
>[оверквотинг удален]
> вполне конкретные бабки.
> Здесь же открытый проект, каждый пилит что ему интересно и надо, естессно
> любителей некрофилии нет.
> Есть немного разработчиков нанятых на деньги фонда, но они в основном пилят
> новые фичи, чинят баги и вот собственно потом бэкпортируют или делают
> отдельный патч для ещё поддерживаемых веток.
> Если занять их только поддержкой старого барахла тогда прогресс ещё сильнее замедлится.
> Хотите всякие LTS по 5 лет - тащите деньги, думаю по самым
> скромным прикидкам нужно 0,5-1м зелени ежегодно только на это, чтобы хватило
> на 5-10 фулл тайм разрабов.

А, "никто никаму ничего не должен!!!". Ну останетесь без пользователей. Превратитесь в аналог федорки, вместо рэдхэт  работая на нетфликс, эплю и соню, кукарекая о свободе.


> любителей некрофилии нет.

Зато любителей копрофилии хоть отбавляй, им подавай свеженькое оно.

Повторяю для тех, кто за танковой бронёй: троллинг-релиз уместен только для энтузиастов, либо больших компаний, способных стабилизировать натроленное.

И 5 лет это небольшой срок.

Ответить | Правка | К родителю #42 | Наверх | Cообщить модератору

47. "Стабильный выпуск HardenedBSD 12"  –1 +/
Сообщение от КГБ СССР (?), 21-Дек-18, 09:37 
> И 5 лет это небольшой срок.

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

Ответить | Правка | Наверх | Cообщить модератору

49. "Стабильный выпуск HardenedBSD 12"  +/
Сообщение от псевдонимус (?), 21-Дек-18, 10:03 
Я и сам конца 80-х выпуска. Просто у людей, даже людей в летах, стала на удивление короткая память, это касается всего. Ну и эгоизм зашкаливает.
Ответить | Правка | Наверх | Cообщить модератору

50. "Стабильный выпуск HardenedBSD 12"  +/
Сообщение от КГБ СССР (?), 21-Дек-18, 11:00 
Субъективное восприятие течения времени зависит от возраста и от общей внутренней активности процессов организма. Мы постепенно замедляемся и приближаемся к тому нехорошему гомеостатическому состоянию, которое заканчивается смертью. :) После сорока и пресловутого КСВ внутреннее переживание течения времени страшно «ускоряется» и самое это время «сжимается»: год — вообще ни о чём, пять лет? — только вчера же вот было. А лет в 20—25 это ого-го как много! И когда вроде уже многое знаешь и умеешь, и так много хочется ещё узнать и суметь, а уже некогда, по сути, уже мало что успеешь. Это единственный существенный (помимо ухудшения здоровья) недостаток взросления, на мой взгляд. Впрочем, к чему бухтеть? Радоваться надо каждому новому дню. :-)
Ответить | Правка | Наверх | Cообщить модератору

Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




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

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