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