Page 3 of 93 FirstFirst 123451353 ... LastLast
Results 31 to 45 of 1392

Thread: Entware - новый репозиторий для роутеров Asus (MIPS)

  1. #31

    Обновить нельзя оставить!

    Коллеги, в продолжение разговора про обновление репозитория Optware.

    Я сделал для Optware свой тестовый target (platforms/packages-xxx.mk и platforms/toolchain-xxx.mk). Это в теории позволило бы автоматизированно синхронизироваться с http://svn.nslu2-linux.org/svnroot/optware/trunk и компилировать новшества автоматически. Но в этом чёртовом Optware ничего автоматизированно не собирается! Причём в оригинальных target'ах тоже. Ссылки на исходники в каждом втором пакете потеряли актуальность и пересобрать автоматизированно хотя бы половину репозитория не представляется возможным. А выполнять эту работу вручную бесперспективно.

    В процессе анализа /usr/bin/ipkg.sh был удивлён дальновидностью авторов прошивки. По умолчанию в /usr/etc/ipkg.conf "зашит" репозиторий optware, но для ipkg.sh можно указать переменную среды IPKG_CONF_DIR, содержащую конфиг со своими репозиториями.

    Хочу заметить, что древний target wl500g, созданный Олегом (?) опирался на ту же идею: сборку пакетов родным для прошивки тулчейном. Он по прежнему ссылается на /opt/brcm/hndtools-mipsel-uclibc/bin/* и по идее должен оставаться работоспособным по сей день при правильном расположении энтузиасткого тулчейна.
    Last edited by ryzhov_al; 20-10-2011 at 21:13. Reason: Убрал слова про нежизнеспособность идеи

  2. #32
    Join Date
    Nov 2006
    Location
    Russia, Moscow
    Posts
    3,640
    Quote Originally Posted by ryzhov_al View Post
    Кратко: считаю идею нежизнеспособной
    А зря...

    Я сделал для Optware свой тестовый target (platforms/packages-xxx.mk и platforms/toolchain-xxx.mk). Это в теории позволило бы автоматизированно синхронизироваться с http://svn.nslu2-linux.org/svnroot/optware/trunk и компилировать новшества автоматически. Но в этом чёртовом Optware ничего автоматизированно не собирается!
    Вот тут и кроется причина твоего пессимизма - синхронизироваться с Optware НЕ НАДО. Однократная миграция с, увы, ручным трудом. И всё!

    Если очень хочется с кем-то синхронизироваться - OpenWRT. У них проект живой.

    На мой взгляд, затея повторит судьбу target'а Олега. Она потеряет актуальность за давностью времени без постоянного ручного вмешательства.
    Без развития и минимального ручного вмешательства - да, потеряет актуальность, как и Optware.

  3. #33
    Quote Originally Posted by lly View Post
    Вот тут и кроется причина твоего пессимизма - синхронизироваться с Optware НЕ НАДО. Однократная миграция с, увы, ручным трудом. И всё!
    А дальше?! Как мне поддерживать его актуальность? Я думал это выполнять через svn update http://svn.nslu2-linux.org/svnroot/optware/trunk. Не стану же я вручную отслеживать появление новых версий софта?

    ЗЫ Я пока не поставил запятую в заголовке предыдущего поста
    Last edited by ryzhov_al; 20-10-2011 at 19:55.

  4. #34
    Join Date
    Nov 2006
    Location
    Russia, Moscow
    Posts
    3,640
    Quote Originally Posted by ryzhov_al View Post
    А дальше?! Как мне поддерживать его актуальность? Я думал это выполнять через svn update http://svn.nslu2-linux.org/svnroot/optware/trunk. Не стану же я вручную отслеживать появление новых версий софта?
    Ты же видишь, что в Optware это автоматом не делается? В OpenWRT это также делается группой людей. Тупо обновлять версию софта без минимальной проверки это просто опасно!

    Если есть ведущий, он может коммитить по аргументированным заявкам телезрителей новые версии, а иначе никак

  5. #35
    Quote Originally Posted by lly View Post
    Ты же видишь, что в Optware это автоматом не делается? В OpenWRT это также делается группой людей. Тупо обновлять версию софта без минимальной проверки это просто опасно!

    Если есть ведущий, он может коммитить по аргументированным заявкам телезрителей новые версии, а иначе никак
    Леонид, я прекрасно осознаю, что это делать придётся мне одному, как автору идеи. Просто не уверен, что "потяну" это.

    Уже написал скрипт перехода на новый репозиторий, скомпилировал базовые пакеты, вроде ipkg с новым репозиторием и смоделировал беспроблемный переход на него. Дело, за "малым" - за наполнением репозитория! С наскоку пересобрать репозиторий не вышло, вот я и занудел.

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

  6. #36
    Join Date
    Nov 2006
    Location
    Russia, Moscow
    Posts
    3,640
    Quote Originally Posted by ryzhov_al View Post
    Просто не уверен, что "потяну" это.
    По собственному опыту это больше зависит от настроя и, если кто-то
    вызвется помогать, будет на порядок легче. Неужели ты думаешь, что начиная правки прошивки Олега на новогодних каникулах 2008 года я предполагал, что всё придёт к ТАКОМУ?

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

  7. #37
    Quote Originally Posted by lly View Post
    По собственному опыту это больше зависит от настроя и, если кто-то
    вызвется помогать, будет на порядок легче. Неужели ты думаешь, что начиная правки прошивки Олега на новогодних каникулах 2008 года я предполагал, что всё придёт к ТАКОМУ?
    Спасибо за поддержку, правда.

    Восстанавливаю стертый проект на googlecode и соответсвующий блог.

    Quote Originally Posted by lly View Post
    В отдельной теме, особливо если сперва прогонишь текст ошибки через гуглопоиск, почему бы и нет.
    Завёл блог, чтобы не флудить тут. На мой взгляд, большинству форумчан не будет интересен прогресс построения репозитория. Как (и если) обнародую результат, так заведём отдельную тему.
    Last edited by ryzhov_al; 20-10-2011 at 20:23. Reason: Ссылку на блог убираю, обсуждения прогресса будут здесь.

  8. #38
    Join Date
    Nov 2006
    Location
    Russia, Moscow
    Posts
    3,640
    Quote Originally Posted by ryzhov_al View Post
    Завёл блог, чтобы не флудить тут. На мой взгляд, большинству форумчан не будет интересен прогресс построения репозитория.
    А может кому-то будет? Ключевые моменты стоит однозначно здесь писать.
    Попробуй пообщаться с Zyxmon'ом, может у него какие оригинальные мысли и наработки есть.

    P.S. rpath задаёт наиболее приоритетный путь и не отменяет стандартные пути поиска библиотек, см. "man ld"

  9. #39
    Quote Originally Posted by ryzhov_al View Post
    Я сделал для Optware свой тестовый target (platforms/packages-xxx.mk и platforms/toolchain-xxx.mk)....
    Хочу заметить, что древний target wl500g, созданный Олегом (?) опирался на ту же идею: сборку пакетов родным для прошивки тулчейном.
    И я бы так делал. И начал бы со сборки основных пакетов, которых сотни две. Ручками неспеша за несколько месяцев все устаканится. Пессимизм пропадет. Главное не спешить.
    Quote Originally Posted by lly View Post
    Попробуй пообщаться с Zyxmon'ом, может у него какие оригинальные мысли и наработки есть.
    От мыслей толку мало, их нужно реализовывать. В openwrt все значительно лучше автоматизировано, но там другие недостатки. И сам не думал, что то, чем занимаюсь увлечет. Раньше были загадки, почему не собирается XXX. Сейчас гораздо проще.

  10. #40
    Join Date
    Nov 2006
    Location
    Russia, Moscow
    Posts
    3,640
    Quote Originally Posted by Zyxmon View Post
    От мыслей толку мало, их нужно реализовывать.
    Безусловно, однако бывают моменты, когда нет никаких идей. И тогда информация о чужих граблях вполне может натолкнуть на верный путь.

  11. #41
    Опишу пока свои текущие выкладки. Не очень практично, но может кто-то узнает свои прошлые наивные рассуждения.

    Начал пересборку Optware c ~150 пакетов, которыми когда-либо сам пользовался. Споткнулся на сборке glib, которому не хватает libintl.h из gettext. Насколько я понял, на embedded-устройствах с uclibc вопрос с локализацией решён твёрдо: никакой локализации Заодно посмотрел насколько актуальна gettext в Optware, и, гм... удивился. 2005 год! Ладно, допустим я пересоберу эти базовые 150 пакетов, сделав ядро репозитория, но можно ли его будет назвать обновлённым?

    Так как самостоятельно написать патчи для того, чтобы подружить uclibc 0.9.32 со свежей gettext у меня квалификации не хватает, решил посмотреть как это делают в стане openwrt. Был приятно удивлён, что openwrt используют последние версии ключевых библиотек. В связи с этим задаю себе закономерный вопрос: а есть ли возможность использовать в качестве нового репозитория среду openwrt? Можно ли составить для неё собственный target, который позволит раскладывать пакеты в иерархию /opt/bin, /opt/lib? А если нет, то возможно ли использование механизма chroot или подобного для адаптации к нам?

    Среда на первый взгляд неплохо документирована и позволяет использовать внешний тулчейн. Будем посмотреть.

  12. #42
    Предлагаю посмотреть
    http://zyxel-keenetic-packages.googl...lt/mc/Makefile

    make install ...(а он вызывается только если указано PKG_INSTALL:=1)
    поместит все файлы в подпапку $(PREFIX_ZYX) = media/DISK_A1/system/usr

    Дальше в секции define Package/mc/install
    Все (или выбранные) файлы из этой папки кидаются в другую из которой и делается пакет ipk.

    Я уже раньше писал, что изменить в первую очередь, чтобы скрипты openwrt работали в духе optware. Немного упрощаю, конечно.

    ИМХО Разобраться со сборкой gettext в optware не так уж и сложно.

    Если интересует openwrt, готов через ЛК объяснить все строки в этом Makefile.
    Last edited by Zyxmon; 23-10-2011 at 18:51.

  13. #43

    Отчёт за неделю

    Инструментарий OpenWrt Buildroot оказался довольно гибкой и достаточно актуальной системой сборки. Во всяком случае он "знает" о существовании актуальной uClibc 0.9.32 и к нему без проблем подключился внешний энтузиасткий тулчейн.

    Ряд базовых пакетов связка Openwrt Buildroot + hndtools-mipsel-uclibc-4.4.6-K26-x86_64 собирает успешно. Правка исходников и инструментария openwrt в основном сводится к правке путей установки скомпилированного софта: /usr -> /opt.

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

    Пока не смог победить сборку "обязательных" пакетов wl и libnl-tiny. Мне их собирать не требуется, но OpenWrt Buildroot при проверке корректности среды сборки "настаивает" на их обязательном включении. Собираю пока для платформы target/linux/brcm47xx (no Wifi), но позже, видимо, сформирую свой target по образцу тов.Zyxmon'а.

    Мне необходимо определиться с тем, стоит ли включать текущую сборку uclibc из прошивки (включая все эти librt, libpthread и пр.) в состав нового репозитория?
    (+) Если включать, то репозиторий останется работоспособным несмотря на изменения прошивки. Кроме того, этим репозиторием смогут воспользоваться пользователи других прошивок. Вон, протухший Optware до сих пор работает.
    (-) Если включать, то рано или поздно я отстану от развития прошивки.

    И ещё вопрос самому себе: стоит ли влючать сборку как MIPSr2 only или оставить MIPSr1? Какие такие killing features есть у MIPSr2?

    Тов.Zyxmon'у хочу сказать отдельное спасибо за ряд пояснений.

  14. #44
    Join Date
    Nov 2006
    Location
    Russia, Moscow
    Posts
    3,640
    Quote Originally Posted by ryzhov_al View Post
    Пока не смог победить сборку "обязательных" пакетов wl и libnl-tiny.
    hardcoded в одном из Makefile для этого target'а.

    Мне необходимо определиться с тем, стоит ли включать текущую сборку uclibc из прошивки (включая все эти librt, libpthread и пр.) в состав нового репозитория?
    На твоё усмотрение, librt мы в ближайшее время включим, остаётся одна libstdc++
    Более важным моментом являются твои планы быть, например, более консервативным при обновлении uClibc. Или наоборот, включать свои смелые экспериментальные наработки.

    И ещё вопрос самому себе: стоит ли влючать сборку как MIPSr2 only или оставить MIPSr1? Какие такие killing features есть у MIPSr2?
    Новые команды - более компактный(быстрый) код, не более того. Через пару лет, когда MIPSr1 будут совсем неподдерживаемы никем, переключишь на MIPSr2.

    P.S. Да, просьба не включать в репозитарий явно ядерно-зависимые пакеты, типа iptables. А то получится такая-же фигня, как в Optware - не работают, ни супер-новые фичи, ни старые.
    Last edited by lly; 27-10-2011 at 15:12.

  15. #45
    Буду делать так, чтобы мой инструментарий представлял собой конфигуратор OpenWRT Buildroot для того, чтобы его можно было накатить на любую версию OpenWRT Buildroot.

    Как им воспользоваться - расписал отдельно.

    Это фундамент. Теперь буду дополнять его патчами к конкретным пакетам.

Page 3 of 93 FirstFirst 123451353 ... LastLast

Similar Threads

  1. Replies: 85
    Last Post: 29-01-2019, 09:11
  2. Новый роутер Asus RT-N12 B1/C1/D1/HP/VP
    By Omega in forum Russian Discussion - РУССКИЙ (RU)
    Replies: 148
    Last Post: 03-05-2015, 16:29
  3. Entware MIPS/ARM
    By Omega in forum German Discussion - Deutsch (DE)
    Replies: 3
    Last Post: 31-03-2015, 20:28
  4. Entware MIPS/ARM
    By Omega in forum English Discussion
    Replies: 0
    Last Post: 06-03-2015, 01:42
  5. Есть ли место в репозитории EntWare категории Games ?
    By MercuryV in forum Russian Discussion - РУССКИЙ (RU)
    Replies: 53
    Last Post: 24-11-2014, 02:23

Tags for this Thread

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •