DSM-G600, DNS-3xx and NSA-220 Hack Forum

Unfortunately no one can be told what fun_plug is - you have to see it for yourself.

You are not logged in.

Announcement

#1 2010-02-01 17:27:45

Rawnar
Member
From: Den Haag
Registered: 2009-12-20
Posts: 26

Help on optimizing/compiling glib

Within this forum you will see several glib packages. These packages contain incomplete or older version of glib. I would like to compile a resent version of glib which is optimized for the DNS-313. For myself I need at least a 2.16 version, but maybe other people like to have a newer version, so I aim for >= 2.20. For picking the correct configuration options to get an optimized glib library for our DNS-313's, I need your help. One can find the documentation of glib here. Which configure options will improve the usability of glib program in the DNS-313?

Getting the glib library compiled on your system one needs gettext with the intl library included. In the fonz fun plug packages the gettext package is compile with nls disable resulting in no libintl.so. One could install the gettext package from here to get the needed files on your system. I would prefer a separate package that will only contain the libintl files, but who am I.

Additionally one needs inotify support in de kernel to compile resent versions of glib. The headers of fonz fun plug are based on a 2.6.9 kernel, which lacks inotify support. The DNS-313 firmware is based on the 2.6.15 kernel which does support inotify, as inotify is included in the mainline kernel from version 2.6.13 onwards. So I need the kernel-headers for the DNS-313, but I need some help getting the correct headers. Which directories from the GPL tarball do I need to collect?

I would also like to share the packages with the community, but I don't have my one website. Were can I put the packages, so people can use them?

Offline

 

#2 2010-02-03 11:58:59

Rawnar
Member
From: Den Haag
Registered: 2009-12-20
Posts: 26

Re: Help on optimizing/compiling glib

Progress so far. I have collected the following directories from the DNS-313 GPL source(1.00). Within the directory "opt/920t_le/lib/gcc/arm-linux/3.4.4/include" I grasped the following directories.

Code:

asm-arm     -> asm
asm-generic -> asm-generic
linux       -> linux
mtd         -> mtd
scsi        -> scsi

I am not sure if the scsi directory is needed. And probably within the asm-arm directory only the arch-sl2312 of the arch-* directories is needed, but I am not sure. Replacing the kernel-headers in ffp and trying to compile the glib-2.22.4 gave the same errors about the missing inotify functions. To my understanding I need to recompile µClibc to gain these functions.

I'm using the funplug scripts which retrieves the µClibc source code from the svn repository. Unfortunately, at µClibc they have moved to git for there development and froze the svn repository.
@Fonz: Would you advice to use a stable version of µClibc(like 0.9.30.2) or stick with the frozen svn version? And do I still need to apply the patches that you are using in your version of µClibc?

Offline

 

#3 2010-02-03 12:58:28

andry
Member
Registered: 2009-12-12
Posts: 20

Re: Help on optimizing/compiling glib

You can see the project https://dev.openwrt.org.
In the current version there is support for processor GEMINI ( https://dev.openwrt.org/browser/trunk/t … nux/gemini ). Branch GEMINI includes processor SL3512, but I did not find support NET_SL351X and SCSI_SATA_LEPUS. To build the glib is not important. In the settings openwrt you can select the version of glib, which you want build. Openvrt also makes a cross-compiler for building all packages.
Try it.

Offline

 

#4 2010-02-04 00:04:32

Rawnar
Member
From: Den Haag
Registered: 2009-12-20
Posts: 26

Re: Help on optimizing/compiling glib

The cross compiler for the Gemini processor will not compile, so we have to wait on and update. I am now trying the Kirkwood processor (maybe orion would have been better for our DNS-323 friends), another ARM processor common to NAS's. This seems to compile normally, so it is not an general ARM problem at openwrt.

If have successfully compile µClibc.0.9.29 with the new kernel-headers. Only some small changes to the SRC_URI, S and  patch-series in the source directory did the trick. Now glib 2.22.4 is still giving two errors during compilation

Code:

../../gio/.libs/libgio-2.0.so: undefined reference to `in6addr_loopback'
../../gio/.libs/libgio-2.0.so: undefined reference to `in6addr_any'

So the inotify problem has need solved, now µClibc needs to be compiled with the support of IPv6 to solve these remaining errors. Were do I have to change the settings of µClibc to get this result.

Offline

 

#5 2010-02-04 15:18:52

Rawnar
Member
From: Den Haag
Registered: 2009-12-20
Posts: 26

Re: Help on optimizing/compiling glib

Compiling glib 2.20.5 on my DNS-313 when without problems. On the net I also have found a small patch that will solve these undefined references in the 2.22.4 build.

Keeping you posted about the latest version of glib and the attempt to optimize the library.

Offline

 

Board footer

Powered by PunBB
© Copyright 2002–2010 PunBB