Bug #244
build on ruby-1.9.3-preview1
0%
Description
when attempting to build 'mu' on a system with ruby-1.9.3-preview1, it failed during the mkmf checks.
so i checked out the developement trunk to reproduce the error. while it is a different fail, i've attached the output.
http://pastebin.com/afNpK1G1
the paste includes the ruby version and subtle version information as well
History
#1 Updated by Christoph Kappel over 13 years ago
Hum, cannot reproduce that. Installed 1.9.3dev (r32789) and compiled subtle without any problems. Did you upgrade your ruby version without removing the cached buildfiles first (with rake clobber) or is this a new clone/checkout?
Init_prelude is btw. the hack in ruby for gems init, which is really troublesome, because they refuse to export the symbol.
#2 Updated by Vincent Batts over 13 years ago
well. i'm not sure then. i've now tried an rvm build of 1.9.3 on the same machine, having done a rake clobber, as well as re-cloning the source. i get the same error. this machine is running slackware-current 64bit, which is using gcc-4.5.3. the ruby-1.9.3-preview1 packages are from http://hashbangbash.com/downloads/pkgs/ruby/ .
so i switched to another machine, running slackware-13.37 64bit (gcc 4.5.2). Using rvm, I installed ruby-1.9.3-preview1. I cloned the source. and got the following output on the first run. It's the same error.
http://pastebin.com/3g8kmbLT
I've tried playing with the gcc command and the order of it's flags, but no success there either. What can you recommend me to try next?
#3 Updated by Christoph Kappel over 13 years ago
Two different build errors now I cannot reproduce. The latter is a bit strange, because rake aborts after a compiler warning of a redefinition of struct timezone which usually belongs to glibc.
No idea why the ruby devels redefine it, as you can see in the relevant ruby header:
#if !defined(HAVE_STRUCT_TIMEZONE)
struct timezone {
int tz_minuteswest;
int tz_dsttime;
};
#endif
Actually the build system of ruby should set the HAVE_STRUCT_TIMEZONE variable on build and prevent the redefinition.
What is the revison no. of ruby on your slackware machine?
#4 Updated by Vincent Batts over 13 years ago
oh you're right. i didn't see that different error.
One the machine with the Init_prelude error, the versions used are:[vbatts@jellyroll ~] 5008 gcc -v
Reading specs from /usr/lib64/gcc/x86_64-slackware-linux/4.5.3/specs
COLLECT_GCC=gcc
COLLECT_LTO_WRAPPER=/usr/libexec/gcc/x86_64-slackware-linux/4.5.3/lto-wrapper
Target: x86_64-slackware-linux
Configured with: ../gcc-4.5.3/configure --prefix=/usr --libdir=/usr/lib64 --mandir=/usr/man --infodir=/usr/info --enable-shared --enable-bootstrap --enable-languages=c,c++,ada,fortran,java,objc,lto --enable-threads=posix --enable-checking=release --enable-objc-gc --with-system-zlib --with-python-dir=/lib64/python2.6/site-packages --disable-libunwind-exceptions --enable-__cxa_atexit --enable-libssp --enable-lto --with-gnu-ld --verbose --enable-multilib --target=x86_64-slackware-linux --build=x86_64-slackware-linux --host=x86_64-slackware-linux
Thread model: posix
gcc version 4.5.3 (GCC)
[vbatts@jellyroll ~] 5009 ruby -v
ruby 1.9.3dev (2011-07-31 revision 32789) [x86_64-linux]
On the machine with the timezone error, the versions used are:[vbatts@satchmo ~] 5026 gcc -v
Reading specs from /usr/lib64/gcc/x86_64-slackware-linux/4.5.2/specs
COLLECT_GCC=gcc
COLLECT_LTO_WRAPPER=/usr/libexec/gcc/x86_64-slackware-linux/4.5.2/lto-wrapper
Target: x86_64-slackware-linux
Configured with: ../gcc-4.5.2/configure --prefix=/usr --libdir=/usr/lib64 --mandir=/usr/man --infodir=/usr/info --enable-shared --enable-bootstrap --enable-languages=c,c++,ada,fortran,java,objc,lto --enable-threads=posix --enable-checking=release --with-system-zlib --with-python-dir=/lib64/python2.6/site-packages --disable-libunwind-exceptions --enable-__cxa_atexit --enable-libssp --enable-lto --with-gnu-ld --verbose --enable-multilib --target=x86_64-slackware-linux --build=x86_64-slackware-linux --host=x86_64-slackware-linux
Thread model: posix
gcc version 4.5.2 (GCC)
[vbatts@satchmo ~] 5027 ruby -v
ruby 1.9.3dev (2011-07-31 revision 32789) [x86_64-linux]
#5 Updated by Christoph Kappel over 13 years ago
Hum, did you try to delete the cache files on your first machine?
I have exactly the same revision number here and don't see the timestruct error,tbh I don't even have an idea how to fix that. This just shouldn't happen, the missing.h exists since 2002. Can you build ruby 1.9.3 on your slackware machine with rvm, too?
#6 Updated by Christoph Kappel over 13 years ago
- Category set to Bugfix
- Status changed from Unconfirmed to Confirmed
- Assignee set to Non member users
Apparently this is an upstream problem and I hope this ticket will be accepted: http://redmine.ruby-lang.org/issues/5174
Until then I will use the ruby_options hack to fix linker errors.
#7 Updated by Christoph Kappel over 13 years ago
- Target version set to Xi
#8 Updated by Christoph Kappel about 13 years ago
- Status changed from Confirmed to Closed
I don't see any problems in 1.9.3rc1 so I close the issue.