Bug #50543 Build of src.rpm fails on SLES11 ppc64
Submitted: 22 Jan 2010 13:11 Modified: 23 Jul 2010 15:52
Reporter: Jens Schanz Email Updates:
Status: Not a Bug Impact on me:
None 
Category:MySQL Server: Compiling Severity:S1 (Critical)
Version:5.1.48 OS:Other (IBM system p, SLES 11)
Assigned to: CPU Architecture:Any

[22 Jan 2010 13:11] Jens Schanz
Description:
/bin/sh ../../libtool --preserve-dup-deps --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I../../include -I../../include -I../../include -I../../regex -I./include -I../../sql -I. -I../../zlib    -DMYSQL_DYNAMIC_PLUGIN -O2 -g -fmessage-length=0 -D_FORTIFY_SOURCE=2 -fstack-protector -funwind-tables -fasynchronous-unwind-tables   -DUNIV_LINUX -DUNIV_LINUX -MT ha_innodb_plugin_la-btr0sea.lo -MD -MP -MF .deps/ha_innodb_plugin_la-btr0sea.Tpo -c -o ha_innodb_plugin_la-btr0sea.lo `test -f 'btr/btr0sea.c' || echo './'`btr/btr0sea.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I../../include -I../../include -I../../include -I../../regex -I./include -I../../sql -I. -I../../zlib -DMYSQL_DYNAMIC_PLUGIN -O2 -g -fmessage-length=0 -D_FORTIFY_SOURCE=2 -fstack-protector -funwind-tables -fasynchronous-unwind-tables -DUNIV_LINUX -DUNIV_LINUX -MT ha_innodb_plugin_la-btr0sea.lo -MD -MP -MF .deps/ha_innodb_plugin_la-btr0sea.Tpo -c btr/btr0sea.c  -fPIC -DPIC -o .libs/ha_innodb_plugin_la-btr0sea.o
./include/sync0sync.ic: In function ‘btr_search_enable’:
./include/sync0sync.ic:83: internal compiler error: Speicherzugriffsfehler
Please submit a full bug report,
with preprocessed source if appropriate.
See <http://bugs.opensuse.org/> for instructions.
make[2]: *** [ha_innodb_plugin_la-btr0sea.lo] Fehler 1
make[2]: Leaving directory `/usr/src/packages/BUILD/mysql-5.1.42/storage/innodb_plugin'
make[1]: *** [all-recursive] Fehler 1
make[1]: Leaving directory `/usr/src/packages/BUILD/mysql-5.1.42/storage'
make: *** [all-recursive] Fehler 1
error: Bad exit status from /var/tmp/rpm-tmp.68912 (%build)

RPM build errors:
    Bad exit status from /var/tmp/rpm-tmp.68912 (%build)

How to repeat:
rpmbuild --rebuild --target=ppc64 --define 'community 1' MySQL-community-
5.1.42-0.sles11.src.rpm 
rpmbuild --rebuild --target=ppc64 --define 'community 1' MySQL-community-5.1.41-0.sles11.src.rpm 
rpmbuild --rebuild --target=ppc64 --define 'community 1' MySQL-community-5.1.39-0.sles11.src.rpm
[23 Jan 2010 12:36] Jens Schanz
I've checked this yesterday on SLES10 SP1 on ppc64
Both versions 

MySQL-community-5.1.42-0.sles11.src.rpm
and
MySQL-community-5.1.42-0.sles10.src.rpm

compiles successfully.
[19 Feb 2010 13:40] Susanne Ebrecht
Which compiler did you use?

