(bug) Root 5.28: Make debian fails on Ubuntu 10.04 (Lucid)


I’ve tried to build the Debian packaging from source for root_v5.28.00.tar.gz. The usual make goes without problem, but not so for “make debian”. This was done on Ubuntu 10.04 on architecture amd64.

First attempt: make debian.

jbatista@lucid:~/src/cern.ch/root/root-5.28.00$ make debian Makefile:49: *** Please run ./configure again, the build system has been updated. Stop. jbatista@lucid:~/src/cern.ch/root/root-5.28.00$

Had a look at the Makefile, line 49… :slight_smile: a-ha! Next attempt:

[code]jbatista@lucid:~/src/cern.ch/root/root-5.28.00$ ROOT_SRCDIR=$(pwd) make debian

Add here commands to configure the package.

–enable-cintex --enable-clarens --enable-explicitlink --enable-gdml --enable-gsl-shared --enable-fftw3 --enable-ldap --enable-qt --enable-qtgsi --enable-mathcore --enable-mathmore --enable-minuit2 --enable-mysql --enable-peac --enable-pgsql --enable-odbc --enable-reflex --enable-roofit --enable-ruby --enable-shadowpw --enable-shared --enable-soversion --enable-table --disable-rpath --disable-afs --disable-srp --disable-builtin-afterimage --disable-builtin-ftgl --disable-builtin-freetype --disable-builtin-pcre --disable-builtin-zlib --disable-alien --disable-chirp --disable-dcache --disable-g4root --disable-gfal --disable-globus --disable-monalisa --disable-oracle --disable-pythia6 --disable-rfio --disable-sapdb --fail-on-missing --enable-unuran --enable-xrootd
Checking for source directory … /home/jbatista/src/cern.ch/root/root-5.28.00
Configuring for linuxx8664gcc
INFO: --enable-cintex: already enabled by default.
INFO: --enable-clarens: already enabled by default.
INFO: --enable-fftw3: already enabled by default.
INFO: --enable-ldap: already enabled by default.
INFO: --enable-mathcore: already enabled by default.
WARNING: option --enable-mathcore is deprecated and ignored!
INFO: --enable-mathmore: already enabled by default.
INFO: --enable-mysql: already enabled by default.
INFO: --enable-peac: already enabled by default.
INFO: --enable-pgsql: already enabled by default.
INFO: --enable-odbc: already enabled by default.
INFO: --enable-reflex: already enabled by default.
INFO: --enable-shared: already enabled by default.
Invalid option ‘–disable-g4root’. Try ./configure --help
make[1]: *** [config.status] Error 1
make[1]: Leaving directory `/home/jbatista/src/cern.ch/root/root-5.28.00’
dpkg-buildpackage: error: debian/rules build gave error exit status 2
make: *** [debian] Error 2
jbatista@lucid:~/src/cern.ch/root/root-5.28.00$ [/code]

No joy? Hmm :confused: well I do have Geant4 installed from source (4.9.4) Let’s do a configure as suggested:

[code]jbatista@lucid:~/src/cern.ch/root/root-5.28.00$ echo G4INSTALL /usr/local/geant4 jbatista@lucid:~/src/cern.ch/root/root-5.28.00 echo G4SYSTEM Linux-g++ jbatista@lucid:~/src/cern.ch/root/root-5.28.00 ./configure

Enabled support for asimage, astiff, builtin_afterimage, cintex, clarens, editline, exceptions, fftw3, fitsio, gviz, genvector, krb5, ldap, mathmore, memstat, mysql, odbc, opengl, peac, pgsql, python, reflex, shadowpw, shared, ssl, tmva, x11, xft, xml, xrootd.

To build ROOT type:


jbatista@lucid:~/src/cern.ch/root/root-5.28.00$ ROOT_SRCDIR=(pwd) make debian OK, you're on a Debian GNU/Linux system - cool rm -rf debian /home/jbatista/src/cern.ch/root/root-5.28.00/build/package/lib/makedebdir.sh Update build/package/debian/changelog ...5028000 : ... OK Setting up debian directory ... Copying README.Debian to debian/README.Debian ... ... Copying ttf-root-installer.templates to debian/ttf-root-installer.templates Setting up debian directory : ... OK fakeroot debian/rules debian/control test: 324: -gt: unexpected operator make[1]: Entering directory `/home/jbatista/src/cern.ch/root/root-5.28.00' ... ... make[3]: Entering directory `/home/jbatista/src/cern.ch/root/root-5.28.00/math/smatrix/test' make[3]: Leaving directory `/home/jbatista/src/cern.ch/root/root-5.28.00/math/smatrix/test' mv: cannot stat `math/unuran/src/unuran-1.8.0-root': No such file or directory make[2]: *** [distclean-unuran] Error 1 make[2]: Leaving directory `/home/jbatista/src/cern.ch/root/root-5.28.00' make[1]: *** [clean] Error 2 make[1]: Leaving directory `/home/jbatista/src/cern.ch/root/root-5.28.00' dpkg-buildpackage: error: fakeroot debian/rules clean gave error exit status 2 make: *** [debian] Error 2 jbatista@lucid:~/src/cern.ch/root/root-5.28.00 ls math/unuran/src
TUnuranContDist.cxx TUnuranDiscrDist.cxx TUnuranMultiContDist.cxx -unuran-1.8.0-root.tar.gz UnuranDistr.h
TUnuran.cxx TUnuranEmpDist.cxx TUnuranSampler.cxx UnuranDistrAdapter.h UnuranRng.h

So it seems that the build process creates a tar.gz file with a - prefix and it gets confused in bash shells. :unamused: So I tried to help it a little bit:

jbatista@lucid:~/src/cern.ch/root/root-5.28.00$ cd math/unuran/src jbatista@lucid:~/src/cern.ch/root/root-5.28.00$ tar zxvf ./-unuran-1.8.0-root.tar.gz jbatista@lucid:~/src/cern.ch/root/root-5.28.00$ mv ./-unuran-1.8.0-root.tar.gz unuran-1.8.0-root.tar.gz jbatista@lucid:~/src/cern.ch/root/root-5.28.00$ cd - jbatista@lucid:~/src/cern.ch/root/root-5.28.00$ ROOT_SRCDIR=$(pwd) make debian ...
:smiley: and it passed!, up until

math/unuran/src/unuran-1.8.0-root/src/utils/vector_source.h dpkg-source: info: use the '3.0 (quilt)' format to have separate and documented changes to upstream files, see dpkg-source(1) dpkg-source: unrepresentable changes to source dpkg-buildpackage: error: dpkg-source -iG__|^debian|root-bin.png|\.d$ -b root-5.28.00 gave error exit status 1 make: *** [debian] Error 1 jbatista@lucid:~/src/cern.ch/root/root-5.28.00$

So, in conclusion:
[]The usual ./configure && make work OK on this system (Ubuntu Lucid).
]The ./configure && make debian does not work. :cry: I don’t have a pure Debian system to try on, though, but I’m not convinced that’d make a difference in that respect.

Has anyone tried & succeeded at creating *.deb packages from source lately?

New attempt:
I edited the file root-5.28.00/debian/rules and removed the offending line (number 84) and ran debuild by hand. This time it started compiling…

jbatista@lucid:~/src/cern.ch/root/root-5.28.00$ vim debian/rules jbatista@lucid:~/src/cern.ch/root/root-5.28.00$ debuild ... ...