| Bug #18276 | does not build (failure to link) on AIX | ||
|---|---|---|---|
| Submitted: | 16 Mar 2006 11:04 | Modified: | 23 Mar 2006 16:16 |
| Reporter: | Riccardo | Email Updates: | |
| Status: | Won't fix | Impact on me: | |
| Category: | MySQL Server | Severity: | S3 (Non-critical) |
| Version: | 5.0.19 | OS: | IBM AIX (AIX 4.2.1) |
| Assigned to: | CPU Architecture: | Any | |
[16 Mar 2006 14:46]
Valeriy Kravchuk
Thank you for a problem report. Can you upgrade to AIX 4.3.3 or newer? That is the only AIX 4.x we have. I will not be really able to help you otherwise. Please, note also that we do not really use gcc to build on AIX.
[16 Mar 2006 14:55]
Riccardo
no, I cannot upgrade to aix 4.3 in a forseeable future and we don't have developer licenses for xlc here. Looking around the ned, I found that other people had a similar problems on aix 4.3 too, for example http://lists.mysql.com/mysql/67097 unfortunately no follow-up with a solution or workaround is posted. Do you use particular configure options that may help ?
[23 Mar 2006 16:16]
Valeriy Kravchuk
We will not be able to deal with AIX 4.2 and gcc build in a foreseeable future. Anyway, the following configure options are usually used to build on AIX 5.2, for example: ./configure --prefix=/usr/local/mysql --localstatedir=/usr/local/mysql/data --libexecdir=/usr/local/mysql/bin --with-extra-charsets=complex --enable-thread-safe-client --enable-local-infile --with-named-z-libs=no --disable-largefile --disable-shared --with-big-tables --with-readline --with-archive-storage-engine --with-innodb Simple ./configure --prefix=... should also work.

Description: when compiling with gcc 3.4.5 on aix 4.2.1 compilation fails. I get many warnings form the linkers like ld: 0711-341 WARNING: Replaced XTY_CM symbol _mutex_global_np requires an alignment more strict than the alignment of the symbol that replaces it. then the make fails with: ld: 0711-341 WARNING: Replaced XTY_CM symbol _mutex_global_np requires an alignment more strict than the alignment of the symbol that replaces it. ld: 0711-224 WARNING: Duplicate symbol: .nsleep ld: 0711-224 WARNING: Duplicate symbol: .sigpending ld: 0711-224 WARNING: Duplicate symbol: .sigaction ld: 0711-224 WARNING: Duplicate symbol: .sigsuspend ld: 0711-224 WARNING: Duplicate symbol: .pause ld: 0711-345 Use the -bloadmap or -bnoquiet option to obtain more information. ld: 0711-317 ERROR: Undefined symbol: thread_unlock ld: 0711-317 ERROR: Undefined symbol: _nsleep ld: 0711-317 ERROR: Undefined symbol: _sigpending ld: 0711-317 ERROR: Undefined symbol: _sigaction ld: 0711-317 ERROR: Undefined symbol: thread_kill ld: 0711-317 ERROR: Undefined symbol: thread_userdata ld: 0711-317 ERROR: Undefined symbol: thread_twakeup ld: 0711-317 ERROR: Undefined symbol: _sigsuspend ld: 0711-317 ERROR: Undefined symbol: thread_tsleep ld: 0711-317 ERROR: Undefined symbol: _pause ld: 0711-317 ERROR: Undefined symbol: thread_setmystate ld: 0711-317 ERROR: Undefined symbol: thread_setstate ld: 0711-317 ERROR: Undefined symbol: thread_terminate_ack ld: 0711-317 ERROR: Undefined symbol: thread_waitlock collect2: ld returned 8 exit status How to repeat: I configured using the suggested flags: CFLAGS="-O3" CXX=gcc CXXFLAGS="-O3 -felide-constructors -fno-exceptions -fno-rtti" ./configure --prefix=/usr/local/mysql --enable-assembler --with-mysqld-ldflags=-all-static I tried reconfiguring by adding LDFLAGS="-Wl,-bbigtoc" but it did not help. It appears to be a thread library problem