Build for Debian MIPS

Maria Matějka maria.matejka at nic.cz
Sun Apr 5 01:18:33 CEST 2020


Hello!
Hopefully fixed in current master, commit 2928c5bcc7
The affected test was broken itself, yet it accidentally somehow worked on little endian. 
Maria

On April 4, 2020 1:42:58 AM GMT+02:00, "Maria Matějka" <maria.matejka at nic.cz> wrote:
>Hello!
>
>I've just replicated the bug via the proot approach. Thank you a lot
>for your help!
>
>Maria 
>
>On April 2, 2020 1:47:32 PM GMT+02:00, Clemens Schrimpe
><clemens.schrimpe at gmail.com> wrote:
>>Hallo all -
>>
>>I built BIRD (1.x and 2.x) for the EdgeRouter platforms(!) myself for
>>many years now and I still do. At first I used a "proot" environment
>>with QEMU on a Ubuntu environment, but I have moved on to compiling it
>>directly on the machines in question a while ago. EdgeRouters
>>(especially the "XG" or "Infinity" types) have more than enough CPU
>and
>>RAM to do it there, it's just the "local storage" and the way their
>>firmware is updated, which prevents you from "just doing it".
>>
>>The solution is simple, though: Current EdgeOS versions support the
>>USB-Port on those routers and you can just plug in a cheap thumb drive
>>or even a real SSD/HD with a USB-Interface. Format it with ext3/ext4,
>>mount it to /mnt for example, clone the current OS onto it, like so:
>>
>>	rsync -aAXv
>>--exclude={"/dev/*","/proc/*","/sys/*","/tmp/*","/run/*","/mnt/*","/media/*","/lost+found","/root.dev/*"}
>>/ /mnt/
>>
>>create shadow-mounts for the special kernel filesystems:
>>
>>	mount --rbind /dev  /mnt/dev
>>	mount --rbind /proc /mnt/proc
>>	mount --rbind /sys  /mnt/sys
>>
>>and now you can chroot into your development environment:
>>
>>	chroot /mnt /bin/bash --login
>>
>>and (bonus track) even start an sshd within this environment for
>easier
>>access later:
>>
>>	mkdir /var/run/sshd /run/sshd	# may fail on either
>>
>>	/usr/sbin/sshd -p 222 -o Protocol=2
>>
>>which runs on port 222 now (vs. the "normal" sshd, running on port
>22).
>>
>>Depending on the EdgeOS Version (1.x or 2.x) you install additional
>>packages need for development. Here are some suggestions
>>(non-comprehensive):
>>
>>Packages for 2.x:
>>
>>wget
>>git
>>build-essential
>>autoconf
>>locales-all
>>cscope
>>ncurses-dev
>>libssl-dev
>>libev-dev
>>liblzo2-dev
>>libpam-dev
>>minizip
>>flex
>>bison
>>libperl-dev
>>libreadline-dev
>>libpcre3-dev
>>libpcap-dev
>>libldap-dev
>>libtalloc-dev
>>libcap2-dev
>>libmemcached-dev
>>libjson-c-dev
>>libgdbm-dev
>>libsqlite3-dev
>>libssh-dev
>>libssh2-1-dev
>>
>>binutils manuell nachinstallieren! (dpkg -i ...)
>>
>>
>>------
>>
>>Packages for 1.x:
>>
>>
>>autoconf
>>locales-all
>>cscope
>>ncurses-dev
>>libssl-dev
>>libev-dev
>>liblzo2-dev
>>libpam-dev
>>flex
>>bison
>>libperl-dev
>>libreadline-dev
>>libpcre3-dev
>>libpcap-dev
>>libldap-dev
>>libtalloc-dev
>>libcap2-dev
>>libmemcached-dev
>>libgdbm-dev
>>libsqlite3-dev
>>libssh-dev
>>libssh2-1-dev
>>
>>Why am I doing this on this "shadow root" again? Because every EdgeOS
>>update wipes everything, except for /config (which is why I place my
>>compiled "modules" (binaries), like BIRD, into /config/opt/bird/...
>for
>>example → ./configure -prefix=/config/opt/bird .
>>
>>This has been working very well for me in a while and I am compiling
>>all sorts of tools all the time within this "Build jail". 
>>
>>Tools needed to start this off (mkfs, rsync, etc.) are either already
>>on the platform or can be installed through the officially supported
>>"apt-get" mechanism.
>>
>>The above was quickly copy&pasted together from what I have on my
>>terminal windows right now and and is surely lacking a step or two
>>along the way, sorry. Please feel free to ask for more detailed
>>instructions if you get stuck somewhere.
>>
>>Greeting,
>>
>>	Clemens
>>
>>PS: If you want to cover the whole EdgeRouter platform you'll need to
>>do this twice - once on an ER-Pro/ER-Infinity and once on an ER-10X
>>(the only X-router with an open USB port), as the former is MIPS-BE
>and
>>the latter is MIPS-LE ... yes, all of these can somehow be "emulated",
>>but I just found it much easier to create/operate/maintain those build
>>environments on their respective native platforms - besides: They are
>>incredibly cheap - even the Infinity router (8 x SFP+, 116 CPUs - 16G
>>RAM - bored beyond belief) is comparatively cheap.
>>
>>> We've not been able to build ourselves on MIPS yet, we went into
>some
>>strange problems last time (don't remember exactly). Were you so kind
>>please and could you please help us setting up Debian for MIPS in QEMU
>>if I fail to manage it once more?
>>> The main issue was, what hardware to choose and how to boot it. But
>>I'll try once more before asking any detailed question. Then we can
>>replicate your issue and probably even build and test for MIPS.
>
>-- 
>Sent from my Android device with K-9 Mail. Please excuse my brevity.

-- 
Sent from my Android device with K-9 Mail. Please excuse my brevity.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://trubka.network.cz/pipermail/bird-users/attachments/20200405/d5f10869/attachment.htm>


More information about the Bird-users mailing list