Opened 11 years ago

Closed 11 years ago

Last modified 11 years ago

#19881 closed defect (fixed)

subversion-1.6.2 fails with apr-util 1.3.7 due to bdb library issues

Reported by: blb@… Owned by: danielluke (Daniel J. Luke)
Priority: Normal Milestone:
Component: ports Version: 1.8.0
Keywords: Cc: blair (Blair Zajac), antony.stubbs@…
Port: subversion subversion-javahlbindings subversion-perlbindings subversion-python24bindings subversion-python25bindings subversion-python26bindings subversion-rubybindings

Description

apu-1-config which is installed with apr-util reports the following with the older, 1.3.4, version for libs:

$ apu-1-config --libs
  -ldb-4.6 -lexpat -liconv

The new 1.3.7 version doesn't list the db-4.6 library however:

$ apu-1-config --libs
  -lexpat -liconv

Due to the way subversion uses apu-1-config to learn about linking to Berkeley DB, this causes subversion's configure to now fail:

appending configuration tag "F77" to libtool
checking whether libtool needs -no-undefined... no
checking whether to avoid circular linkage at all costs... no
checking for trang... none
checking for socket in -lsocket... no
checking for availability of Berkeley DB... no
configure: error: Berkeley DB 4.0.14 or newer wasn't found.

This also affects the other subversion-* ports. Attaching a patch for subversion which works around this, the same idea should work for the other subversion-related ports.

I think this may be an upstream issue with subversion's configure and the change in apr-util, but am not positive.

Attachments (2)

subversion.diff (723 bytes) - added by blb@… 11 years ago.
diff to subversion Portfile
subversion_install_error.zip (4.8 KB) - added by antony.stubbs@… 11 years ago.

Download all attachments as: .zip

Change History (9)

Changed 11 years ago by blb@…

Attachment: subversion.diff added

diff to subversion Portfile

comment:2 Changed 11 years ago by danielluke (Daniel J. Luke)

Resolution: fixed
Status: newclosed

Fixed in r51962

comment:3 Changed 11 years ago by karsten@…

I have the latest portfile but building still fails.... From config.log:

configure:23416: checking for availability of Berkeley DB
configure:23499: gcc -o conftest -g -O2    -I/opt/local/include/db46  -I/opt/local/include/apr-1 -I/opt/local/include    -DDARWIN 
-DSIGPROCMASK_SETS_THREAD_MASK -no-cpp-precomp  -I/opt/local/include/apr-1   -I/opt/local/include/apr-1 -I/opt/local/include     -
L/opt/local/lib -L/opt/local/lib/db46 conftest.c  -L/opt/local/lib -ldb-4.6  >&5
conftest.c: In function 'main':
conftest.c:41: error: 'DB_VERSION_MAJOR' undeclared (first use in this function)
conftest.c:41: error: (Each undeclared identifier is reported only once
conftest.c:41: error: for each function it appears in.)
conftest.c:42: error: 'DB_VERSION_MINOR' undeclared (first use in this function)
conftest.c:42: error: 'DB_VERSION_PATCH' undeclared (first use in this function)
configure:23503: $? = 1
configure: program exited with status 1
configure: failed program was:
| /* confdefs.h.  */
| #define PACKAGE_NAME "subversion"
| #define PACKAGE_TARNAME "subversion"
| #define PACKAGE_VERSION "1.6.2"
| #define PACKAGE_STRING "subversion 1.6.2"
| #define PACKAGE_BUGREPORT "http://subversion.tigris.org/"
| #define SVN_NEON_0_26 1
| #define SVN_NEON_0_27 1
| #define SVN_NEON_0_28 1
| #define SVN_HAVE_NEON 1
| #define STDC_HEADERS 1
| #define HAVE_SYS_TYPES_H 1
| #define HAVE_SYS_STAT_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_MEMORY_H 1
| #define HAVE_STRINGS_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_SERF_H 1
| #define SVN_HAVE_SERF 1
| #define SVN_HAVE_MEMCACHE 1
| #define SVN_BINDIR "/opt/local/bin"
| #define SVN_LOCALE_DIR "/opt/local/share/locale"
| #define HAVE_DLFCN_H 1
| /* end confdefs.h.  */
| 
| #include <stdlib.h>
| #define APU_WANT_DB
| #include <apu_want.h>
| 
| int main ()
| {
|   int major, minor, patch;
| 
|   db_version (&major, &minor, &patch);
| 
|   /* Sanity check: ensure that db.h constants actually match the db library */
|   if (major != DB_VERSION_MAJOR
|       || minor != DB_VERSION_MINOR
|       || patch != DB_VERSION_PATCH)
|     exit (1);
| 
|   /* Run-time check:  ensure the library claims to be the correct version. */
| 
|   if (major < 4)
|     exit (1);
|   if (major > 4)
|     exit (0);
| 
|   if (minor < 0)
|     exit (1);
|   if (minor > 0)
|     exit (0);
| 
|   if (patch >= 14)
|     exit (0);
|   else
|     exit (1);
| }
| 
configure:23539: result: no
configure:23543: error: Berkeley DB 4.0.14 or newer wasn't found.

My GCC is:

kmac:subversion-1.6.2 karsten$ gcc -v
Using built-in specs.
Target: i686-apple-darwin9
Configured with: /var/tmp/gcc/gcc-5490~1/src/configure --disable-checking -enable-werror --prefix=/usr --mandir=/share/man --enable-languages=c,objc,c++,obj-c++ --program-transform-name=/^[cg][^.-]*$/s/$/-4.0/ --with-gxx-include-dir=/include/c++/4.0.0 --with-slibdir=/usr/lib --build=i686-apple-darwin9 --with-arch=apple --with-tune=generic --host=i686-apple-darwin9 --target=i686-apple-darwin9
Thread model: posix
gcc version 4.0.1 (Apple Inc. build 5490)

comment:4 in reply to:  3 ; Changed 11 years ago by danielluke (Daniel J. Luke)

Replying to karsten@…:

I have the latest portfile but building still fails.... From config.log:

Do you have the latest apr (1.3.5) and apr-util (1.3.7) installed?

If so, can you attach the complete sudo port clean --all subversion && sudo port -dv install subversion output?

Thanks.

comment:5 Changed 11 years ago by antony.stubbs@…

Cc: antony.stubbs@… added

Cc Me!

comment:6 in reply to:  4 ; Changed 11 years ago by antony.stubbs@…

Replying to dluke@…:

Replying to karsten@…:

I have the latest portfile but building still fails.... From config.log:

Do you have the latest apr (1.3.5) and apr-util (1.3.7) installed?

If so, can you attach the complete sudo port clean --all subversion && sudo port -dv install subversion output?

Thanks.

I get the same problem. I will attach the log you have asked for.

Changed 11 years ago by antony.stubbs@…

comment:7 in reply to:  6 Changed 11 years ago by danielluke (Daniel J. Luke)

Replying to antony.stubbs@…:

Replying to dluke@…:

Replying to karsten@…:

I have the latest portfile but building still fails.... From config.log:

Do you have the latest apr (1.3.5) and apr-util (1.3.7) installed?

If so, can you attach the complete sudo port clean --all subversion && sudo port -dv install subversion output?

Thanks.

I get the same problem. I will attach the log you have asked for.

Since this particular issue was solved, I think you are experiencing something else (please open a new bug).

Also, please make sure you have current working versions of your apr/apr-util and bdb ports installed (ie, if you've recently upgraded to 10.6, make sure you've followed the migration guide).

Note: See TracTickets for help on using tickets.