You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@apr.apache.org by Bojan Smojver <bo...@rexursive.com> on 2007/09/08 01:38:25 UTC

Re: svn commit: r572642 - in /apr/apr-util/trunk: CHANGES INSTALL.MySQL build/dbd.m4 configure.in dbd/apr_dbd_freetds.c dbd/apr_dbd_mysql.c

On Fri, 2007-09-07 at 12:38 -0700, Sander Temme wrote:

> If you look at the (long) link line at the bottom, you'll see that  
> it's picking up -L/usr/lib/mysql -lmysqlclient_r , and the root cause  
> of that is probably somewhere in configure where it decides to use  
> the system MySQL despite the fact that we have one of our own.

Is that with --with-mysql=/your/own/location/of/mysql? Or without that?

-- 
Bojan


Re: svn commit: r572642 - in /apr/apr-util/trunk: CHANGES INSTALL.MySQL build/dbd.m4 configure.in dbd/apr_dbd_freetds.c dbd/apr_dbd_mysql.c

Posted by Bojan Smojver <bo...@rexursive.com>.
On Sun, 2007-09-09 at 15:03 -0700, Sander Temme wrote:

> ./config.nice --with-mysql=/usr

Yeah, that's pretty much like the default, as long as /usr/bin is in
your path (which on most system it is).

> ./config.nice --with-mysql=/usr/bin/mysql_config

That won't work. You cannot point to the config script, only to
location.

Let me ask the question differently. What's the location of MySQL
libraries, include files and configuration script that you'd like to
pick up?

-- 
Bojan


Re: svn commit: r572642 - in /apr/apr-util/trunk: CHANGES INSTALL.MySQL build/dbd.m4 configure.in dbd/apr_dbd_freetds.c dbd/apr_dbd_mysql.c

Posted by Sander Temme <sc...@apache.org>.
On Sep 9, 2007, at 2:33 PM, Bojan Smojver wrote:

> On Fri, 2007-09-07 at 16:50 -0700, Sander Temme wrote:
>
>> Nope.
>
> So, have you tried pointing it to your own, by passing the location to
> --with-mysql? Does it still fail?

Re-ran configure from this morning by calling

./config.nice --with-mysql=/usr

and got:

<..>
checking for mysql_config... /usr/bin/mysql_config
   adding "-I/usr/include/mysql" to CPPFLAGS
   setting LDFLAGS to "-pipe -L/usr/lib/mysql -lmysqlclient_r -lz -lm"
configure: checking for mysql in /usr
checking mysql.h usability... yes
checking mysql.h presence... yes
checking for mysql.h... yes
checking for mysql_init in -lmysqlclient_r... yes
   setting APRUTIL_INCLUDES to "-I/usr/include/mysql"
