Bug #6203 | Can not compile Mysql-4.1.6-gamma/MySQL-4.1.7/MySQL-4.1.8 on OpenServer 5.0.X | ||
---|---|---|---|
Submitted: | 21 Oct 2004 19:05 | Modified: | 13 Oct 2005 16:08 |
Reporter: | Boyd GERBER | Email Updates: | |
Status: | Won't fix | Impact on me: | |
Category: | MySQL Server: Compiling | Severity: | S3 (Non-critical) |
Version: | mysql-4.1.6-gamma/mysql-4.1.7/mysql-4.1.8 | OS: | OpenServer 5.0.X |
Assigned to: | Lenz Grimmer | CPU Architecture: | Any |
[21 Oct 2004 19:05]
Boyd GERBER
[22 Oct 2004 17:59]
MySQL Verification Team
Boyd, Please see in config.log, how did it happen that HAVE_CLOCK_GETTIME got defined on your SCO. It should probably be undefined. If config checking was OK, please check which of SCO include files contains the above definitions. Then check with C pre-processor why it was not included. Thanks in advance.
[23 Oct 2004 18:38]
Boyd GERBER
This line is why it gets set. configure:32979: checking for clock_gettime configure:33037: gcc -o conftest -g -O -DDBUG_ON -DSAFE_MUTEX -belf -DSCO -be lf -belf conftest.c -lgthreads -lsocket -lgthreads -lcrypt -lm -lgthreads - lsocket -lgthreads >&5 configure:33040: $? = 0 configure:33043: test -s conftest configure:33046: $? = 0 configure:33057: result: yes /usr/include/sys/clock.h defines most of the clock functions on OpenServer 5.0.7. The problem is OpenServer has always had time functions and the linux time functions are a bit different than the ones on OpenServer.
[23 Oct 2004 18:44]
Boyd GERBER
FSU-threads in signal.h has /usr/include/pthread/signal.h:#ifndef CLOCK_REALTIME /usr/include/pthread/signal.h:#define CLOCK_REALTIME 0 /usr/include/pthread/signal.h:#else /* CLOCK_REALTIME */ /usr/include/pthread/signal.h:#endif /* CLOCK_REALTIME */ and in /usr/include/sys/sudstime.h:#define CLOCK_REALTIME 1 These function only have recently started being used by MySQL.
[25 Oct 2004 18:26]
MySQL Verification Team
Boyd, Which include files exactly should be included ?? Can you please check out with pre-processor output (-E) why these files are not included on your system ?? That would help us a lot .... Thanks in advance.
[31 Oct 2004 21:31]
Boyd GERBER
This is what I have to do to config.h for MySQL-4.1.7 as well. *** config.h.org Sun Oct 31 18:14:33 2004 --- config.h Sun Oct 31 18:22:58 2004 *************** *** 176,182 **** /* #undef HAVE_CHSIZE */ /* Define to 1 if you have the `clock_gettime' function. */ ! #define HAVE_CLOCK_GETTIME 1 /* Define to enable compression support */ #define HAVE_COMPRESS 1 --- 176,182 ---- /* #undef HAVE_CHSIZE */ /* Define to 1 if you have the `clock_gettime' function. */ ! /* #define HAVE_CLOCK_GETTIME 1 */ /* Define to enable compression support */ #define HAVE_COMPRESS 1 Also in sql I have to change the Makefile to... *** sql/Makefile.org Sun Oct 31 18:14:26 2004 --- sql/Makefile Sun Oct 31 18:54:28 2004 *************** *** 328,334 **** mysqld_LDADD = \ ! -L$(top_builddir)/bdb/build_unix -ldb $(top_builddir)/innobase/usr/libusr.a $(top_builddir)/innobase/srv/libsrv.a $(top_builddir)/innobase/dict/libdict.a $(top_builddir)/innobase/que/libque.a $(top_builddir)/innobase/srv/libsrv.a $(top_builddir)/innobase/ibuf/libibuf.a $(top_builddir)/innobase/row/librow.a $(top_builddir)/innobase/pars/libpars.a $(top_builddir)/innobase/btr/libbtr.a $(top_builddir)/innobase/trx/libtrx.a $(top_builddir)/innobase/read/libread.a $(top_builddir)/innobase/usr/libusr.a $(top_builddir)/innobase/buf/libbuf.a $(top_builddir)/innobase/ibuf/libibuf.a $(top_builddir)/innobase/eval/libeval.a $(top_builddir)/innobase/log/liblog.a $(top_builddir)/innobase/fsp/libfsp.a $(top_builddir)/innobase/fut/libfut.a $(top_builddir)/innobase/fil/libfil.a $(top_builddir)/innobase/lock/liblock.a $(top_builddir)/innobase/mtr/libmtr.a $(top_builddir)/innobase/page/libpage.a $(top_builddir)/innobase/rem/librem.a $(top_builddir)/innobase/thr/libthr.a $(top_builddir)/innobase/sync/libsync.a $(top_builddir)/innobase/data/libdata.a $(top_builddir)/innobase/mach/libmach.a $(top_builddir)/innobase/ha/libha.a $(top_builddir)/innobase/dyn/libdyn.a $(top_builddir)/innobase/mem/libmem.a $(top_builddir)/innobase/sync/libsync.a $(top_builddir)/innobase/ut/libut.a $(top_builddir)/innobase/os/libos.a $(top_builddir)/innobase/ut/libut.a \ \ \ $(LDADD) $(CXXLDFLAGS) $(WRAPLIBS) -ldl -L/usr/local/lib/ -lssl -lcrypto --- 328,334 ---- mysqld_LDADD = \ ! -L$(top_builddir)/bdb/build_unix -ldb $(top_builddir)/bdb/build_unix/libdb.a $(top_builddir)/innobase/usr/libusr.a $(top_builddir)/innobase/srv/libsrv.a $(top_builddir)/innobase/dict/libdict.a $(top_builddir)/innobase/que/libque.a $(top_builddir)/innobase/srv/libsrv.a $(top_builddir)/innobase/ibuf/libibuf.a $(top_builddir)/innobase/row/librow.a $(top_builddir)/innobase/pars/libpars.a $(top_builddir)/innobase/btr/libbtr.a $(top_builddir)/innobase/trx/libtrx.a $(top_builddir)/innobase/read/libread.a $(top_builddir)/innobase/usr/libusr.a $(top_builddir)/innobase/buf/libbuf.a $(top_builddir)/innobase/ibuf/libibuf.a $(top_builddir)/innobase/eval/libeval.a $(top_builddir)/innobase/log/liblog.a $(top_builddir)/innobase/fsp/libfsp.a $(top_builddir)/innobase/fut/libfut.a $(top_builddir)/innobase/fil/libfil.a $(top_builddir)/innobase/lock/liblock.a $(top_builddir)/innobase/mtr/libmtr.a $(top_builddir)/innobase/page/libpage.a $(top_builddir)/innobase/rem/librem.a $(top_builddir)/innobase/thr/libthr.a $(top_builddir)/innobase/sync/libsync.a $(top_builddir)/innobase/data/libdata.a $(top_builddir)/innobase/mach/libmach.a $(top_builddir)/innobase/ha/libha.a $(top_builddir)/innobase/dyn/libdyn.a $(top_builddir)/innobase/mem/libmem.a $(top_builddir)/innobase/sync/libsync.a $(top_builddir)/innobase/ut/libut.a $(top_builddir)/innobase/os/libos.a $(top_builddir)/innobase/ut/libut.a \ \ \ $(LDADD) $(CXXLDFLAGS) $(WRAPLIBS) -ldl -L/usr/local/lib/ -lssl -lcrypto
[31 Oct 2004 21:34]
Boyd GERBER
The below is also needed when Berkeley DB is use with any MySQL-4.X.X. *** sql/Makefile.org Sun Oct 31 18:14:26 2004 --- sql/Makefile Sun Oct 31 18:54:28 2004 *************** *** 328,334 **** mysqld_LDADD = \ ! -L$(top_builddir)/bdb/build_unix -ldb $(top_builddir)/innobase/usr/libusr.a $(top_builddir)/innobase/srv/libsrv.a $(top_builddir)/innobase/dict/libdict.a $(top_builddir)/innobase/que/libque.a $(top_builddir)/innobase/srv/libsrv.a $(top_builddir)/innobase/ibuf/libibuf.a $(top_builddir)/innobase/row/librow.a $(top_builddir)/innobase/pars/libpars.a $(top_builddir)/innobase/btr/libbtr.a $(top_builddir)/innobase/trx/libtrx.a $(top_builddir)/innobase/read/libread.a $(top_builddir)/innobase/usr/libusr.a $(top_builddir)/innobase/buf/libbuf.a $(top_builddir)/innobase/ibuf/libibuf.a $(top_builddir)/innobase/eval/libeval.a $(top_builddir)/innobase/log/liblog.a $(top_builddir)/innobase/fsp/libfsp.a $(top_builddir)/innobase/fut/libfut.a $(top_builddir)/innobase/fil/libfil.a $(top_builddir)/innobase/lock/liblock.a $(top_builddir)/innobase/mtr/libmtr.a $(top_builddir)/innobase/page/libpage.a $(top_builddir)/innobase/rem/librem.a $(top_builddir)/innobase/thr/libthr.a $(top_builddir)/innobase/sync/libsync.a $(top_builddir)/innobase/data/libdata.a $(top_builddir)/innobase/mach/libmach.a $(top_builddir)/innobase/ha/libha.a $(top_builddir)/innobase/dyn/libdyn.a $(top_builddir)/innobase/mem/libmem.a $(top_builddir)/innobase/sync/libsync.a $(top_builddir)/innobase/ut/libut.a $(top_builddir)/innobase/os/libos.a $(top_builddir)/innobase/ut/libut.a \ \ \ $(LDADD) $(CXXLDFLAGS) $(WRAPLIBS) -ldl -L/usr/local/lib/ -lssl -lcrypto --- 328,334 ---- mysqld_LDADD = \ ! -L$(top_builddir)/bdb/build_unix -ldb $(top_builddir)/bdb/build_unix/libdb.a $(top_builddir)/innobase/usr/libusr.a $(top_builddir)/innobase/srv/libsrv.a $(top_builddir)/innobase/dict/libdict.a $(top_builddir)/innobase/que/libque.a $(top_builddir)/innobase/srv/libsrv.a $(top_builddir)/innobase/ibuf/libibuf.a $(top_builddir)/innobase/row/librow.a $(top_builddir)/innobase/pars/libpars.a $(top_builddir)/innobase/btr/libbtr.a $(top_builddir)/innobase/trx/libtrx.a $(top_builddir)/innobase/read/libread.a $(top_builddir)/innobase/usr/libusr.a $(top_builddir)/innobase/buf/libbuf.a $(top_builddir)/innobase/ibuf/libibuf.a $(top_builddir)/innobase/eval/libeval.a $(top_builddir)/innobase/log/liblog.a $(top_builddir)/innobase/fsp/libfsp.a $(top_builddir)/innobase/fut/libfut.a $(top_builddir)/innobase/fil/libfil.a $(top_builddir)/innobase/lock/liblock.a $(top_builddir)/innobase/mtr/libmtr.a $(top_builddir)/innobase/page/libpage.a $(top_builddir)/innobase/rem/librem.a $(top_builddir)/innobase/thr/libthr.a $(top_builddir)/innobase/sync/libsync.a $(top_builddir)/innobase/data/libdata.a $(top_builddir)/innobase/mach/libmach.a $(top_builddir)/innobase/ha/libha.a $(top_builddir)/innobase/dyn/libdyn.a $(top_builddir)/innobase/mem/libmem.a $(top_builddir)/innobase/sync/libsync.a $(top_builddir)/innobase/ut/libut.a $(top_builddir)/innobase/os/libos.a $(top_builddir)/innobase/ut/libut.a \ \ \ $(LDADD) $(CXXLDFLAGS) $(WRAPLIBS) -ldl -L/usr/local/lib/ -lssl -lcrypto
[17 Dec 2004 0:51]
Boyd GERBER
Still exists with the latest release. This should be documented if it is not going to be fixed. This is now the third release with the same problem. This sure does not look to me like you follow this from the MySQL Web Site. http://dev.mysql.com/doc/mysql/en/Release_philosophy.html Our aim is to fix everything that is fixable without risk of making a stable MySQL version less stable. In certain cases, this means we can fix an issue in the development versions, but not in the stable (production) version. Naturally, we document such issues so that users are aware of them. Does this mean this will not be fixed. If yes then the Manual should document it.
[17 Dec 2004 0:55]
Boyd GERBER
/bin/ksh ../libtool --preserve-dup-deps --mode=link gcc -O3 -DDBUG_OFF -DSCO -fno-implicit-templates -fno-exceptions -fno-rtti -belf -o mysqld sql_lex.o sql_handler.o item.o item_sum.o item_buff.o item_func.o item_cmpfunc.o item_strfunc.o item_timefunc.o thr_malloc.o item_create.o item_subselect.o item_row.o item_geofunc.o field.o strfunc.o key.o sql_class.o sql_list.o net_serv.o protocol.o sql_state.o lock.o my_lock.o sql_string.o sql_manager.o sql_map.o mysqld.o password.o hash_filo.o hostname.o set_var.o sql_parse.o sql_yacc.o sql_base.o table.o sql_select.o sql_insert.o sql_prepare.o sql_error.o sql_update.o sql_delete.o uniques.o sql_do.o procedure.o item_uniq.o sql_test.o log.o log_event.o init.o derror.o sql_acl.o unireg.o des_key_file.o discover.o time.o opt_range.o opt_sum.o records.o filesort.o handler.o ha_heap.o ha_myisam.o ha_myisammrg.o ha_berkeley.o ha_innodb.o ha_isam.o ha_isammrg.o ha_ndbcluster.o sql_db.o sql_table.o sql_rename.o sql_crypt.o sql_load.o mf_iocache.o field_conv.o sql_show.o sql_udf.o sql_analyse.o sql_cache.o slave.o sql_repl.o sql_union.o sql_derived.o client.o sql_client.o mini_client_errors.o pack.o stacktrace.o repl_failsafe.o gstream.o spatial.o sql_help.o protocol_cursor.o tztime.o my_time.o ha_example.o ha_archive.o ha_tina.o -L../bdb/build_unix -ldb ../innobase/usr/libusr.a ../innobase/srv/libsrv.a ../innobase/dict/libdict.a ../innobase/que/libque.a ../innobase/srv/libsrv.a ../innobase/ibuf/libibuf.a ../innobase/row/librow.a ../innobase/pars/libpars.a ../innobase/btr/libbtr.a ../innobase/trx/libtrx.a ../innobase/read/libread.a ../innobase/usr/libusr.a ../innobase/buf/libbuf.a ../innobase/ibuf/libibuf.a ../innobase/eval/libeval.a ../innobase/log/liblog.a ../innobase/fsp/libfsp.a ../innobase/fut/libfut.a ../innobase/fil/libfil.a ../innobase/lock/liblock.a ../innobase/mtr/libmtr.a ../innobase/page/libpage.a ../innobase/rem/librem.a ../innobase/thr/libthr.a ../innobase/sync/libsync.a ../innobase/data/libdata.a ../innobase /mach/libmach.a ../innobase/ha/libha.a ../innobase/dyn/libdyn.a ../innobase/mem/libmem.a ../innobase/sync/libsync.a ../innobase/ut/libut.a ../innobase/os/libos.a ../innobase/ut/libut.a ../myisam/libmyisam.a ../myisammrg/libmyisammrg.a ../heap/libheap.a ../vio/libvio.a ../mysys/libmysys.a ../dbug/libdbug.a ../regex/libregex.a ../strings/libmystrings.a -lz -ldl -L/usr/local/lib/ -lssl -lcrypto -lgthreads -lsocket -lgthreads -lcrypt -lm -lgthreads -lsocket -lgthreads gcc -O3 -DDBUG_OFF -DSCO -fno-implicit-templates -fno-exceptions -fno-rtti -belf -o mysqld sql_lex.o sql_handler.o item.o item_sum.o item_buff.o item_func.o item_cmpfunc.o item_strfunc.o item_timefunc.o thr_malloc.o item_create.o item_subselect.o item_row.o item_geofunc.o field.o strfunc.o key.o sql_class.o sql_list.o net_serv.o protocol.o sql_state.o lock.o my_lock.o sql_string.o sql_manager.o sql_map.o mysqld.o password.o hash_filo.o hostname.o set_var.o sql_parse.o sql_yacc.o sql_base.o table.o sql_select.o sql_insert.o sql_prepare.o sql_error.o sql_update.o sql_delete.o uniques.o sql_do.o procedure.o item_uniq.o sql_test.o log.o log_event.o init.o derror.o sql_acl.o unireg.o des_key_file.o discover.o time.o opt_range.o opt_sum.o records.o filesort.o handler.o ha_heap.o ha_myisam.o ha_myisammrg.o ha_berkeley.o ha_innodb.o ha_isam.o ha_isammrg.o ha_ndbcluster.o sql_db.o sql_table.o sql_rename.o sql_crypt.o sql_load.o mf_iocache.o field_conv.o sql_show.o sql_udf.o sql_analyse.o sql_cache.o slave.o sql_repl.o sql_union.o sql_derived.o client.o sql_client.o mini_client_errors.o pack.o stacktrace.o repl_failsafe.o gstream.o spatial.o sql_help.o protocol_cursor.o tztime.o my_time.o ha_example.o ha_archive.o ha_tina.o -L/usr/zenez/build/osr5/mysql-4.1.8/bdb/build_unix -L/usr/lib /usr/lib/libdb.so -lrpcsvc -lsocket ../innobase/usr/libusr.a ../innobase/srv/libsrv.a ../innobase/dict/libdict.a ../innobase/que/libque.a ../innobase/srv/libsrv.a ../innobase/ibuf/libibuf.a ../innobase/row/librow.a ../innobase/pars/libpars.a ../innobase/btr/libbtr.a ../innobase/trx/libtrx.a ../innobase/read/libread.a ../innobase/usr/libusr.a ../innobase/buf/libbuf.a ../innobase/ibuf/libibuf.a ../innobase/eval/libeval.a ../innobase/log/liblog.a ../innobase/fsp/libfsp.a ../innobase/fut/libfut.a ../innobase/fil/libfil.a ../innobase/lock/liblock.a ../innobase/mtr/libmtr.a ../innobase/page/libpage.a ../innobase/rem/librem.a ../innobase/thr/libthr.a ../innobase/sync/libsync.a ../innobase/data/libdata.a ../innobase/mach/libmach.a ../innobase/ha/libha.a ../innobase/dyn/libdyn.a ../innobase/mem/libmem.a ../innobase/sync/libsync.a ../innobase/ut/libut.a ../innobase/os/libos.a ../innobase/ut/libut.a ../myisam/libmyisam.a ../myisammrg/libmyisammrg.a ../heap/libheap.a ../vio/libvio.a ../mysys/libmysys.a ../dbug/libdbug.a ../regex/libregex.a ../strings/libmystrings.a /usr/lib/libz.so -ldl -L/usr/local/lib/ -lssl -lcrypto -lgthreads -lsocket -lgthreads -lcrypt -lm -lgthreads -lsocket -lgthreads Undefined first referenced symbol in file txn_commit ha_berkeley.o txn_begin ha_berkeley.o txn_abort ha_berkeley.o UX:i386ld: ERROR: Symbol referencing errors. No output written to mysqld collect2: ld returned 1 exit status make[4]: *** [mysqld] Error 1 Work around is to edit the Makefile and add libbdb.a instead of libbdb.so or in addition to it.
[6 Jan 2005 3:00]
Boyd GERBER
A work around is to install gwxlibs. This installs a libdb in a /usr/lib that will allow the symbols to be defined. Newer versions of gwxlibs may not work as a work around.
[13 Oct 2005 16:08]
Lenz Grimmer
Our Director of Architecture decided we don't support OpenServer 5 anymore. Closing this as "Won't fix"