The OpenNET Project / Index page

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



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

Оглавление

В рамках проекта CopperSpice развивается форк Qt 4.8, opennews (ok), 10-Июн-15, (0) [смотреть все]

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


14. "В рамках проекта CopperSpice развивается форк Qt 4.8"  +4 +/
Сообщение от Аноним (-), 10-Июн-15, 01:32 
>Для сборки библиотек применяется классический GNU Autotools.

Совсем поехавшие?

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

63. "В рамках проекта CopperSpice развивается форк Qt 4.8"  +/
Сообщение от Аноним (-), 10-Июн-15, 13:28 
> Совсем поехавшие?

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

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

64. "В рамках проекта CopperSpice развивается форк Qt 4.8"  +2 +/
Сообщение от 0xd34df00d (??), 10-Июн-15, 13:35 
> Как раз самый нормальный тул.

Проверять в 2015-м году наличие какой-нибудь функции, которой не было в одном из видов юникса восьмедисятых — это очень разумно, нужно и полезно!

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

> С точки зрения сборщиков и майнтайнеров оно
> наиболее беспроблемное.

Далеко не все генту-мейнтейнеры с вами согласятся.

> Всякие cmake - глюкавят через раз и даже сообщение
> о том что не так чаще всего отсутствует или неинформативно

Например?

> сборка заваливается на середине компиляции.

Если какой-нибудь Find-модуль не написан или не использован, да. Ну так никто не мешает и в автотулзах не заниматься поиском библиотеки, а просто взять и сделать #include, понадеявшись, что она есть.

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

66. "В рамках проекта CopperSpice развивается форк Qt 4.8"  +1 +/
Сообщение от шлёпнога (?), 10-Июн-15, 14:29 
>> Как раз самый нормальный тул.
> Проверять в 2015-м году наличие какой-нибудь функции, которой не было в одном
> из видов юникса восьмедисятых — это очень разумно, нужно и полезно!
> Иногда ./configure дольше работает, чем сама сборка времени занимает. И не параллелится,
> насколько я знаю, да.
>> С точки зрения сборщиков и майнтайнеров оно
>> наиболее беспроблемное.
> Далеко не все генту-мейнтейнеры с вами согласятся.

Дедфуд, таки для  всяких извращений ( и не извращений ) автотулзы с точки зрения манатайнера полезнее, чем весь остальной шлак вместе взятый, хотя бы тем, что  если аффтар
проги - школоло, то он не сможет конкретно накосячить в конфигуре. Так как там всего 2 состояния - ниосилили и сделали нормально.
2-я прочина - эстетическая: триплет в тулзах можно недописать, но ревертнуть YES==NO никак, а в этих ваших цмаках так делает каждый 1-й, не считая каждого 2-го. Могу ткнуть в любой произвольный проект на цмаке  ;)

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

77. "В рамках проекта CopperSpice развивается форк Qt 4.8"  +/
Сообщение от Crazy Alex (ok), 10-Июн-15, 15:29 
Не знаю, как насчёт маинтайнеров, но как пользователь генты я в гробу cmake видел. С autotools, как минимум, сразу видно, что упало - хоть при конфигурировании, хоть при сборке, а вот понять в красивеньком выводе, что не понравилось cmake - это суметь надо.
Ответить | Правка | К родителю #64 | Наверх | Cообщить модератору

79. "В рамках проекта CopperSpice развивается форк Qt 4.8"  +/
Сообщение от 0xd34df00d (??), 10-Июн-15, 15:31 
> Не знаю, как насчёт маинтайнеров, но как пользователь генты я в гробу
> cmake видел. С autotools, как минимум, сразу видно, что упало -
> хоть при конфигурировании, хоть при сборке, а вот понять в красивеньком
> выводе, что не понравилось cmake - это суметь надо.

Можно хоть пример такого неинформативного сообщения? Аж самому интересно как автору софтины со сборкой через cmake, а исходный аноним вон не ответил.

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

91. "В рамках проекта CopperSpice развивается форк Qt 4.8"  +/
Сообщение от Crazy Alex (ok), 10-Июн-15, 17:10 
Как найдётся примерчик при очередном апдейте - куда кидать? Я ж их не коллекционирую.
Ответить | Правка | Наверх | Cообщить модератору

92. "В рамках проекта CopperSpice развивается форк Qt 4.8"  –1 +/
Сообщение от 0xd34df00d (??), 10-Июн-15, 17:16 
> Как найдётся примерчик при очередном апдейте - куда кидать? Я ж их
> не коллекционирую.

На гентушную багзиллу.

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

