Compile error on ARM/Synology DS212+ (solved)

belenus at bsdmail.de belenus at bsdmail.de
Wed Feb 12 01:26:06 CET 2014


Hi,

thanks to the help of Ondrej I was able to compile bird on the Synology
DS212+.

On 11.02.14 12:55, Ondrej Zajicek wrote:
> On Tue, Feb 11, 2014 at 11:30:09AM +0100, Michael wrote:
>> I am successfully using bird for OSPFv2 and OSPFv3 in a mixed network of  
>> FreeBSD, OpenBSD and Linux. Yesterday I wanted to add a Synology DS212+  
>> to the network but it fails to compile. It seems to be some bison  
>> language issue. Maybe someone can help?
> 
> See:
> 
> http://permalink.gmane.org/gmane.network.bird.user/2901
> http://permalink.gmane.org/gmane.network.bird.user/2905
> 
> I would guess that bison crashed for some reason.

Future reference, there were two issues.

1.) bison not creating cf-parse.tab.[ch] files:

This was solved by running ./configure (with option
"--disable-pthreads") and make on another Linux system and copying over
the files.

2.) make/gcc not being able to link against libpthread due to missing
functions:

In this case I think the IPKG environment was both blessing in curse.
Blessing because it is needed to get gcc and other dependencies
installed. Curse because it comes with a differrent libpthread than the
one installed unter /lib. Interestingly, gcc tries to link against the
@optware folder at /opt/arm.../lib/libpthread.so.0

My quick and ugly workaround was to temporarily replace the @optware
libpthread file with the systems own file. After that, make completed
the build and gave me some nice binaries.

If anyone is interested or also wants to use bird on his/her Synology
(DS212+), here are two tarballs of my IPv4 and IPv6 build directories.

Inside you'll find everything to either compile it yourself or just take
the binaries and "make install" them to /usr/local. If you don't have
the IPKG (ie. no gcc, make, etc.) environment, it *might* also be
possible to just copy the bird binaries and config files into the system.

http://www.bsdhost.eu/pub/bird-1.4.0-ipv4-arm_syno212.tgz
http://www.bsdhost.eu/pub/bird-1.4.0-ipv6-arm_syno212.tgz

Thanks again Ondrej.

Best regards,
Michael



More information about the Bird-users mailing list