Compiling a newer version than the latest .deb package
Cameron Simpson
cs at cskk.id.au
Mon Jun 3 10:18:11 UTC 2019
On 03Jun2019 21:04, Frank Watt <youngoldbloke at gmail.com> wrote:
>Despite the confusing name,
>aptitude install lib64ncurses5-dev:i386
>
>got past the curses error message. But then I got this:
>
>checking tcbdb.h usability... no
>checking tcbdb.h presence... no
>checking for tcbdb.h... no
>checking villa.h usability... no
>checking villa.h presence... no
>checking for villa.h... no
>checking for vlopen in -lqdbm... no
>checking for gdbm_open... no
>checking for BerkeleyDB > 4.0... no
>checking for mdb_env_create... no
>checking kclangc.h usability... no
>checking kclangc.h presence... no
>checking for kclangc.h... no
>configure: error: You need Tokyo Cabinet, Kyoto Cabinet, QDBM, GDBM,
>LMDB or Berkeley DB4 for hcache
>
>So I tried pasting that message into duckduckgo which came up first
>with https://thomer.com/howtos/mutt_on_mac.html
>
>The end of that page finishes:
>
> The key to making the configure errors go away is including CPPFLAGS
> and LDFLAGS on the command line when configuring mutt.
>
>$ CPPFLAGS=-I/opt/local/include/ LDFLAGS=-L/opt/local/lib/ ./configure ...
>
>I'd never thought of Mac users using mutt,
Oh, you cut me!
>but is there any way I
>could use that suggestion? I've had limited experience compiling
>source code but there are others much simpler to do than this one.
>Maybe it's tricky even for Debian geeks and that's why the .deb files
>are so old.
That suggestion, out of the box, will not directly help you.
What it does is tell the configure script to reach into /opt/local for C
headers and libraries. On a Mac there are a few third party package
systems available (Fink, Homebrew and Macports), and Macports installs
packages in /opt/local, thus the path in the suggestion.
However, your Debian system should have access to almost all the
software you should need for a nice mutt build, you just have to fetch
it. Let's look...
My closest Debian like system is our home server, which is running
Ubuntu 16.04. So:
[~]borg*> apt-cache search gdbm|grep dev
libgdbm-dev - GNU dbm database routines (development files)
libtdb-dev - Trivial Database - development files
libtokyocabinet-dev - Tokyo Cabinet Database Libraries [development]
libntdb-dev - New Trivial Database - development files
Try this on your system. [...] Here's the output from a Debian 8.8
system:
libdbm-ocaml-dev - binding to the NDBM/GDBM Unix databases (development files)
libgdbm-dev - GNU dbm database routines (development files)
libntdb-dev - New Trivial Database - development files
libtdb-dev - Trivial Database - development files
libtokyocabinet-dev - Tokyo Cabinet Database Libraries [development]
So to get GDBM:
apt-get install libgdbm-dev
You could also get libtokyocabinet-dev it seems.
Have another review of the things configure says are not available and
do some "apt-cache search" commands for their names, further grepping
for dev to get the development files packages.
And you won't need to the CLFAGS= stuff because these packages will
install stuff in the standard places.
Cheers,
Cameron Simpson <cs at cskk.id.au>
More information about the Mutt-users
mailing list