LINUX.ORG.RU
ФорумTalks

Бинарные сборки. Их нет

 fifth,


0

1

Авторы, видимо, совершенно не волнуются о том, как люди могут воспользоваться их творением. И если речь идёт о небольших проектах, то ничего плохого в этом нет, но когда дело доходит до веб-браузера на WebKit (который компилируется часами на топовом железе), это немного удручает.

Да, неприятно. Не люблю собирать, дебиан же. Или ещё хуже, когда они собирают только под арч или убанту, федору и тд.

Knigochey ()

linux.org.ru

open source

хочет запустить бинарник собранный хз кем

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

нет, собирайте сами. все правильно делают.

Spoofing ★★★★★ ()

Вот вы все такие умные, расскажите, как clang заставить собирать под конкретные архитектуры.

aidaho ★★★★★ ()
Последнее исправление: aidaho (всего исправлений: 1)

Так ведь обычно этот вебкит, за исключением пары-тройки широко известных браузеров (у которых всегда есть бинарные сборки), идёт отдельной либой из репов. И он уже скомпилен.

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

QtWebKit или WebKit-GTK есть, но используемого в данном случае WebKitFLTK — нет. Печально.

svobodka_fighter ()

Ну соберут. И будет куча недовольных: то не так, это не эдак.

когда дело доходит до веб-браузера на WebKit

Популярные собирают. А всякие маргиналы должны страдать.

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

Или ещё хуже, когда они собирают только под арч или убанту, федору и тд.

В жизни не встречал сборок под арч, только пкгбилды. deb и rpm собрали, красноглазики сами сканпеляют, проблемы остальных маргиналов шерифа не волнуют. IMHO, вполне нормальный подход.

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

Гиклесоподелия как пример. Пакеты собирал принципиально только под арч, дебы делать не хотел.

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

Clang, насколько я понимаю, просто вызывает системный компилятор, а тот уже собирает для native архитектуры.
Потыкавшись, не увидел способа задать абстрактную цель, типа «i386».

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

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

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

Нет, ты неправильно понимаешь. clang — это компилятор, ага :)

Вот компановщик вызывается системный, да. Потому что lld еще не готов, хотя никто не запрещает тебе потестить...

Потыкавшись, не увидел способа задать абстрактную цель, типа «i386».

http://clang.llvm.org/docs/CrossCompilation.html

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

Нет, ты неправильно понимаешь. clang — это компилятор, ага :)

Мда, что-то меня сегодня несёт. Сначала написал cpack, потом поправил на clang, но имел ввиду cmake :)

Т.е. хотелось бы просто сказать «make i386 && make package» и всё.

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

Прости бро, забыл ответить)

Хотя выше уже ответили.

То, что ты хочешь можно сделать двумя путями — кастомные цели сборки cmake -DCMAKE_BUILD_TYPE=Generic_i386_Release или через кросс-компиляцию... Оба пути — боль и страдания, но это вполне реализуемо)

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

Вот как раз сейчас дошли руки посмотреть на это.
С GCC можно сделать x86 и amd64 на машине с gcc-multilib, но, похоже, опакечивание в одну команду идёт лесом.
С clang можно в более обширную кросс-компиляцию, но опять же, а пакеты кто делать будет?

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

Вроде как Open Suse Build Service именно для этого сделан.

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