On 28/11/2012 5:36 μ.μ., Zenon Mousmoulas wrote:
[...]
I am trying to figure out what tool or build-dep may be causing this.

So after a lot of trial and error, this is the summary:

* Package gets built on Ubuntu 12.04, without touching debian/rules.

* Package gets built on Debian Squeeze/Wheezy, but the issue noted previously renders the installed binaries unusable:

# ldd build/bin/radiusd
linux-vdso.so.1 => (0x00007fffe5bff000)
libfreeradius-radius.so => not found
build/lib/.libs/rlm_acctlog.so (0x00007ff8685a2000)
build/lib/.libs/rlm_always.so (0x00007ff86839f000)
[...]

* The above no longer happens once I take out --enable-boilermake from debian/rules.
Package gets installed and freeradius seems to run. Yay :)

In all the above cases however, there is the issue I noted in my first post:

# objdump -p /usr/sbin/freeradius | grep NEEDED
   NEEDED               libfreeradius-radius.so
   NEEDED               libfreeradius-eap.so
# objdump -p /usr/lib/freeradius/libfreeradius-radius.so | grep SONAME
# objdump -p /usr/lib/freeradius/libfreeradius-eap.so | grep SONAME

This means dependency tracking (dh_makeshlibs, dpkg-shlibdeps) does not work.

If I add --with-system-libtool and --with-gnu-ld to debian/rules, it goes a step further but it's still wrong:

debian/tmp/usr/lib/freeradius/libfreeradius-radius-3.0.0.la -> libfreeradius-radius.la
debian/tmp/usr/lib/freeradius/libfreeradius-radius.a
debian/tmp/usr/lib/freeradius/libfreeradius-radius.la
debian/tmp/usr/lib/freeradius/libfreeradius-radius.so -> libfreeradius-radius.so.0.0.0 debian/tmp/usr/lib/freeradius/libfreeradius-radius.so.0 -> libfreeradius-radius.so.0.0.0
debian/tmp/usr/lib/freeradius/libfreeradius-radius.so.0.0.0
debian/tmp/usr/lib/freeradius/librlm_sql.so -> rlm_sql.so

Unfortunately the package fails to build as libtool complains:

Making install in src/modules...
/root/freeradius/freeradius-3.0.0git+dfsg/install-sh -c -d -m 755 /root/freeradius/freeradius-3.0.0git+dfsg/debian/tmp/usr/lib/freeradius
Making install in src/modules/rlm_acctlog...
if [ "xrlm_acctlog" != "x" ]; then \
/usr/bin/libtool --mode=install /root/freeradius/freeradius-3.0.0git+dfsg/install-sh -c -c \ rlm_acctlog.la /root/freeradius/freeradius-3.0.0git+dfsg/debian/tmp/usr/lib/freeradius/rlm_acctlog.la || exit $?; \ rm -f /root/freeradius/freeradius-3.0.0git+dfsg/debian/tmp/usr/lib/freeradius/rlm_acctlog-3.0.0.la; \ ln -s rlm_acctlog.la /root/freeradius/freeradius-3.0.0git+dfsg/debian/tmp/usr/lib/freeradius/rlm_acctlog-3.0.0.la || exit $?; \
    fi
libtool: install: error: cannot install `rlm_acctlog.la' to a directory not ending in
[...]
dpkg-buildpackage: error: debian/rules binary gave error exit status 2


My understanding of the above is that
(a) Boilermake seems to work on Ubuntu, no idea why.
(a) Boilermake is unusable on Debian, so once the old build system is phased out, package builds will be impossible. (b) Jlibtool does not work with dependencies, but the alternative (system libtool) is not usable either.

As things stand today, I can not build packages to deploy for testing freeradius 3.0 on Debian servers.

Please advise.

Cheers,
Z.

-
List info/subscribe/unsubscribe? See http://www.freeradius.org/list/users.html

Reply via email to