95. "В рамках проекта CopperSpice развивается форк Qt 4.8"  +/
Сообщение от Crazy Alex (ok), 10-Июн-15, 18:24 
Не катит - у меня там хоршая смесь размаскированных пакетов, самопальных правленных ебилдов и так далее. Ладно, тебя в сети найти - не проблема.
Ответить | Правка | Наверх | Cообщить модератору

94. "В рамках проекта CopperSpice развивается форк Qt 4.8"  –1 +/
Сообщение от клоун (?), 10-Июн-15, 17:44 
Запустил компиляцию Линукс = возомнил себя крутым прогером, работающим с БОЛЬШИМИ проектами.

Собрал два раз - это уже опыт.

Собрал три раза - это уже стаж. Пора учить прогеров жизни.

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

96. "В рамках проекта CopperSpice развивается форк Qt 4.8"  +1 +/
Сообщение от Аноним (-), 10-Июн-15, 18:47 
А ты даже компиляцию Винды запустить не сможешь ;)
Ответить | Правка | Наверх | Cообщить модератору

97. "В рамках проекта CopperSpice развивается форк Qt 4.8"  –3 +/
Сообщение от клоун (?), 10-Июн-15, 19:11 
Решать проблему, которую сам себе создал...
Ответить | Правка | Наверх | Cообщить модератору

82. "В рамках проекта CopperSpice развивается форк Qt 4.8"  +2 +/
Сообщение от Аноним (-), 10-Июн-15, 15:46 
> Проверять в 2015-м году наличие какой-нибудь функции, которой не было в одном
> из видов юникса восьмедисятых — это очень разумно, нужно и полезно!

Зато у некрофагов с этим древним юниксом (извращенцев хватает) - оно запустится. И может их послать в пешее эротическое, рассказав какое гэ их система. И они будут тихонько чинить свой крап под соответствие актуальному состянию дел, или пойдут лесом. И это лучше чем если эти некрофаги припрутся к автору программы и будут канифолить мозг. А с каким-нибудь cmake обычно получается так что детектирование всего и вся вроде бы проходит успешно, все ЗБС, но на 69% компиляции, через 5 минут прогрева проца, когда юзерь уже пускает слюни на почти готовый бинраь, все вдруг ВНЕЗАПНО заваливается, наконец. А вот в этом месте толпа народа прется к авторам программы и злостно греет мозг.

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

> Иногда ./configure дольше работает, чем сама сборка времени занимает. И не
> параллелится, насколько я знаю, да.

Но запускается далеко не на каждую сборку (в плане проблемности для разработчика). И по минмуму взлетает на всем где есть позиксный шелл, даже в маздае (с msys или cygwin). И по крайней мере по его отлупу обычно можно понять кто виноват и что делать.

И да, когда компилер 5 минут впахивал для того чтобы на 69% вывалилась наконец не сильно внятная без вчитывания ошибка сборки, суть которой сводится к тому что нужной либы не оказалось - это еще хуже, имхо.

> Далеко не все генту-мейнтейнеры с вами согласятся.

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

> Например?

Да хз, какой проект ни ткни, либы детектируются через пень колоду. Я даже затрудняюсь кого-то конкретного выделить - с этим не ахти было вообще у всех. Ну вон vcmi в свое время никак не мог с ffmpeg совладать. Сообщал что все ЗБС, но сборка потом падала где-то на середине.

А если уж мы про многопоточность - make file от cmake выводят в консоль при 8 потоках полное месиво вместо красивого прогресса. А еще там часто бывают race conditions, когда в 1-поточном режиме сборка проходит всегда, а если в 8 потоков фигарить - сборка отлетает с дурной ошибкой без особых причин. И прокатывает раза со второго-третьего. Не совсем понимаю как народ добивается таких красивых гонок. Но если нечто билдуется cmake, оно при многопоточной сборке нередко и ВНЕЗАПНО заваливается в середине сборки, а вывод на консоль при этом отражается лурковским "кровь, кишки, распи...сило".

> не мешает и в автотулзах не заниматься поиском библиотеки, а просто
> взять и сделать #include, понадеявшись, что она есть.

Теоретически все вроде бы так. Практически - толи в автотулсах это проще делать, толи еще какие-то факторы. Но факт в том что при сборке программы с автотулсами ВНЕЗАПНО валятся гораздо реже. А когда autotools посылают курить бамбук - обычно он делает это ДО начала сборки и по крайней мере обычно понятно почему. А в случае cmake часто оказывается что в консоли просто месиво, попытки рисовать fancy прогресс только нагибают диагностику, а выглядит это как трэш даже если сборка прошла успешно. Потому что билдовать в 1 поток на 8-ядернике мне как-то не айс, а когда оно в 8 потоков рисует на консоль прогресс без какой либо синхронизации - понятно что получается.

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

