Virtually everybody except upstream has modified LMDB to follow a normal directory layout and BIND expect that.
You should just move the header files and library to /usr/local/include and /usr/local/lib respectively.
build now fails @ "fatal error: lmdb.h: No such file or directory"onfig.h -I/usr/local/src/bind-9.16.4 -I../.. -I./include -I./unix/include -=
...
libtool: compile: /usr/bin/gcc-10 -include /usr/local/src/bind-9.16.4/c=
In file included from ./server.c:131:
echo $CPPFLAGSnclude -I/usr/include
-I/usr/local/include -I/usr/local/openssl11/include -I/usr/local/lmdb/i=
Response in-line./config.h -I/usr/local/src/bind-9.16.4 -I../.. -I./include -I./unix/include=
=20
build now fails @ "fatal error: lmdb.h: No such file or directory"
...
libtool: compile: /usr/bin/gcc-10 -include /usr/local/src/bind-9.16.4=
/include -I/usr/includeIn file included from ./server.c:131:=20
There is no `-I/usr/local/lmdb/include` here
=20
echo $CPPFLAGS
-I/usr/local/include -I/usr/local/openssl11/include -I/usr/local/lmdb=
=20
I'd imagine you want CPPFLAGS here. or you can export C_INCLUDE_PATH
I'd imagine you want CPPFLAGS here. or you can export C_INCLUDE_PATH...
Edit:`s/CPPFLAGS/CFLAGS`
you can use and adjust the .pc file from any Linux distribution package
LMDB support in BIND 9 comes with pkg-config support too
Did you came to get help or to argue?
It’s really not our fault the LMDB upstream decided to make it hard to use the library.
On 19 Jun 2020, at 03:25, PGNet Dev <pgnet.dev@gmail.com> wrote:
this
configure.ac
AC_MSG_CHECKING(for lmdb library)
AC_ARG_WITH(lmdb,
AS_HELP_STRING([--with-lmdb[=PATH]],
[build with LMDB library [yes|no|path]]),
use_lmdb="$withval", use_lmdb="auto")
have_lmdb=""
case "$use_lmdb" in
no)
LMDB_LIBS=""
;;
auto|yes)
for d in /usr /usr/local /opt/local
do
if test -f "${d}/include/lmdb.h"
then
if test ${d} != /usr
then
LMDB_CFLAGS="-I ${d}/include"
!! LMDB_LIBS="-L${d}/lib"
fi
have_lmdb="yes"
fi
done
;;
*)
if test -f "${use_lmdb}/include/lmdb.h"
then
LMDB_CFLAGS="-I${use_lmdb}/include"
!! LMDB_LIBS="-L${use_lmdb}/lib"
have_lmdb="yes"
else
AC_MSG_ERROR([$use_lmdb/include/lmdb.h not found.])
fi
;;
esac
is naive. it ignores commonplace multiarch support.
with =path enabled on config, generated Makefile is just wrong
egrep "^LMDB" Makefile
LMDB_CFLAGS = -I/usr/local/lmdb/include
LMDB_LIBS = -L/usr/local/lmdb/lib none required
bind advertises
./configure --help | grep -i LMDB
--with-lmdb=PATH build with LMDB library [yes|no|path]
it simply fails to work as advertised.
you can use and adjust the .pc file from any Linux distribution package
of course you can.
it's here
pkg-config --libs --cflags lmdb
-I/usr/local/lmdb/include -L/usr/local/lmdb/lib64 -llmdb
LMDB support in BIND 9 comes with pkg-config support too
there's NO such option advertised by bind configure, as
LMDB_CFLAGS
C compiler flags for LMDB, overriding pkg-config
LMDB_LIBS
linker flags for LMDB, overriding pkg-config
it's simply not used by this bind build
grep PKG_CHECK `grep -rln PKG_CHECK .` | grep -i lmdb
(empty)
& no mention at all of it in source
grep -i lmdb `grep -rlni lmdb .` | grep -i pkg
(empty)
this
--with-openssl=/usr/local/openssl
works.
this,
--with-lmdb=/usr/local/lmdb
does not.
That has _nothing_ to do with 'LMDB upstream'
Did you came to get help or to argue?
neither.
It’s really not our fault the LMDB upstream decided to make it hard to use the library.
::facepalm::
this
tree /usr/local/lmdb
/usr/local/lmdb
...
├── include
│ └── lmdb.h
...
├── lib64
│ ├── liblmdb.a
│ └── liblmdb.so
...
is about as simple as it gets.
fix it, remove it, or leave it as is -- your product, your choice.
good luck.
_______________________________________________
Please visit https://lists.isc.org/mailman/listinfo/bind-users to unsubscribe from this list
ISC funds the development of this software with paid support subscriptions. Contact us at https://www.isc.org/contact/ for more information.
bind-users mailing list--
bind-users@lists.isc.org
https://lists.isc.org/mailman/listinfo/bind-users
but whether lmdb inclusion/usage now _functions_ correctly with that^ cleanup, i have yet to verify.
checking now ...
Sysop: | DaiTengu |
---|---|
Location: | Appleton, WI |
Users: | 991 |
Nodes: | 10 (1 / 9) |
Uptime: | 143:13:29 |
Calls: | 12,962 |
Files: | 186,574 |
Messages: | 3,266,439 |