lavabit / magma

The magma server daemon, is an encrypted email system with support for SMTP, POP, IMAP, HTTP and MOLTEN,. Additional support for DMTP and DMAP is currently in active development.
GNU Affero General Public License v3.0
1.82k stars 165 forks source link

dspam-build fails on debian 10 #137

Open Doemela opened 4 years ago

Doemela commented 4 years ago

Building dspam fails on debian:

I did this: apt install autoconf vim net-tools mlocate psmisc gcc g++ gawk gcc-multilib make autoconf automake libtool flex bison gdb valgrind valgrind-dbg libpython2.7 libc6-dev libc++-dev libncurses5-dev libmpfr6 libmpfr-dev patch make cmake libarchive13 libbsd-dev libsubunit-dev libsubunit0 pkg-config lsb-release memcached libevent-dev postfix postfix-cdb libcdb1 ssl-cert git git-man liberror-perl rsync wget sysstat inotify-tools python-crypto python-cryptography haveged mariadb-server default-libmysqlclient-dev

When I do build.lib.sh dspam result is: Finished dspam-extract at 11:08:52 PM on 01/13/2020 Finished dspam-prep at 11:08:52 PM on 01/13/2020

dspam failed at 11:09:30 PM on 01/13/2020 Log: https://share.riseup.net/#_tHAMJjPklnelbiSNNSBLw

Is it something I did not install or is it dspam?

ladar commented 4 years ago

@Doemela I was too slow. The log file is gone. It's probably some silly dependency that's missing. The log file should tell you precisely what's missing and/or failed.

Your package list looks right on the surface, but I haven't tested against Debian in awhile, and I think that was Debian 8... and that list looks pretty close to what you have:

apt-get --assume-yes install gcc g++ gawk gcc-multilib make autoconf automake libtool flex bison gdb valgrind valgrind-dbg libpython2.7 libc6-dev libc++-dev libncurses5-dev libmpfr4 libmpfr-dev patch make cmake libarchive13 libbsd-dev libsubunit-dev libsubunit0 pkg-config lsb-release

It's possible a package name changed. When you run that command does it complain about not finding a match? For a more current list of packages, you might want to look at this .travis.yml config. It's used to build Magma on Ubuntu 16.04 and 18.04 using various versions of LLVM and GCC. It uses the following package list:

apt-get -yq --no-install-suggests --no-install-recommends install autoconf automake bison build-essential cmake curl flex gdb git gnupg libc++-dev inotify-tools libarchive13 libbsd-dev libc6-dev libmpfr4 libmpfr-dev libncurses5-dev libpython2.7 libsubunit0 libsubunit-dev libtool make patch pciutils pkg-config postfix sysstat usbutils valgrind valgrind-dbg gcc-4.8 g++-4.8 gcc-4.8-locales gcc-4.8-multilib g++-4.8-multilib libstdc++-4.8-dev gcc-4.9 g++-4.9 gcc-4.9-locales gcc-4.9-multilib g++-4.9-multilib libstdc++-4.9-dev gcc-5 g++-5 gcc-5-locales gcc-5-multilib g++-5-multilib libstdc++-5-dev gcc-6 g++-6 gcc-6-locales gcc-6-multilib g++-6-multilib libstdc++-6-dev gcc-7 g++-7 gcc-7-locales gcc-7-multilib g++-7-multilib libstdc++-7-dev gcc-8 g++-8 gcc-8-locales gcc-8-multilib g++-8-multilib libstdc++-8-dev clang-6.0 llvm-6.0-dev

Naturally you don't need all those compilers, just one.