Bug #5102 | configure probes for vis.h and gets it wrong | ||
---|---|---|---|
Submitted: | 18 Aug 2004 23:47 | Modified: | 9 Mar 2005 2:18 |
Reporter: | Alan Burlison | Email Updates: | |
Status: | Closed | Impact on me: | |
Category: | MySQL Server: Compiling | Severity: | S4 (Feature request) |
Version: | 4.1.3-beta | OS: | Solaris (Solaris) |
Assigned to: | Kent Boortz | CPU Architecture: | Any |
[18 Aug 2004 23:47]
Alan Burlison
[19 Aug 2004 6:32]
Matthew Lord
Hi, I'm unable to repeat the problem using forte 5.4 on solaris 9. Unfortunately I don't have 5.5 available on any development machine. I also tried the upcoming 4.1.4 version which was pulled from bitkeeper. If I make this version available on ftp.mysql.com would you be willing to try and build it to see if your problem has been addressed? Best Regards
[19 Aug 2004 11:10]
Alan Burlison
Sure I'd be happy to test it, although I'm away on holiday for a week as of tomorrow (20/08/2004)
[31 Aug 2004 11:11]
Alan Burlison
Hi Matthew, I'm back from hols and ready to give 4.1.4 a try if you can point me to the download.
[1 Oct 2004 5:54]
Krzysztof Raczkowski
got the same problem here with mysql-4.1.5-gamma: cc -DUNDEF_THREADS_HACK -DHAVE_CONFIG_H -DNO_KILL_INTR -I. -I. -I../.. -I../../include -I./../.. -I.. -O -DDBUG_OFF -D_FILE_OFFSET_BITS=64 -DHAVE_RWLOCK_T -c `test -f 'el.c' || echo './'`el.c "el.c", line 44: warning: syntax error: empty declaration source='history.c' object='history.o' libtool=no \ depfile='.deps/history.Po' tmpdepfile='.deps/history.TPo' \ depmode=none /bin/bash ../../depcomp \ cc -DUNDEF_THREADS_HACK -DHAVE_CONFIG_H -DNO_KILL_INTR -I. -I. -I../.. -I../../include -I./../.. -I.. -O -DDBUG_OFF -D_FILE_OFFSET_BITS=64 -DHAVE_RWLOCK_T -c `test -f 'history.c' || echo './'`history.c "history.c", line 44: warning: syntax error: empty declaration "history.c", line 685: warning: implicit function declaration: strunvis "history.c", line 734: warning: implicit function declaration: strvis "history.c", line 734: undefined symbol: VIS_WHITE cc: acomp failed for history.c *** Error code 2 make: Fatal error: Command failed for target `history.o' got solaris 9 here: SunOS lilo 5.9 Generic_117171-09 sun4u sparc SUNW,Sun-Fire-V210 cc: Sun C 5.5 Patch 112760-13 2004/08/10 usage: cc [ options] files. Use 'cc -flags' for details
[1 Oct 2004 11:20]
Matthew Lord
Hi, Could you provide the specific build process being used, compiler, linker and configure options? If I can not repeat this using the same build process then that will help me narrow it down and the next biggest difference I see is the version of Forte. I will also see if we can get Forte 5.5 on one of our build machines. Best Regards
[1 Oct 2004 13:13]
Krzysztof Raczkowski
Could you provide the specific build process being used, compiler, linker and configure options? i run it with this command: CFLAGS="-xtarget=ultra3i -xarch=v8plus -xcache=64/32/4:1024/64/4 -s" \ ./configure --prefix=$INSTALL_DIR --enable-thread-safe-client --enable-assembler \ --with-mysqld-user=mysql --with-pthread but even with no additional compiler/linker/configure options (with pure ./configure and CFLAGS=" and LDFLAGS="" i get the same error it looks like the problem described above - with wrong header files for history.c . I also noticed this when running ./configure (i don't think it's supposed to show ;-)): [...] checking how to run the C preprocessor... cc -E cc: Warning: option -- passed to ld usage: cc [ options] files. Use 'cc -flags' for details checking "C Compiler version"... "cc " CC: Warning: Option --version passed to ld, if ld is invoked, ignored otherwise /usr/ccs/bin/ld: illegal option -- - /usr/ccs/bin/ld: illegal option -- v usage: ld [-6:abc:d:e:f:h:il:mo:p:rstu:z:B:CD:F:GI:L:M:N:P:Q:R:S:VY:?] file(s) [-64] enforce a 64-bit link-edit [-a] create an absolute file [-b] do not do special PIC relocations in a.out [-B direct] specify `direct' bindings for executable when run [-B dynamic | static] search for shared libraries|archives [-B eliminate] eliminate unqualified global symbols from the symbol table [-B group] relocate object from within group [-B local] reduce unqualified global symbols to local [-B reduce] process symbol reductions [-B symbolic] bind external references to definitions when creating shared objects [-c name] record configuration file `name' [-C] demangle C++ symbol name diagnostics [-d y | n] operate in dynamic|static mode [-D token,...] print diagnostic messages [-e epsym] use `epsym' as entry point address [-f name] specify library for which this file is an auxiliary filter [-F name] specify library for which this file is a filter [-G] create a shared object [-h name] use `name' as internal shared object identifier [-i] ignore LD_LIBRARY_PATH setting [-I name] use `name' as path of interpreter [-l x] search for libx.so or libx.a [-L path] search for libraries in directory `path' [-m] print memory map [-M mapfile] use processing directives contained in `mapfile' [-N string] create a dynamic dependency for `string' [-o outfile] name the output file `outfile' [-p auditlib] identify audit library to accompany this object [-P auditlib] identify audit library for processing the dependencies of this object [-Q y | n] do|do not place version information in output file [-r] create a relocatable object [-R path] specify a library search path to be used at run time [-s] strip any symbol and debugging information [-S supportlib] specify a link-edit support library [-t] do not warn of multiply-defined symbols that have different sizes or alignments [-u symname] create an undefined symbol `symname' [-V] print version information [-Y P,dirlist] use `dirlist' as a default path when searching for libraries [-z absexec] when building an executable absolute symbols referenced in dynamic objects are promoted to the executable [-z allextract | defaultextract | weakextract] extract all member files, only members that resolve undefined tor tentative symbols, or allow extraction of archive members to resolvetweak references from archive files [-z combreloc] combine multiple relocation sections [-z nocompstrtab] disable compression of string tables [-z defs] disallow undefined symbol references [-z direct | nodirect] enable|disable direct binding to shared object dependencies [-z endfiltee] marks a filtee such that it will terminate a filters search [-z finiarray=function] name of function to be appended to the .finiarray [-z groupperm | nogroupperm] enable|disable setting of group permissions on dynamic dependencies [-z ignore | record] ignore|record unused dynamic dependencies [-z initarray=function] name of function to be appended to the .initarray [-z initfirst] mark object to indicate that its .init section should be executed before the .init section of any other objects [-z interpose] dynamic object is to be an `interposer' on direct bindings [-z lazyload | nolazyload] enable|disable delayed loading of shared object dependencies [-z ld32=arg1,arg2,...] define arguments applicable to the 32-bit class of ld(1) [-z ld64=arg1,arg2,...] define arguments applicable to the 64-bit class of ld(1) [-z loadfltr] mark filter as requiring immediate loading of its filtees at runtime [-z muldefs] allow multiply-defined symbols [-z nodefs] allow undefined symbol references [-z nodefaultlib] mark object to ignore any default library search path [-z nodelete] mark object as non-deletable [-z nodlopen] mark object as non-dlopen()'able [-z nodump] mark object as non-dldump()'able [-z nopartial] expand any partially initialized symbols [-z noversion] don't record any version sections [-z now] mark object as requiring non-lazy binding [-z origin] mark object as requiring $ORIGIN processing [-z preinitarray=function] name of function to be appended to the .preinitarray [-z redlocsym] reduce local syms in .symtab to a minimum [-z rescan] rescan archive list until no further member extraction occurs [-z text] disallow output relocations against text [-z textoff] allow output relocations against text [-z textwarn] warn if there are relocations against text [-z verbose] generate warnings for suspicious processings checking "C++ compiler version"... "CC " [...]
[20 Oct 2004 5:28]
Matthew Lord
Hi Alan, Does this not work if you add -I /usr/platform/sun4u/include/sys/vis.h ? I ran into a very similar problem when using mwcc on os x. I will mark this as verified and a feature request, since we should be looking for some of the things we need rather than just the file when possible. Thanks for informing us of this.
[22 Oct 2004 12:41]
Krzysztof Raczkowski
Here is an output of my trying to compile 4.1.6-gamma with CPPFLAGS="-I /usr/platform/sun4u/include/sys/vis.h" added: cc -DUNDEF_THREADS_HACK -DHAVE_CONFIG_H -DNO_KILL_INTR -I. -I. -I../.. -I../../include -I./../.. -I.. -I /usr/platform/sun4u/include/sys/vis.h -O -DDBUG_OFF -xtarget=ultra3i -xarch=v8plus -xcache=64/32/4:1024/64/4 -xO5 -fast -s -D_FILE_OFFSET_BITS=64 -DHAVE_RWLOCK_T -c `test -f 'history.c' || echo './'`history.c cc: Warning: -xarch=native has been explicitly specified, or implicitly specified by a macro option, -xarch=native on this architecture implies -xarch=v8plusb which generates code that does not run on pre UltraSPARC III processors "history.c", line 44: warning: syntax error: empty declaration "history.c", line 685: warning: implicit function declaration: strunvis "history.c", line 734: warning: implicit function declaration: strvis "history.c", line 734: undefined symbol: VIS_WHITE cc: acomp failed for history.c *** Error code 2 make: Fatal error: Command failed for target `history.o' Current working directory /export/home/raczkow/src/mysql41/src/mysql-4.1.6-gamma/cmd-line-utils/libedit
[3 Nov 2004 9:13]
Krzysztof Raczkowski
still the same error on mysql-4.1.7
[3 Nov 2004 17:44]
Darin Broady
I have the exact same problem: Sun Studio 8 (C/C++ 5.5) and configure finding the wrong vis.h. To temporarily remedy this, I edited config.h & include/my_config.h and undef'ed the HAVE_VIS_H. This will force history.c to include "np/vis.h", which will then compile correctly. Hopefully, this workaround will work for you.
[9 Mar 2005 2:18]
Kent Boortz
Thank you for your bug report. This issue has been committed to our source repository of that product and will be incorporated into the next release. If necessary, you can access the source repository and build the latest available version, including the bugfix, yourself. More information about accessing the source trees is available at http://www.mysql.com/doc/en/Installing_source_tree.html Additional info: configure now checks not only that the header file exists, but also that the strvis() function exists before it sets HAVE_VIS_H. This also corrects part of bug#6862. It might as well correct bug#7371, but this is not verified.
[29 Mar 2005 16:44]
Boyd GERBER
UnixWare 7.1.X has the same problem.