Skip to content
This repository has been archived by the owner on Mar 17, 2018. It is now read-only.

How to add a new package or rebuild the feed

kolyagora edited this page Oct 19, 2015 · 12 revisions

First, prepare a standard linux environment, on Debian based distro install following packages:

$ sudo apt-get install autoconf automake bash bison bzip2 cvs diffutils file flex g++ \
gawk gettext git-core gperf groff-base libexpat1-dev libncurses-dev libssl-dev libtool \
libslang2 libxml-parser-perl make patch perl python ruby sed shtool subversion tar \
texinfo unzip zlib1g zlib1g-dev xz-utils wget

On some amd64 systems gcc-multilib package is also needed. Then clone this project and prepare Buildroot environment:

git clone https://github.com/Entware/entware.git
cd entware
make

The about execution full OpenWRT Buildroot environment will be prepared with necessary fixes. Next, build the packages by issuing running make in openwrt_trunk.

cd ../openwrt_trunk
make package/{package path/name}/compile

For example, to rebuild OpenVPN, use make package/openvpn/compile . This command results in build of the three variations of OpenVPN (nossl, openssl, polarssl) and all of the underlying packages that they depend on.

The output location for the binaries is openwrt_trunk/bin/entware. Note that instead of just building one specific package, you can try to build all of the packages in the feed, by not providing the name of any specific packages (will take a few hours to build):

make package/compile

If you can build some packages but the full build fails, it might be because of incompatible changes to the underlying package. If you are sure that is the issue, and your tooling is set up properly, you can tell make to build only the packages in the feed that are buildable by ignoring the errors:

make package/compile -i

For more detalied informations, please refer to OpenWRT Buildroot documentation.

Clone this wiki locally