From: ichimunki Date: 2001-12-25T13:39:52+09:00 Subject: [ruby-talk:29409] Compiling on Linux-PPC -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 I'm new to Ruby. And not overly familiar with solving problematic compile issues, especially on my slightly offbeat system, so please be kind to me if I'm an idiot and missing something simple... But I nearly tore my hair out trying to compile 1.6.5 on YellowDogLinux 2.1 (a PPC Linux) -- with most libraries and such compiled from tarballs rather than using precompiled RPMs. I get errors starting at */ext/curses and keep getting them. The final steps in the compile, even after I quiet the */ext stuff error out saying it can't find -lX11! Which is absurd since the library is right where it always is. I mean, I compiled all of KDE2.2.2 without a hitch. So I have learned to try configure with --x-libraries=/usr/X11R6/lib, but the Tk bit is still hosed. No matter what I do, I can't get 1.6.5 to compile and still be functional (included after message is the first error message I get from make-- I can post the configure log and results from other things I've tired if those would be informative to anyone)... but in reviewing [ruby-talk:24814] "Ruby on alpha?" I realized that maybe I wasn't the only person running into an architecture thing, and that maybe there was hope. I downloaded 1.6.4. It compiled without a single flag or option needing to be set... and runs my tk_hello.rb! I get some mild warnings from that, but at least the window pops up and such. So this is great, now I can get back to learning Ruby. But something must have been changed in Ruby source in between 1.6.4 and 1.6.5 that is breaking the 1.6.5 compile on Linux-PPC, but I am nowhere near capable of saying what. If anyone has any ideas of things I might patch to get 1.6.5 running, I'd be glad to give that a shot. Of course, maybe this is a non-issue. I get the impression there is a much newer development version brewing and nearing release? However, the nightly snapshot is giving similar errors during compile on this machine, so whatever changed after 1.6.4 is still maybe causing problems... -- Michael Libby ( x @ ichimunki . com ) ===================================================== | public key available from keys.pgp.com or at | http://www.ichimunki.com/public.key. Fingerprint: | D946 FE20 79EE 2109 161B FAFB E029 56F4 A330 AA73 ===================================================== from my log of make for 1.6.5 (and this is the same type errors and same place in the compile that I get errors on the snapshot from 2001-12-24): gcc -g -O2 -I. -I. -I/usr/local/include -c util.c gcc -g -O2 -I. -I. -I/usr/local/include -c variable.c gcc -g -O2 -I. -I. -I/usr/local/include -c version.c gcc -g -O2 -I. -I. -I/usr/local/include -c dmyext.c ar rcu libruby.a array.o bignum.o class.o compar.o dir.o dln.o enum.o error.o eval.o file.o gc.o hash.o inits.o io.o marshal.o math.o numeric.o object.o pack.o parse.o process.o prec.o random.o range.o re.o regex.o ruby.o signal.o sprintf.o st.o string.o struct.o time.o util.o variable.o version.o dmyext.o gcc -g -O2 -I. -I. -I/usr/local/include -c main.c gcc -g -O2 main.o dmyext.o libruby.a -ldl -lcrypt -lm -o miniruby make[1]: Entering directory `/usr/src/ruby-1.6.5/ext/curses' gcc -fPIC -g -O2 -I/usr/src/ruby-1.6.5 -I/usr/src/ruby-1.6.5 - -I/usr/local/include -DHAVE_NCURSES_H -DHAVE_ISENDWIN -DHAVE_UNGETCH - -DHAVE_BEEP -DHAVE_DOUPDATE -DHAVE_FLASH -DHAVE_DELETELN -DHAVE_WDELETELN -c curses.c ld -L/usr/src/ruby-1.6.5 -o curses.so curses.o -lncurses -lc ld: warning: cannot find entry symbol _start; defaulting to 10000ba4 curses.o: In function `no_window': /usr/src/ruby-1.6.5/ext/curses/curses.c:51: undefined reference to `rb_raise' curses.o: In function `prep_window': /usr/src/ruby-1.6.5/ext/curses/curses.c:79: undefined reference to `rb_raise' /usr/src/ruby-1.6.5/ext/curses/curses.c:80: undefined reference to `ruby_xmalloc' /usr/src/ruby-1.6.5/ext/curses/curses.c:82: undefined reference to `rb_data_object_alloc' curses.o: In function `curses_init_screen': /usr/src/ruby-1.6.5/ext/curses/curses.c:96: undefined reference to `rb_raise' curses.o: In function `curses_ungetch': /usr/src/ruby-1.6.5/ext/curses/curses.c:279: undefined reference to `rb_num2long' curses.o: In function `curses_setpos': . . [removed a bunch of this type of line] . . /usr/src/ruby-1.6.5/ext/curses/curses.c:820: undefined reference to `rb_define_class_under' /usr/src/ruby-1.6.5/ext/curses/curses.c:821: undefined reference to `rb_define_singleton_method' /usr/src/ruby-1.6.5/ext/curses/curses.c:822: undefined reference to `rb_define_method' /usr/src/ruby-1.6.5/ext/curses/curses.c:823: undefined reference to `rb_define_method' /usr/src/ruby-1.6.5/ext/curses/curses.c:824: undefined reference to `rb_define_method' /usr/src/ruby-1.6.5/ext/curses/curses.c:825: undefined reference to `rb_define_method' /usr/src/ruby-1.6.5/ext/curses/curses.c:826: undefined reference to `rb_define_method' curses.o:/usr/src/ruby-1.6.5/ext/curses/curses.c:827: more undefined references to `rb_define_method' follow curses.o: In function `Init_curses': /usr/src/ruby-1.6.5/ext/curses/curses.c:847: undefined reference to `rb_set_end_proc' curses.o(.got2+0x0): undefined reference to `rb_eRuntimeError' curses.o: In function `no_window': /usr/src/ruby-1.6.5/ext/curses/curses.c:50: undefined reference to `rb_eRuntimeError' /usr/src/ruby-1.6.5/ext/curses/curses.c:50: undefined reference to `rb_eRuntimeError' curses.o: In function `curses_init_screen': /usr/src/ruby-1.6.5/ext/curses/curses.c:96: undefined reference to `rb_cObject' make[1]: *** [curses.so] Error 1 make[1]: Leaving directory `/usr/src/ruby-1.6.5/ext/curses' -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.0.6 (GNU/Linux) Comment: For info see http://www.gnupg.org iD8DBQE8KAKV4ClW9KMwqnMRAq5wAJwMbHYo9n1c66XEZrlP5rGu0qtCCQCfZr0m mWrB4QPtNmLspz5ipXWYdW0= =PVzP -----END PGP SIGNATURE-----