Did you use Gnu make (gmake) or something different?
[24 Feb 2010 9:08] Jens Schanz
gcc-4.3 -v
Using built-in specs.
Target: powerpc64-suse-linux
Configured with: ../configure --prefix=/usr --infodir=/usr/share/info --mandir=/usr/share/man --libdir=/usr/lib64 --libexecdir=/usr/lib64 --enable-languages=c,c++,objc,fortran,obj-c++,java --enable-checking=release --with-gxx-include-dir=/usr/include/c++/4.3 --enable-ssp --disable-libssp --with-bugurl=http://bugs.opensuse.org/ --with-pkgversion='SUSE Linux' --disable-libgcj --disable-libmudflap --with-slibdir=/lib64 --with-system-zlib --enable-__cxa_atexit --enable-libstdcxx-allocator=new --disable-libstdcxx-pch --enable-version-specific-runtime-libs --program-suffix=-4.3 --enable-linux-futex --without-system-libunwind --with-cpu=power4 --enable-secureplt --with-long-double-128 --build=powerpc64-suse-linux
Thread model: posix
gcc version 4.3.2 [gcc-4_3-branch revision 141291] (SUSE Linux)

make -v
GNU Make 3.81
Copyright (C) 2006  Free Software Foundation, Inc.
This is free software; see the source for copying conditions.
There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A
PARTICULAR PURPOSE.

This program built for powerpc64-unknown-linux-gnu
[17 Jun 2010 12:08] Valeriy Kravchuk
Please, check with a newer version, 5.1.48, and inform about the results.
[21 Jun 2010 7:36] Jens Schanz
Same problem while compiling innodb_plugin ... 

