Bug #28912 Rebuild the mysql 5.0.16 source rpm with yassl
Submitted: 6 Jun 2007 4:45 Modified: 15 Dec 2009 11:19
Reporter: Venky P Email Updates:
Status: Can't repeat Impact on me:
None 
Category:MySQL Server: Compiling Severity:S3 (Non-critical)
Version:5.0.41, 5.0.87, 5.0.88 OS:Linux (Redhat 9)
Assigned to: CPU Architecture:Any

[6 Jun 2007 4:45] Venky P
Description:
I am trying to rebuild mysql 5.0.16 source rpm with yassl.but i am getting error like.....

+ /bin/ln -s ./../libmysql/client_settings.h ./client_settings.h
/usr/share/groff/1.18.1/tmac/mm/4.MT:61: warning: vertical spacing must be greater than 0
user.r:204: warning: can't find font `C'
user.r:773: warning [p 15, 5.8i]: can't break line
user.r:785: warning [p 15, 8.0i]: can't break line
user.r:795: warning [p 15, 9.8i]: can't break line
user.r:812: warning [p 16, 3.7i]: can't break line
user.r:814: warning [p 16, 3.8i]: cannot adjust line
user.r:1038: warning: indent cannot be negative
user.r:1117: warning: vertical spacing must be greater than 0
EventLogger.cpp: In function `void getTextNDBStopForced(char*, unsigned int,
   const Uint32*)':
EventLogger.cpp:119: warning: the address of `void (* signal(int, void
   (*)(int)))(int)', will always be `true'
sql_trigger.cc:36: warning: invalid offsetof from non-POD type `class
   Table_triggers_list'; use pointer to member instead
sql_trigger.cc:39: warning: invalid offsetof from non-POD type `class
   Table_triggers_list'; use pointer to member instead
In file included from /usr/include/openssl/ssl.h:179,
                 from ../include/violite.h:105,
                 from mysqlmanager.c:40:
/usr/include/openssl/kssl.h:72:18: krb5.h: No such file or directory
In file included from /usr/include/openssl/ssl.h:179,
                 from ../include/violite.h:105,
                 from mysqlmanager.c:40:
/usr/include/openssl/kssl.h:132: parse error before "krb5_enctype"
/usr/include/openssl/kssl.h:134: parse error before '*' token
/usr/include/openssl/kssl.h:135: parse error before '}' token
/usr/include/openssl/kssl.h:147: parse error before "kssl_ctx_setstring"
/usr/include/openssl/kssl.h:147: parse error before '*' token
/usr/include/openssl/kssl.h:148: parse error before '*' token
/usr/include/openssl/kssl.h:149: parse error before '*' token
/usr/include/openssl/kssl.h:149: parse error before '*' token
/usr/include/openssl/kssl.h:150: parse error before '*' token
/usr/include/openssl/kssl.h:151: parse error before "kssl_ctx_setprinc"
/usr/include/openssl/kssl.h:151: parse error before '*' token
/usr/include/openssl/kssl.h:153: parse error before "kssl_cget_tkt"
/usr/include/openssl/kssl.h:153: parse error before '*' token
/usr/include/openssl/kssl.h:155: parse error before "kssl_sget_tkt"
/usr/include/openssl/kssl.h:155: parse error before '*' token
/usr/include/openssl/kssl.h:157: parse error before "kssl_ctx_setkey"
/usr/include/openssl/kssl.h:157: parse error before '*' token
/usr/include/openssl/kssl.h:159: parse error before "context"
/usr/include/openssl/kssl.h:160: parse error before "kssl_build_principal_2"
/usr/include/openssl/kssl.h:160: parse error before "context"
/usr/include/openssl/kssl.h:163: parse error before "kssl_validate_times"
/usr/include/openssl/kssl.h:163: parse error before "atime"
/usr/include/openssl/kssl.h:165: parse error before "kssl_check_authent"
/usr/include/openssl/kssl.h:165: parse error before '*' token
/usr/include/openssl/kssl.h:167: parse error before "enctype"
In file included from ../include/violite.h:105,
                 from mysqlmanager.c:40:
/usr/include/openssl/ssl.h:909: parse error before "KSSL_CTX"
/usr/include/openssl/ssl.h:931: parse error before '}' token
make[2]: *** [mysqlmanager.o] Error 1
make[1]: *** [all-recursive] Error 1
make: *** [all] Error 2

