pocoproject / distro

POCO Distribution
5 stars 2 forks source link

Packaging Debian #8

Open Zhomart opened 8 years ago

Zhomart commented 8 years ago

I followed the next steps to build debian package:

  1. Download and unpack poco-1.6.1 and cd into it
  2. Clone poco/distr somewhere else $ git clone https://github.com/pocoproject/distro.git ~/poco-distr
  3. Copy debian to poco-1.6.1, $ cp -r ~/poco-distr/Linux/Ubuntu/poco/1.6.1/debian .
  4. Install dependencies defined in debian/control
  5. Build $ dpkg-buildpackage -us -uc

I'm getting following error:

perl: warning: Setting locale failed.
perl: warning: Please check that your locale settings:
    LANGUAGE = (unset),
    LC_ALL = (unset),
    LC_CTYPE = "en_US.UTF-8",
    LANG = "en_US.UTF-8"
    are supported and installed on your system.
perl: warning: Falling back to the standard locale ("C").
dpkg-source: error: can't build with source format '3.0 (native)': native package version may not have a revision
dpkg-buildpackage: error: dpkg-source -b poco-1.6.1 gave error exit status 255
username@the-host:~/download/poco-1.6.1$ quilt --version
0.63

How do you build it?

zosrothko commented 8 years ago

The source tar is missing some fixes for building the bde packet. You should start from a clone of the git repo with tag poco-1.6.1-release and get the latest master debian directory I updated few minutes ago.

fandre@ubuntu-idefix:~/poco-1.6.1$ quilt --version 0.61 fandre@ubuntu-idefix:~/poco-1.6.1$ dpkg-buildpackage -us -uc | tee build.log dpkg-buildpackage: paquet source poco dpkg-buildpackage: version source 1.6.1-11 dpkg-buildpackage: distribution source experimental dpkg-buildpackage: source changé par Francis ANDRE zosrothko@orange.fr dpkg-buildpackage: architecture hôte amd64 dh clean --with=quilt --parallel dh_testdir -O--parallel dh_auto_clean -O--parallel make -j1 distclean make[1]: Entering directory /home/fandre/poco-1.6.1' rm -rf /home/fandre/poco-1.6.1/lib find /home/fandre/poco-1.6.1 -name obj -type d -print0 | xargs -0 rm -rf find /home/fandre/poco-1.6.1 -name .dep -type d -print0 | xargs -0 rm -rf find /home/fandre/poco-1.6.1 -name bin -type d -print0 | xargs -0 rm -rf make[1]: Leaving directory/home/fandre/poco-1.6.1' dh_quilt_unpatch -O--parallel quilt --quiltrc /dev/null pop -a || test $? = 2 Removing patch foundation-pathtest.patch ....

Zhomart commented 8 years ago

Sorry, it didn't work for me.

$ git checkout poco-1.6.1-release
$ cp -r ../distro/Linux/Ubuntu/poco/1.6.1/debian .
$ dpkg-buildpackage -us -uc | tee build.log
...
make[1]: Leaving directory '/home/debian/download/poco-1.6.1-git'
   dh_quilt_unpatch -O--parallel
    quilt --quiltrc /dev/null pop -a || test $? = 2
No patch removed
    rm -rf .pc
   dh_clean -O--parallel
    rm -f debian/libpoco-dev.substvars
    rm -f debian/libpoco-dev.*.debhelper
...
    rm -f debian/*.debhelper.log
    rm -f debian/files
    find .  \( \( \
        \( -path .\*/.git -o -path .\*/.svn -o -path .\*/.bzr -o -path .\*/.hg -o -path .\*/CVS \) -prune -o -type f -a \
            \( -name '#*#' -o -name '.*~' -o -name '*~' -o -name DEADJOE \
         -o -name '*.orig' -o -name '*.rej' -o -name '*.bak' \
         -o -name '.*.orig' -o -name .*.rej -o -name '.SUMS' \
         -o -name TAGS -o \( -path '*/.deps/*' -a -name '*.P' \) \
        \) -exec rm -f {} + \) -o \
        \( -type d -a -name autom4te.cache -prune -exec rm -rf {} + \) \)
    rm -f *-stamp
 dpkg-source -b poco-1.6.1-git
...
perl: warning: Falling back to the standard locale ("C").
dpkg-source: error: can't build with source format '3.0 (native)': native package version may not have a revision
dpkg-buildpackage: error: dpkg-source -b poco-1.6.1-git gave error exit status 255

And also it included --parallel to the EXTRA_DH_OPTS.

My device info:

$ uname -a
Linux DA3-8 3.15.10-bone8 #1 Fri Sep 26 14:20:19 PDT 2014 armv7l GNU/Linux

$ cat /etc/*release
PRETTY_NAME="Debian GNU/Linux 7 (wheezy)"
NAME="Debian GNU/Linux"
VERSION_ID="7"
VERSION="7 (wheezy)"
ID=debian
ANSI_COLOR="1;31"
HOME_URL="http://www.debian.org/"
SUPPORT_URL="http://www.debian.org/support/"
BUG_REPORT_URL="http://bugs.debian.org/"

I've used ruby gem fpm to build debian package https://github.com/pocoproject/poco/wiki/Dockerfile-for-creating-deb-packages-(Ubuntu-15.10) and it worked.

You can close this issue if you don't need to build for ARMv7.

zosrothko commented 7 years ago

Nice to know it worked with Docker. By the way, I will fix that Debian packaging one day.