Making all in innodb_plugin
make[2]: Entering directory `/usr/src/packages/BUILD/mysql-5.1.48/storage/innodb_plugin'
/bin/sh ../../libtool --preserve-dup-deps --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I../../include -I../../include -I../../include -I../../regex -I./include -I../../sql -I. -I../../zlib    -DMYSQL_DYNAMIC_PLUGIN -O2 -g -fmessage-length=0 -D_FORTIFY_SOURCE=2 -fstack-protector -funwind-tables -fasynchronous-unwind-tables   -DUNIV_LINUX -DUNIV_LINUX -MT ha_innodb_plugin_la-btr0btr.lo -MD -MP -MF .deps/ha_innodb_plugin_la-btr0btr.Tpo -c -o ha_innodb_plugin_la-btr0btr.lo `test -f 'btr/btr0btr.c' || echo './'`btr/btr0btr.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I../../include -I../../include -I../../include -I../../regex -I./include -I../../sql -I. -I../../zlib -DMYSQL_DYNAMIC_PLUGIN -O2 -g -fmessage-length=0 -D_FORTIFY_SOURCE=2 -fstack-protector -funwind-tables -fasynchronous-unwind-tables -DUNIV_LINUX -DUNIV_LINUX -MT ha_innodb_plugin_la-btr0btr.lo -MD -MP -MF .deps/ha_innodb_plugin_la-btr0btr.Tpo -c btr/btr0btr.c  -fPIC -DPIC -o .libs/ha_innodb_plugin_la-btr0btr.o
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I../../include -I../../include -I../../include -I../../regex -I./include -I../../sql -I. -I../../zlib -DMYSQL_DYNAMIC_PLUGIN -O2 -g -fmessage-length=0 -D_FORTIFY_SOURCE=2 -fstack-protector -funwind-tables -fasynchronous-unwind-tables -DUNIV_LINUX -DUNIV_LINUX -MT ha_innodb_plugin_la-btr0btr.lo -MD -MP -MF .deps/ha_innodb_plugin_la-btr0btr.Tpo -c btr/btr0btr.c  -fPIC -DPIC -o ha_innodb_plugin_la-btr0btr.o >/dev/null 2>&1
mv -f .deps/ha_innodb_plugin_la-btr0btr.Tpo .deps/ha_innodb_plugin_la-btr0btr.Plo
/bin/sh ../../libtool --preserve-dup-deps --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I../../include -I../../include -I../../include -I../../regex -I./include -I../../sql -I. -I../../zlib    -DMYSQL_DYNAMIC_PLUGIN -O2 -g -fmessage-length=0 -D_FORTIFY_SOURCE=2 -fstack-protector -funwind-tables -fasynchronous-unwind-tables   -DUNIV_LINUX -DUNIV_LINUX -MT ha_innodb_plugin_la-btr0cur.lo -MD -MP -MF .deps/ha_innodb_plugin_la-btr0cur.Tpo -c -o ha_innodb_plugin_la-btr0cur.lo `test -f 'btr/btr0cur.c' || echo './'`btr/btr0cur.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I../../include -I../../include -I../../include -I../../regex -I./include -I../../sql -I. -I../../zlib -DMYSQL_DYNAMIC_PLUGIN -O2 -g -fmessage-length=0 -D_FORTIFY_SOURCE=2 -fstack-protector -funwind-tables -fasynchronous-unwind-tables -DUNIV_LINUX -DUNIV_LINUX -MT ha_innodb_plugin_la-btr0cur.lo -MD -MP -MF .deps/ha_innodb_plugin_la-btr0cur.Tpo -c btr/btr0cur.c  -fPIC -DPIC -o .libs/ha_innodb_plugin_la-btr0cur.o
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I../../include -I../../include -I../../include -I../../regex -I./include -I../../sql -I. -I../../zlib -DMYSQL_DYNAMIC_PLUGIN -O2 -g -fmessage-length=0 -D_FORTIFY_SOURCE=2 -fstack-protector -funwind-tables -fasynchronous-unwind-tables -DUNIV_LINUX -DUNIV_LINUX -MT ha_innodb_plugin_la-btr0cur.lo -MD -MP -MF .deps/ha_innodb_plugin_la-btr0cur.Tpo -c btr/btr0cur.c  -fPIC -DPIC -o ha_innodb_plugin_la-btr0cur.o >/dev/null 2>&1
mv -f .deps/ha_innodb_plugin_la-btr0cur.Tpo .deps/ha_innodb_plugin_la-btr0cur.Plo
/bin/sh ../../libtool --preserve-dup-deps --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I../../include -I../../include -I../../include -I../../regex -I./include -I../../sql -I. -I../../zlib    -DMYSQL_DYNAMIC_PLUGIN -O2 -g -fmessage-length=0 -D_FORTIFY_SOURCE=2 -fstack-protector -funwind-tables -fasynchronous-unwind-tables   -DUNIV_LINUX -DUNIV_LINUX -MT ha_innodb_plugin_la-btr0pcur.lo -MD -MP -MF .deps/ha_innodb_plugin_la-btr0pcur.Tpo -c -o ha_innodb_plugin_la-btr0pcur.lo `test -f 'btr/btr0pcur.c' || echo './'`btr/btr0pcur.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I../../include -I../../include -I../../include -I../../regex -I./include -I../../sql -I. -I../../zlib -DMYSQL_DYNAMIC_PLUGIN -O2 -g -fmessage-length=0 -D_FORTIFY_SOURCE=2 -fstack-protector -funwind-tables -fasynchronous-unwind-tables -DUNIV_LINUX -DUNIV_LINUX -MT ha_innodb_plugin_la-btr0pcur.lo -MD -MP -MF .deps/ha_innodb_plugin_la-btr0pcur.Tpo -c btr/btr0pcur.c  -fPIC -DPIC -o .libs/ha_innodb_plugin_la-btr0pcur.o
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I../../include -I../../include -I../../include -I../../regex -I./include -I../../sql -I. -I../../zlib -DMYSQL_DYNAMIC_PLUGIN -O2 -g -fmessage-length=0 -D_FORTIFY_SOURCE=2 -fstack-protector -funwind-tables -fasynchronous-unwind-tables -DUNIV_LINUX -DUNIV_LINUX -MT ha_innodb_plugin_la-btr0pcur.lo -MD -MP -MF .deps/ha_innodb_plugin_la-btr0pcur.Tpo -c btr/btr0pcur.c  -fPIC -DPIC -o ha_innodb_plugin_la-btr0pcur.o >/dev/null 2>&1
mv -f .deps/ha_innodb_plugin_la-btr0pcur.Tpo .deps/ha_innodb_plugin_la-btr0pcur.Plo
/bin/sh ../../libtool --preserve-dup-deps --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I../../include -I../../include -I../../include -I../../regex -I./include -I../../sql -I. -I../../zlib    -DMYSQL_DYNAMIC_PLUGIN -O2 -g -fmessage-length=0 -D_FORTIFY_SOURCE=2 -fstack-protector -funwind-tables -fasynchronous-unwind-tables   -DUNIV_LINUX -DUNIV_LINUX -MT ha_innodb_plugin_la-btr0sea.lo -MD -MP -MF .deps/ha_innodb_plugin_la-btr0sea.Tpo -c -o ha_innodb_plugin_la-btr0sea.lo `test -f 'btr/btr0sea.c' || echo './'`btr/btr0sea.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I../../include -I../../include -I../../include -I../../regex -I./include -I../../sql -I. -I../../zlib -DMYSQL_DYNAMIC_PLUGIN -O2 -g -fmessage-length=0 -D_FORTIFY_SOURCE=2 -fstack-protector -funwind-tables -fasynchronous-unwind-tables -DUNIV_LINUX -DUNIV_LINUX -MT ha_innodb_plugin_la-btr0sea.lo -MD -MP -MF .deps/ha_innodb_plugin_la-btr0sea.Tpo -c btr/btr0sea.c  -fPIC -DPIC -o .libs/ha_innodb_plugin_la-btr0sea.o
./include/sync0sync.ic: In function ‘btr_search_enable’:
./include/sync0sync.ic:83: internal compiler error: Speicherzugriffsfehler
Please submit a full bug report,
with preprocessed source if appropriate.
See <http://bugs.opensuse.org/> for instructions.
make[2]: *** [ha_innodb_plugin_la-btr0sea.lo] Fehler 1
make[2]: Leaving directory `/usr/src/packages/BUILD/mysql-5.1.48/storage/innodb_plugin'
make[1]: *** [all-recursive] Fehler 1
make[1]: Leaving directory `/usr/src/packages/BUILD/mysql-5.1.48/storage'
make: *** [all-recursive] Fehler 1
error: Bad exit status from /var/tmp/rpm-tmp.94738 (%build)

RPM build errors:
    Bad exit status from /var/tmp/rpm-tmp.94738 (%build)
[23 Jul 2010 8:58] Sveta Smirnova
Thank you for the feedback.

Unfortunately SLES on PowerPC is not supported. See http://mysql.com/support/supportedplatforms/enterprise.html for details. Additionally we are not able to verify this. Therefore I close the report as "Unsupported"
[23 Jul 2010 12:58] Mikhail Izioumtchenko
also not that the compiler says 'internal compiler error':
./include/sync0sync.ic:83: internal compiler error: Speicherzugriffsfehler.
Google says Speicherzugriffsfehler in English means 'Segmentation fault'.
trying a different version of the compiler might help.
[23 Jul 2010 13:32] Vasil Dimov
Hello,

as the error message says, this is an internal _compiler_ error, so it should be reported to http://bugs.opensuse.org/.

This is not a bug in MySQL. Just MySQL code triggers a bug in the compiler.

Can you compile this simple program in the same environment with the same compiler and compiler flags?

--- cut ---
struct m {
  volatile unsigned char l;
};

int
main(int argc, char** argv)
{
  struct m a;

  a->l = 0;
  __sync_lock_test_and_set(&a->l, 1);

  return(0);
}
--- cut ---

Thanks!
[23 Jul 2010 15:52] Jens Schanz
I'll try it next week.
Also launching a bug on Open Suse or Novell. Because SLES11 is there fully supported on ppc64.