86. "В рамках проекта CopperSpice развивается форк Qt 4.8"  –1 +/
Сообщение от 0xd34df00d (??), 10-Июн-15, 15:56 
> Зато у некрофагов с этим древним юниксом (извращенцев хватает) - оно запустится.
> И может их послать в пешее эротическое, рассказав какое гэ их
> система. И они будут тихонько чинить свой крап под соответствие актуальному
> состянию дел, или пойдут лесом. И это лучше чем если эти
> некрофаги припрутся к автору программы и будут канифолить мозг.

Интересно было бы замерить, сколько ресурсов CPU разработчиков было потрачено зря на общение с некрофилами, а сколько — на ожидание завершения всех этих проверок. Что-то мне подсказывает, что второго таки больше.

> А с
> каким-нибудь cmake обычно получается так что детектирование всего и вся вроде
> бы проходит успешно, все ЗБС, но на 69% компиляции, через 5
> минут прогрева проца, когда юзерь уже пускает слюни на почти готовый
> бинраь, все вдруг ВНЕЗАПНО заваливается, наконец.

Тоже мне проблема, доставил либу и дальше себе make, ровно с того же места и продолжит. Если либа не ставится куда-нибудь в странное место, конечно же, что потребует дописывания всяких -I, -L и -l во флаги компилятора и линкера, из-за чего придётся пересобирать уже собранное.

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

Думаю, таки не толпа, а полтора мейнтейнера, которым первыми посчастливилось с этим столкнуться.

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

Позвольте полюбопытствовать из общего интереса: а вы их зачем сами столько собираете?

> Но запускается далеко не на каждую сборку (в плане проблемности для разработчика).

Кстати, к слову о каждой сборке, просто из интереса: автотулз может рассчитывать зависимости между файлами в проекте сам, вызывать moc сам когда надо и для чего надо (как AUTOMOC в cmake), пересобирать только нужные .cpp, когда поменялся хедер?

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

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

> Да хз, какой проект ни ткни, либы детектируются через пень колоду. Я
> даже затрудняюсь кого-то конкретного выделить - с этим не ахти было
> вообще у всех. Ну вон vcmi в свое время никак не
> мог с ffmpeg совладать. Сообщал что все ЗБС, но сборка потом
> падала где-то на середине.

Так либы детектируются не так, или cmake неправильно ругается, когда отсутствие сдетектировалось таки как надо?

> А если уж мы про многопоточность - make file от cmake выводят
> в консоль при 8 потоках полное месиво вместо красивого прогресса.

Красивый прогресс — это хорошо, конечно, но мне как-то важнее, чтобы оно быстрее собиралось. Недостаток весьма минорный, ИМХО.

> еще там часто бывают race conditions, когда в 1-поточном режиме сборка
> проходит всегда, а если в 8 потоков фигарить - сборка отлетает
> с дурной ошибкой без особых причин. И прокатывает раза со второго-третьего.

Кстати, в cmake с таким не встречался. Про билдсистему того софта, где встречался, впрочем, не помню, были ли это автотулзы или что ещё.

> Не совсем понимаю как народ добивается таких красивых гонок. Но если
> нечто билдуется cmake, оно при многопоточной сборке нередко и ВНЕЗАПНО заваливается
> в середине сборки, а вывод на консоль при этом отражается лурковским
> "кровь, кишки, распи...сило".

А при однопоточной при этом всё нормально, не заваливается ничего? Во дела. Прям аж тоже стало любопытно.

> Теоретически все вроде бы так. Практически - толи в автотулсах это проще
> делать, толи еще какие-то факторы. Но факт в том что при
> сборке программы с автотулсами ВНЕЗАПНО валятся гораздо реже.

Как-то всё-таки не факт.

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

106. "В рамках проекта CopperSpice развивается форк Qt 4.8"  –1 +/
Сообщение от Аноним (-), 11-Июн-15, 00:45 
Многопоточная сборка обычно ломается там, где криво прописаны зависимости между целями. Чаще всего - когда что-то автогенерится. В cmake действительно бывает геморно генерить зависимости в таких случаях. Как там в autotools - вообще не представляю, не пользовался.
Ответить | Правка | Наверх | Cообщить модератору

110. "В рамках проекта CopperSpice развивается форк Qt 4.8"  +/
Сообщение от Аноним (-), 11-Июн-15, 16:28 
> Что-то мне подсказывает, что второго таки больше.

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

> Тоже мне проблема, доставил либу и дальше себе make,

