
Originally Posted by
Toher
Если я правильно понимаю, сам тулчейн не должен занимать много места, а все "At least 20Gb of disk space" уходят на сборку существующих пакетов репозитория.
Возможно ли избежать сборки всего ненужного и скачиватьсобирать только зависимые пакеты?
Конечно возможно.
1) в инструкции из файла INSTALL вместо последней команды ($ make) нужно выполнить
Code:
$ make -C toolchain/mipsel-hardfloat
$ make -C buildroot/mipsel-hardfloat
$ make -C packages
$ make -C "../openwrt_trunk" tools/compile
$ make -C "../openwrt_trunk" tools/install
соберется всё, кроме собственно пакетов репозитория
2) если нужно собрать пакет из OpenWRT, который еще не был нами добавлен в Entware
2.1 находите каталог пакета в ~/Entware/openwrt_trunk/feeds/packages - там основные пакеты (или в ~/Entware/openwrt_trunk/feeds/routing или в ~/Entware/openwrt_trunk/feeds/telephony или в ~/Entware/openwrt_trunk/package - в общем там, где его разместили опервртшники)
2.2 правите Makefile (а также патчи или конфиги, если нужно). Правка в самом простом случае заключается в изменении путей (добавление префикса /opt).
2.3 выбираете нужный пакет в menuconfig
Code:
$ cd ~/Entware/openwrt_trunk/
$ make menuconfig
далее нужно найти интересующий пакет, отметить его для установки (m) и выйти с сохранением конфига
2.4 компилируете пакет
Code:
$ cd ~/Entware/openwrt_trunk/
$ make package/PACKAGENAME/compile V=s
сначала соберутся все зависимости пакета (если это не делалось ранее), затем сам пакет
2.4.1 если сыпятся ошибки, то пункт 2.2 затем 2.4 
2.5 если пакет собрался, забираете его из ~/Entware/openwrt_trunk/bin/entware/packages
3) если нужно добавить новый пакет, отсутствующий в проекте OpenWRT
рекомендую сначала загрузить наш фид (в качестве образца, также можно будет туда добавлять Makefile для своих пакетов)
Code:
$ cd ~/Entware
$ svn co http://wl500g-repo.googlecode.com/svn/feeds/ ./feeds
изменить для фида rtndev путь на локальный в файле ~/Entware/openwrt_trunk/feeds.conf
для этого закомментировать строку src-svn rtndev ...
и раскомментировать #src-link rtndev ... изменив путь на свой (/home/USERNAME/Entware/feeds/rtndev)
3.1 Cоздаете каталог для нового пакета в ~/Entware/feeds/rtndev и пишете Makefile и патчи (если нужно)
3.2 Обновляете пакеты из фида rtndev
$ cd ~/Entware/openwrt_trunk
$ scripts/feeds/update rtndev
$ scripts/feeds install -a
3.3 см. пункт 2.3 и далее
4. Если хотите, чтобы новые пакеты появились в Entware, то присылаете, что наделали ryzhov_al или мне.
Также настоятельно рекомендуется к изучению wiki
P.S. просьба к модераторам перенести сообщение сюда или в другую уместную тему, чтобы не затерялось.