<..>
make clean all
<..>
/bin/sh /Volumes/X1/home/sctemme/asf/gump/trunk/work/workspace/apr/ 
dest-09092007/build-1/libtool --silent --mode=link  gcc -g -O2   - 
DHAVE_CONFIG_H -DDARWIN -DSIGPROCMASK_SETS_THREAD_MASK -no-cpp- 
precomp   -I/Volumes/X1/home/sctemme/work/workspace/apr-util/include - 
I/Volumes/X1/home/sctemme/work/workspace/apr-util/include/private -I/ 
Volumes/X1/home/sctemme/asf/gump/trunk/work/workspace/apr-util/ 
include/private -I/Volumes/X1/home/sctemme/asf/gump/trunk/work/ 
workspace/apr-util/include  -I/Volumes/X1/home/sctemme/asf/gump/trunk/ 
work/workspace/apr/dest-09092007/include/apr-1  -I/usr/include/mysql   
-version-info 3:0:3    -o libaprutil-1.la -rpath /Volumes/X1/home/ 
sctemme/asf/gump/trunk/work/workspace/apr-util/dest-09092007/lib  
buckets/apr_brigade.lo buckets/apr_buckets.lo buckets/ 
apr_buckets_alloc.lo buckets/apr_buckets_eos.lo buckets/ 
apr_buckets_file.lo buckets/apr_buckets_flush.lo buckets/ 
apr_buckets_heap.lo buckets/apr_buckets_mmap.lo buckets/ 
apr_buckets_pipe.lo buckets/apr_buckets_pool.lo buckets/ 
apr_buckets_refcount.lo buckets/apr_buckets_simple.lo buckets/ 
apr_buckets_socket.lo crypto/apr_md4.lo crypto/apr_md5.lo crypto/ 
apr_sha1.lo crypto/getuuid.lo crypto/uuid.lo dbm/apr_dbm.lo dbm/ 
apr_dbm_berkeleydb.lo dbm/apr_dbm_gdbm.lo dbm/apr_dbm_ndbm.lo dbm/ 
apr_dbm_sdbm.lo dbm/sdbm/sdbm.lo dbm/sdbm/sdbm_hash.lo dbm/sdbm/ 
sdbm_lock.lo dbm/sdbm/sdbm_pair.lo encoding/apr_base64.lo hooks/ 
apr_hooks.lo ldap/apr_ldap_init.lo ldap/apr_ldap_option.lo ldap/ 
apr_ldap_url.lo misc/apr_date.lo misc/apr_queue.lo misc/ 
apr_reslist.lo misc/apr_rmm.lo misc/apr_thread_pool.lo misc/ 
apu_version.lo memcache/apr_memcache.lo uri/apr_uri.lo xml/apr_xml.lo  
strmatch/apr_strmatch.lo xlate/xlate.lo dbd/apr_dbd.lo ssl/apr_ssl.lo  
ssl/apr_ssl_openssl.lo ssl/apr_ssl_socket.lo ssl/apr_ssl_winsock.lo  
dbd/apr_dbd_mysql.lo dbd/apr_dbd_sqlite3.lo   -lpthread  -lsqlite3  - 
pipe -L/usr/lib/mysql -lmysqlclient_r -lz -lm  -lexpat -liconv / 
Volumes/X1/home/sctemme/asf/gump/trunk/work/workspace/apr/ 
dest-09092007/lib/libapr-1.la -lpthread
ld: common symbols not allowed with MH_DYLIB output format with the - 
multi_module option
/usr/lib/mysql/libmysqlclient_r.a(my_error.o) definition of common  
_errbuff (size 512)
/usr/lib/mysql/libmysqlclient_r.a(my_static.o) definition of common  
_my_signals (size 4)
/usr/lib/mysql/libmysqlclient_r.a(my_thr_init.o) definition of common  
_THR_LOCK_open (size 44)
/usr/lib/mysql/libmysqlclient_r.a(my_thr_init.o) definition of common  
_THR_LOCK_malloc (size 44)
/usr/lib/mysql/libmysqlclient_r.a(my_thr_init.o) definition of common  
_LOCK_gethostbyname_r (size 44)
/usr/lib/mysql/libmysqlclient_r.a(my_thr_init.o) definition of common  
_THR_KEY_mysys (size 4)
/usr/lib/mysql/libmysqlclient_r.a(my_thr_init.o) definition of common  
_THR_LOCK_charset (size 44)
/usr/lib/mysql/libmysqlclient_r.a(my_thr_init.o) definition of common  
_THR_LOCK_heap (size 44)
/usr/lib/mysql/libmysqlclient_r.a(my_thr_init.o) definition of common  
_THR_LOCK_isam (size 44)
/usr/lib/mysql/libmysqlclient_r.a(my_thr_init.o) definition of common  
_THR_LOCK_lock (size 44)
/usr/lib/mysql/libmysqlclient_r.a(my_thr_init.o) definition of common  
_THR_LOCK_myisam (size 44)
/usr/lib/mysql/libmysqlclient_r.a(my_thr_init.o) definition of common  
_THR_LOCK_net (size 44)
/usr/lib/mysql/libmysqlclient_r.a(charset.o) definition of common  
_all_charsets (size 1024)
/usr/lib/mysql/libmysqlclient_r.a(dbug.o) definition of common  
_THR_LOCK_dbug (size 44)
/usr/bin/libtool: internal link edit command failed
make[1]: *** [libaprutil-1.la] Error 1
make: *** [all-recursive] Error 1

(same deal)

So, explicitly overriding the --with-mysql flag doesn't make it  
forget about the bundled driver.

Interestingly:

./config.nice --with-mysql=/usr/bin/mysql_config
<..>
checking for mysql_config... no
   adding "-I/usr/bin/mysql_config/include" to CPPFLAGS
   setting LDFLAGS to "-L/usr/bin/mysql_config/lib "