А зачем cmake тогда занимает место у меня на винте? А если совсем уж хардкорить - так я в принципе и без make file-ов даже обойтись могу. Поставил либы да покомандовал компилером вручную. Неудобно, но работать будет. Вон там автор какой-то проги для тестирования LCDшника - ушибся в край и затребовал scons. Вся прога - 1 тривиальный файл, чуть сложнее hello world. Я почесал репу, проверил наличие libsdl-ных хидеров сам и вкатал gcc команду. Он собрал. И никаких скунсов ставить не надо. Вот зачем так делать, граждане разработчики?

> ровно с того же места и продолжит.

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

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

Ну так я и вопрошаю: а система сборки и генерации make-файла зачем место у меня на винте занимает тогда?

> Думаю, таки не толпа, а полтора мейнтейнера, которым первыми посчастливилось с этим
> столкнуться.

А также те кто попробовал собрать распоследнюю версию на посмотреть. При том у тех кто умеет софт собирать - порой бывают странноватые системы. Какие-нибудь бояздэшники в два счета притащатся с своим окаменелым gcc 4.2, или какой-нибудь старый извращенец с какой-нибудь соляркой попадется. Мало ли.

>> для сборки и дeтeктирования ключевых параметров системы.
> Позвольте полюбопытствовать из общего интереса: а вы их зачем сами столько собираете?

С самыми разными целями:
1) Иногда программы может не быть в репах.
2) Или она может быть не той версии. Или опции сборки не по вкусу. Или что там еще.
3) Иногда может захотеться получить программу версии не менее чем эн, с вон той фичой, прямо сейчас, а не когда раздуплятся майнтайнеры. Или напротив - сделать реверт на версию где не было ужасно донимающего бага. Случаи бывают разные.
4) Иногда бывает так что хочется посмотреть на будущее уже сейчас. Возможно вкатав багов до того как проблемный багодром разлетится по дистрам и будет годами иметь мозг юзерью, в том числе и мне.
5) Иногда бывает так что программа ну всем хороша. Но вот эта мелочь - анноит. Или ну самую капельку чего-то не хватает. Можно, блин, пойти и самому это пропатчить. На то оно и опенсорс.
6) А иногда проект и народ в нем может понравиться настолько, что с ними просто нравится работать. При этом я могу и немного коммитов зафигарить. Не то чтобы я великий програмер, но в современном мире как-то очень уж сложно жить, если программить не умеешь. И уж разумеется до этого придется проверить как это компилится.

> Кстати, к слову о каждой сборке, просто из интереса: автотулз может рассчитывать
> зависимости между файлами

Как таковой некий трекинг зависимостей там есть...

> и для чего надо (как AUTOMOC в cmake), пересобирать только нужные
> .cpp, когда поменялся хедер?

...но в такие дебри я не лазил.

> Вот сколько лет на генте сижу, ничего не разваливалось.

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

> Так либы детектируются не так, или cmake неправильно ругается, когда отсутствие
> сдетектировалось таки как надо?

Чаще всего - детектируется не так. В смысле, cmake и проц. считает что все ЗБС но в результае оказывается не ЗБС и сборка заваливается на середине. Я даже допускаю что у одного конкретного deadfood cmake работает отлично. Но вот большинство авторов софта почему-то не могут нормально детектировать все либы cmake.

С точки зрения сборки программы это означает что "если программа использует cmake, придется попрыгать по граблям". Поэтому при прочих равных я программу с автокрапом буду собирать - он если завалится то по крайней мере пишет почему. Накрайняк лог есть, где он пишет что делалось. А у cmake сообщения обычно невнятные, часто случается "все ЗБС, но сборка свалилась", а если проверка не прошла - диагностика далеко не всегда очевидна и надо чуть ли не клещами выдергивать недостающее инфо.

> Красивый прогресс — это хорошо, конечно, но мне как-то важнее, чтобы оно
> быстрее собиралось. Недостаток весьма минорный, ИМХО.

Ну да. Просто фича из разряда "не умеешь - не берись". Хотели как лучше, с гламурным прогрессом. А в реальности получилось как всегда - многопоточный хаотичный гадеж в консоль мусором. ИМХО лучше бы там без по дефолту рисовался просто вывод компилера: спам примерно одинаково нечитабельный, зато если факап случился - ну хоть диагностика сразу под рукой.

> Кстати, в cmake с таким не встречался. Про билдсистему того софта, где
> встречался, впрочем, не помню, были ли это автотулзы или что ещё.

А мне такое попадалось почему-то в основном для софтин с cmake. Хотя, разумеется, проблема потенциально вылезти быть где угодно.

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

Ну я так понимаю что случаются какие-то гонки. Это наверное не только для cmake характерно, но мне попадалось именно в прогрмамах с ним. Т.к. я не собирал статистику по таким приколам - я не буду настаивать что это эксклюзивная "фича" cmake и тех кто его использует :)

> Как-то всё-таки не факт.

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

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

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

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




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

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