RPM build errors:

error: Bad exit status from /var/tmp/rpm-tmp.56766 (%build)
    Bad exit status from /var/tmp/rpm-tmp.56766 (%build)

 Regards,
Venky.P

How to repeat:
rpmbuild --with yassl --rebuild --clean MySQL-5.0.16-0.src.rpm
[6 Jun 2007 5:39] Sveta Smirnova
Thank you for the report.

But version 5.0.16 is quite old. Also at least one compilation with yassl bug has been fixed since 5.0.16. Please upgrade to current 5.0.41 version and say us result.
[6 Jun 2007 5:57] Venky P
Now i tried with MySQL-5.0.31-0.src.rpm .Still i am getting error like.....

collect2: ld terminated with signal 11 [Segmentation fault], core dumped
make[4]: *** [libndbclient.la] Error 1
make[4]: Leaving directory `/usr/src/redhat/BUILD/mysql-5.0.37/ndb/src'
make[3]: *** [all-recursive] Error 1
make[3]: Leaving directory `/usr/src/redhat/BUILD/mysql-5.0.37/ndb/src'
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory `/usr/src/redhat/BUILD/mysql-5.0.37/ndb'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/usr/src/redhat/BUILD/mysql-5.0.37'
make: *** [all] Error 2
error: Bad exit status from /var/tmp/rpm-tmp.16038 (%build)

RPM build errors:
    Bad exit status from /var/tmp/rpm-tmp.16038 (%build)
~
[6 Jun 2007 7:27] Sveta Smirnova
Thank you for the feedback.

But version 5.0.37 is not current. Please upgrade to current version 5.0.41 and try with it. You can download MySQL 5.0.41 from http://dev.mysql.com/downloads/mysql/5.0.html#source
[6 Jun 2007 7:53] Sveta Smirnova
Bug #28915 was marked as duplicate of this one.
[6 Jun 2007 9:12] Venky P
Is there any MySQL-5.0.41 RPMS avialable with compile Yassl?If any available ...give me that downlload path.
Thanks,
venky
[6 Jun 2007 9:36] Sveta Smirnova
See download path in the above comment.
[6 Jun 2007 10:30] Venky P
Still i am getting compilation error when i used with MySQL-5.0.41-0.src.rpm  

 Error Message:

gcc -shared  -Wl,--whole-archive ndbapi/.libs/libndbapi.a common/transporter/.libs/libtransporter.a common/debugger/.libs/libtrace.a common/debugger/signaldata/.libs/libsignaldataprint.a mgmapi/.libs/libmgmapi.a common/mgmcommon/.libs/libmgmsrvcommon.a common/logger/.libs/liblogger.a common/portlib/.libs/libportlib.a common/util/.libs/libgeneral.a -Wl,--no-whole-archive  -lpthread -lpthread -lpthread -lpthread -lpthread -lpthread -lpthread -lpthread -lpthread -lpthread -lpthread -lpthread -lpthread -lpthread -lpthread -lpthread -lpthread -lpthread -lpthread -lpthread -lpthread -lpthread -lpthread -lpthread -lpthread -lpthread -lpthread -lpthread -lpthread -lpthread -lpthread -lpthread -lpthread -lpthread -lpthread -lpthread -lpthread -lcrypt -lnsl -lm -lpthread  -march=i386 -mcpu=i686 -Wl,--version-script=../../ndb/src/libndb.ver -Wl,-soname -Wl,libndbclient.so.2 -o .libs/libndbclient.so.2.0.0
collect2: ld terminated with signal 11 [Segmentation fault], core dumped
make[4]: *** [libndbclient.la] Error 1
make[4]: Leaving directory `/usr/src/redhat/BUILD/mysql-5.0.41/ndb/src'
make[3]: *** [all-recursive] Error 1
make[3]: Leaving directory `/usr/src/redhat/BUILD/mysql-5.0.41/ndb/src'
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory `/usr/src/redhat/BUILD/mysql-5.0.41/ndb'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/usr/src/redhat/BUILD/mysql-5.0.41'
make: *** [all] Error 2
error: Bad exit status from /var/tmp/rpm-tmp.78904 (%build)

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

 How to repeat:

  rpmbuild --with yassl --rebuild --clean MySQL-5.0.41-0.src.rpm > /tmp/op432 2>&1