configure: checking for mysql in /usr/bin/mysql_config
checking mysql.h usability... no
checking mysql.h presence... no
checking for mysql.h... no
checking mysql/mysql.h usability... no
checking mysql/mysql.h presence... no
checking for mysql/mysql.h... no
<..>
make
<..>
/bin/sh /Volumes/X1/home/sctemme/asf/gump/trunk/work/workspace/apr/ 
dest-09092007/build-1/libtool --silent --mode=link  gcc -g -O2   - 
DHAVE_CONFIG_H -DDARWIN -DSIGPROCMASK_SETS_THREAD_MASK -no-cpp- 
precomp   -I/Volumes/X1/home/sctemme/work/workspace/apr-util/include - 
I/Volumes/X1/home/sctemme/work/workspace/apr-util/include/private -I/ 
Volumes/X1/home/sctemme/asf/gump/trunk/work/workspace/apr-util/ 
include/private -I/Volumes/X1/home/sctemme/asf/gump/trunk/work/ 
workspace/apr-util/include  -I/Volumes/X1/home/sctemme/asf/gump/trunk/ 
work/workspace/apr/dest-09092007/include/apr-1    -version-info  
3:0:3    -o libaprutil-1.la -rpath /Volumes/X1/home/sctemme/asf/gump/ 
trunk/work/workspace/apr-util/dest-09092007/lib buckets/ 
apr_brigade.lo buckets/apr_buckets.lo buckets/apr_buckets_alloc.lo  
buckets/apr_buckets_eos.lo buckets/apr_buckets_file.lo buckets/ 
apr_buckets_flush.lo buckets/apr_buckets_heap.lo buckets/ 
apr_buckets_mmap.lo buckets/apr_buckets_pipe.lo buckets/ 
apr_buckets_pool.lo buckets/apr_buckets_refcount.lo buckets/ 
apr_buckets_simple.lo buckets/apr_buckets_socket.lo crypto/apr_md4.lo  
crypto/apr_md5.lo crypto/apr_sha1.lo crypto/getuuid.lo crypto/uuid.lo  
dbm/apr_dbm.lo dbm/apr_dbm_berkeleydb.lo dbm/apr_dbm_gdbm.lo dbm/ 
apr_dbm_ndbm.lo dbm/apr_dbm_sdbm.lo dbm/sdbm/sdbm.lo dbm/sdbm/ 
sdbm_hash.lo dbm/sdbm/sdbm_lock.lo dbm/sdbm/sdbm_pair.lo encoding/ 
apr_base64.lo hooks/apr_hooks.lo ldap/apr_ldap_init.lo ldap/ 
apr_ldap_option.lo ldap/apr_ldap_url.lo misc/apr_date.lo misc/ 
apr_queue.lo misc/apr_reslist.lo misc/apr_rmm.lo misc/ 
apr_thread_pool.lo misc/apu_version.lo memcache/apr_memcache.lo uri/ 
apr_uri.lo xml/apr_xml.lo strmatch/apr_strmatch.lo xlate/xlate.lo dbd/ 
apr_dbd.lo ssl/apr_ssl.lo ssl/apr_ssl_openssl.lo ssl/ 
apr_ssl_socket.lo ssl/apr_ssl_winsock.lo dbd/apr_dbd_sqlite3.lo   - 
lpthread  -lsqlite3    -lexpat -liconv /Volumes/X1/home/sctemme/asf/ 
gump/trunk/work/workspace/apr/dest-09092007/lib/libapr-1.la -lpthread
<..>
(completes without error but note mysql is not on the link line in  
any form)

So now mysql_config is not found (or searched for) on the path...  
it's still there in /usr/bin!  Then configure treats the with-mysql  
parameter as a directory (as advertised in ./configure --help), does  
*not* find mysql there, and proceeds to build without mysql support  
at all!

S.

-- 
Sander Temme
sctemme@apache.org
PGP FP: 51B4 8727 466A 0BC3 69F4  B7B8 B2BE BC40 1529 24AF




Re: svn commit: r572642 - in /apr/apr-util/trunk: CHANGES INSTALL.MySQL build/dbd.m4 configure.in dbd/apr_dbd_freetds.c dbd/apr_dbd_mysql.c

Posted by Bojan Smojver <bo...@rexursive.com>.
On Fri, 2007-09-07 at 16:50 -0700, Sander Temme wrote:

> Nope.

So, have you tried pointing it to your own, by passing the location to
--with-mysql? Does it still fail?

-- 
Bojan


Re: svn commit: r572642 - in /apr/apr-util/trunk: CHANGES INSTALL.MySQL build/dbd.m4 configure.in dbd/apr_dbd_freetds.c dbd/apr_dbd_mysql.c

Posted by Sander Temme <sc...@apache.org>.
On Sep 7, 2007, at 4:38 PM, Bojan Smojver wrote:

> On Fri, 2007-09-07 at 12:38 -0700, Sander Temme wrote:
>
>> If you look at the (long) link line at the bottom, you'll see that
>> it's picking up -L/usr/lib/mysql -lmysqlclient_r , and the root cause
>> of that is probably somewhere in configure where it decides to use
>> the system MySQL despite the fact that we have one of our own.
>
> Is that with --with-mysql=/your/own/location/of/mysql? Or without  
> that?

Nope.  Here's what Gump does:

http://clarus.apache.org/apr-util/apr-util-configure/gump_work/ 
buildscript_apr-util_apr-util-configure.html

Note:

checking for mysql_config... /usr/bin/mysql_config
   adding "-I/usr/include/mysql" to CPPFLAGS
   setting LDFLAGS to "-pipe -L/usr/lib/mysql -lmysqlclient_r -lz -lm"
checking mysql.h usability... yes
checking mysql.h presence... yes
checking for mysql.h... yes
checking for mysql_init in -lmysqlclient_r... yes
   setting APRUTIL_INCLUDES to "-I/usr/include/mysql"

This does not break on vmgump because it doesn't have the appropriate  
mysql development package installed.  On MacOS X Server, you get that  
automatically.  Or maybe with the Devtools, I don't know.  I don't  
think I have any Macs without the Devtools installed.

S.

-- 
Sander Temme
sctemme@apache.org
PGP FP: 51B4 8727 466A 0BC3 69F4  B7B8 B2BE BC40 1529 24AF