Skip to content

Create image for unsupported platform

Ycarus (Yannick Chabanois) edited this page Nov 4, 2024 · 35 revisions

Any platform where images are not generated are unsupported platform.

No support for compilation. This may or may not work.

Compilation is done via Github Actions using this script: https://github.com/Ysurac/openmptcprouter-feeds/blob/develop/.github/workflows/main.yml

You need to be under Linux with all tools needed to compile OpenWrt. This should be enough for Debian 10, as root:

# apt-get install busybox curl rsync build-essential asciidoc binutils bzip2 gawk gettext git libncurses5-dev libz-dev patch unzip zlib1g-dev lib32gcc1 libc6-dev-i386 subversion flex uglifyjs git-core gcc-multilib p7zip p7zip-full msmtp libssl-dev texinfo libglib2.0-dev xmlto qemu-utils upx libelf-dev autoconf automake libtool autopoint device-tree-compiler wget tar file llvm

To test on any other platform (supported by OpenWrt with kernel 6.1), as user (this will not work as root):

# git clone https://github.com/Ysurac/openmptcprouter.git
# cd openmptcprouter
# git checkout master
# OMR_TARGET="myplatform" OMR_FEED_SRC="master" OMR_KERNEL="6.1" ./build.sh

If the platform already exist, replace myplatform by the platform name like x86_64. Check config-xxx files to find platforms where xxx is the supported platform name.

OMR_FEED_SRC="master" use master branch of OpenMPTCProuter

You can replace "master" in both checkout en OMR_FEED_SRC to a tagged branch like "v0.58.5" or you can use "develop" branch.

OMR_KERNEL="5.4" compile for 5.4 kernel, use OMR_KERNEL="6.1" to use 6.1 kernel and updated OpenWRT

The script build.sh accepts all make arguments (like -j).

If it's a not yet supported platform, select your arch in the menu and build it like this, as user:

# cd myplatform/source
# make menuconfig 
# make -j6

When finished, files are located in the directory myplatform/source/bin.