[6 Jun 2007 11:30] Sveta Smirnova
Thank you for the feedback.

OS field updated.
[6 Jun 2007 11:56] Venky P
I didn't get what's meanig of OS field updated. Could u explain clearly? Please...
[27 Jun 2007 19:46] Sveta Smirnova
Venky, thank you for the feedback.

Before fixing the bug we must be sure bug is repeatable with current version and not only on one machine. So we have to verify the report. I updated OS field to let know developer who has access to RedHat machine bug report is valid and can be processed.
[6 Aug 2007 11:13] Valeriy Kravchuk
Please, try to repeat with a newer version, 5.0.45. Core dump in your last attemt to build on 5.0.41 may be related to some problem in your build environment. So, please, send also the results of:

free
gcc --version
[6 Aug 2007 11:59] Venky P
gcc (GCC) 3.2.2 20030222 (Red Hat Linux 3.2.2-5)
Copyright (C) 2002 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.
[6 Aug 2007 12:00] Venky P
free:   

          total       used       free     shared    buffers     cached
Mem:       3608888     658336    2950552          0      71876     311032
-/+ buffers/cache:     275428    3333460
Swap:      2097136          0    2097136
[12 Nov 2007 10:40] Valeriy Kravchuk
So, have your tried to compile 5.0.45, and what results you got?
[13 Dec 2007 0:00] Bugs System
No feedback was provided for this bug for over a month, so it is
being suspended automatically. If you are able to provide the
information that was originally requested, please do so and change
the status of the bug back to "Open".
[28 Oct 2009 18:26] Todd Rinaldo
I can confirm this problem continues to happen on 5.0.87. 

[root@rpmbuild32 src]# free
             total       used       free     shared    buffers     cached
Mem:       2075568    1625168     450400          0     223596    1103632
-/+ buffers/cache:     297940    1777628
Swap:      4096564        212    4096352

[root@rpmbuild32 src]# gcc --version
gcc (GCC) 3.2.2 20030222 (Red Hat Linux 3.2.2-5)
Copyright (C) 2002 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.
[30 Nov 2009 19:33] Sveta Smirnova
Thank you for the feedback.

I still can not repeat described behavior.

Please try newer gcc and if problem still exists provide exact version of operating system (uname -a) and version of ld you use. I tested with gcc 4 and problem is not repeatable for me.
[30 Nov 2009 20:21] Todd Rinaldo
Hi, I'm generating rpm files from a src.rpm I maintain. I generate rpms for about 50 linux distributions. In particular, we're having this problem on Trustix 2 (not 2.2) and Redhat 9. 

The fix we put in place was to disable --with-ndbcluster on these 2 systems via a check in the spec file. MySQL 5.0.88 now builds on all distributions. 

I can provide as much information you need and/or run commands to help isolate this problem. However, I cannot upgrade gcc as part of the fix, since we're providing these rpms for people running redhat 9 who it's not practical to upgrade gcc on their system to match.

Thanks,
[1 Dec 2009 6:27] Sveta Smirnova
Todd,

thank you for the feedback.

Yes, if you can provide information how to repeat the problem would be helpful. I assume you use different configure options than specified in src RPMs provided by MySQL? Please send them. Also I assume you still have compiling problem with version 5.0.88 using yours configure options while have no problems with our RPMs?
[7 Dec 2009 22:46] Todd Rinaldo
Hi, I'm really doing nothing extra special in the source rpm This is not the reason for the failure.

Steps to repeat this are as simple as:

Install RedHat 9
gunzip -c mysql.tar.gz | tar -xf -
cd mysql 
./configure --with-ndbcluster
make
[15 Dec 2009 11:19] Sveta Smirnova
Thank you for the feedback.

I still can not repeat described behavior on available RedHat boxes. We don't have RedHat 9 as this is very old and not supported. Also using NDB with version 5.0 is not recommended. Use special Cluster versions if you need NDB support. Please try newer gcc 4.x also. So I close the report as "Can't repeat".
[15 Dec 2009 11:23] Sveta Smirnova
Venky,

your problem with SSL most likely missed header:

/usr/include/openssl/kssl.h:72:18: krb5.h: No such file or directory

Please fix your Kerberos installation