# emerge =net-www/apache-1.3.28-r1 (snip) ** A test compilation with your Makefile configuration ** failed. The below error output from the compilation ** test will give you an idea what is failing. Note that ** Apache requires an ANSI C Compiler, such as gcc. ======== Error Output for sanity check ======== cd ..; gcc -O3 -march=pentium4 -DHARD_SERVER_LIMIT=512 - D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -DLINUX=22 -DTARGET=\"apache\" - I/usr/include/db1 -DDEV_RANDOM=/dev/random -DUSE_HSREGEX -DEAPI -DEAPI_MM `./apaci` -L/usr/lib -o helpers/dummy helpers/dummy.c -lgdbm -lpthread -lm - lcrypt -ldb1 -lmm -lexpat -ldl /usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.1/../../../../i686-pc-linux-gnu/bin/ld: cannot find -ldb1 collect2: ld returned 1 exit status make: *** [dummy] Error 1 ============= End of Error Report ============= Aborting! !!! ERROR: net-www/apache-1.3.28-r1 failed. !!! Function src_compile, Line 131, Exitcode 1 !!! bad ./configure So I re-install db-3* by following command. # emerge db unmerge (for removing db-4*) # emerge '=sys-libs/db-3*'. Then it does work. # emerge =net-www/apache-1.3.28-r1 # emerge info Portage 2.0.49-r14 (default-x86-1.4, gcc-3.3.1, glibc-2.3.2-r1, 2.4.22-ck2) ================================================================= System uname: 2.4.22-ck2 i686 Intel(R) Pentium(R) 4 CPU 1500MHz Gentoo Base System version 1.4.3.10p1 distcc 2.11.1 i686-pc-linux-gnu (protocols 1 and 2) (default port 3632) [disabled] ccache version 2.3 [enabled] ACCEPT_KEYWORDS="x86 ~x86" AUTOCLEAN="yes" CFLAGS="-O3 -march=pentium4" CHOST="i686-pc-linux-gnu" COMPILER="gcc3" CONFIG_PROTECT="/etc /usr/kde/2/share/config /usr/kde/3/share/config /usr/X11R6/ lib/X11/xkb /usr/kde/3.1/share/config /usr/share/config /var/qmail/control /var/ qmail/alias" CONFIG_PROTECT_MASK="/etc/gconf /etc/env.d" CXXFLAGS="-O2 -mcpu=i686 -pipe" DISTDIR="/usr/portage/distfiles" FEATURES="sandbox ccache autoaddcvs -distcc buildpkg" GENTOO_MIRRORS="http://ftp.snt.utwente.nl/pub/os/linux/gentoo http://mirrors.sec.informatik.tu-darmstadt.de/gentoo" MAKEOPTS="-j2" PKGDIR="/usr/portage/packages" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" PORTDIR_OVERLAY="" SYNC="rsync://rsync.gentoo.org/gentoo-portage" USE="x86 oss apm avi crypt cups encode foomaticdb gif jpeg libg++ libwww mad mikmod mpeg ncurses nls pdflib png quicktime spell truetype xml2 xmms xv zlib gdbm berkdb slang readline arts svga ruby X sdl gpm tcpd pam ssl perl esd imlib oggvorbis gnome gtk qt kde motif opengl cdr cjk gtk2 -java -python" Reproducible: Always Steps to Reproduce: 1.emerge apache (with sys-libs/db-4.1.25_p1-r1) 2. 3. Actual Results: failed to compile Expected Results: I don't know if apache works with db-4*. If not, we should change DEPEND.
The db-4 packages are not supposed to provide -ldb1, please attach the full log so we can see why it tries to use -ldb1 instead of -ldb-4. Currently though I have some problems during compilation with db-4.1 installed. I will try to fix them as soon as possible
Please try to remerge after a while (giving the system time to sync up) Note that apache-1 will force the merging of db-4.0 as it does not work with db-4.1. This new version however should compile correctly.
failed with another error. gcc -c -I../../os/unix -I../../include -O3 -march=pentium4 -DHARD_SERVER_LIMIT=512 -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -DLINUX=22 -DTARGET=\"apache\" -I/usr/include/db4 -DDEV_RANDOM=/dev/random -DUSE_HSREGEX -DEAPI -DEAPI_MM `../../apaci` -fpic -DSHARED_MODULE mod_digest.c && mv mod_digest.o mod_digest.lo mod_rewrite.c: In function `lookup_map_dbmfile': mod_rewrite.c:3068: error: `DBM' undeclared (first use in this function) mod_rewrite.c:3068: error: (Each undeclared identifier is reported only once mod_rewrite.c:3068: error: for each function it appears in.) mod_rewrite.c:3068: error: `dbmfp' undeclared (first use in this function) mod_rewrite.c:3069: error: `datum' undeclared (first use in this function) mod_rewrite.c:3069: error: syntax error before "dbmkey" mod_rewrite.c:3074: error: `dbmkey' undeclared (first use in this function) mod_rewrite.c:3077: error: `dbmval' undeclared (first use in this function) make[4]: *** [mod_rewrite.so] Error 1 make[4]: *** Waiting for unfinished jobs.... gcc -shared -o mod_digest.so mod_digest.lo -L/usr/lib -lm -lcrypt -ldb-4.0 -lmm -lexpat -lpthread make[4]: *** Waiting for unfinished jobs.... make[3]: *** [all] Error 1 make[2]: *** [subdirs] Error 1 make[2]: Leaving directory `/var/tmp/portage/apache-1.3.28-r1/work/apache_1.3.28/src' make[1]: *** [build-std] Error 2 make[1]: Leaving directory `/var/tmp/portage/apache-1.3.28-r1/work/apache_1.3.28' make: *** [build] Error 2 !!! ERROR: net-www/apache-1.3.28-r1 failed. !!! Function src_compile, Line 133, Exitcode 2 !!! compile problem I added -I/usr/include/gdbm to CFLAGS, then did re-emerge it. It seems fine. But I'm not familiar with apache/dbm :)
Please attach the full compilation log. The errors you are experiencing are probably caused by configuration settings in the start of the file. Attaching the build log helps us diagnose the problem.
Created attachment 19331 [details] error log This is the error log.
The original problem is fixed. However it now complains about a missing ndbm.h, this is provided by the db-1.85 package which is pulled in with gdbm, try to remerge gdbm or db1 and try again.
closing due to no response. pauldv notes it should be fixed.
This problem is not fixed. I just had some trouble emerge-ing apache-1.3.29-r1 but it it failed to build because it couldn't find ndbm.h. This header exists, but it is in /usr/include/gdbm/ndbm.h, not at /usr/include/ndbm.h where the configure script expects. manually emerge-ing db-1.85-r1 installs the expected header files and allows apache to build. The apache ebuild file should have a dependency for db-1.85