Problems compiling ruby 1.8.1 on AIX 4.3.3

Hi,

when I run configure, I get:

configure: WARNING: pthread.h: present but cannot be compiled
configure: WARNING: pthread.h: check for missing prerequisite headers?
configure: WARNING: pthread.h: see the Autoconf documentation
configure: WARNING: pthread.h: section "Present But Cannot Be Compiled"
configure: WARNING: pthread.h: proceeding with the preprocessor’s result
configure: WARNING: pthread.h: in the future, the compiler will take precedence
configure: WARNING: ## ------------------------------------------ ##
configure: WARNING: ## Report this to the AC_PACKAGE_NAME lists. ##
configure: WARNING: ## ------------------------------------------ ##

running make gives:


/usr/ccs/bin/ld -brtl -eInit_rmd160 -bI:/home/paul/ruby-1.8.1/ruby.imp -bM:SRE
-T512 -H512 -lc -L"/home/paul/ruby-1.8.1"
-L"/u/dtalkwiz/psue/local/lib" -o rmd160.so rmd160init.o rmd160.o rmd160hl.o
-ldl -lcrypt -lm -lc
ld: 0711-317 ERROR: Undefined symbol: .__eprintf
ld: 0711-345 Use the -bloadmap or -bnoquiet option to obtain more information.
make: 1254-004 The error code from the last command is 8.

Stop.
make: 1254-004 The error code from the last command is 1.

Any ideas?

Thanks,

Paul

Hi,

···

At Tue, 6 Jan 2004 13:51:43 +0900, paul wrote:

when I run configure, I get:

configure: WARNING: pthread.h: present but cannot be compiled
configure: WARNING: pthread.h: check for missing prerequisite headers?
configure: WARNING: pthread.h: see the Autoconf documentation
configure: WARNING: pthread.h: section “Present But Cannot Be Compiled”
configure: WARNING: pthread.h: proceeding with the preprocessor’s result
configure: WARNING: pthread.h: in the future, the compiler will take precedence
configure: WARNING: ## ------------------------------------------ ##
configure: WARNING: ## Report this to the AC_PACKAGE_NAME lists. ##
configure: WARNING: ## ------------------------------------------ ##

running make gives:


/usr/ccs/bin/ld -brtl -eInit_rmd160 -bI:/home/paul/ruby-1.8.1/ruby.imp -bM:SRE
-T512 -H512 -lc -L"/home/paul/ruby-1.8.1"
-L"/u/dtalkwiz/psue/local/lib" -o rmd160.so rmd160init.o rmd160.o rmd160hl.o
-ldl -lcrypt -lm -lc
ld: 0711-317 ERROR: Undefined symbol: .__eprintf
ld: 0711-345 Use the -bloadmap or -bnoquiet option to obtain more information.

Have you installed required stuff (libraries etc.) properly?

Or, try

./cnofigure --disable-pthread CPPFLAGS=-DNDEBUG


Nobu Nakada

nobu.nokada@softhome.net wrote in message news:200401060514.i065EA1k010033@sharui.nakada.kanuma.tochigi.jp

/usr/ccs/bin/ld -brtl -eInit_rmd160 -bI:/home/paul/ruby-1.8.1/ruby.imp -bM:SRE
-T512 -H512 -lc -L"/home/paul/ruby-1.8.1"
-L"/u/dtalkwiz/psue/local/lib" -o rmd160.so rmd160init.o rmd160.o rmd160hl.o
-ldl -lcrypt -lm -lc
ld: 0711-317 ERROR: Undefined symbol: .__eprintf
ld: 0711-345 Use the -bloadmap or -bnoquiet option to obtain more information.

Have you installed required stuff (libraries etc.) properly?

What required libraries?? On Solaris 8, all I had to do was:

configure

make

make install

and it all worked fine.

Or, try

./cnofigure --disable-pthread CPPFLAGS=-DNDEBUG

I did and still get errors:

to summarize:

  • on AIX 4.3.3/GCC I get:
    /usr/ccs/bin/ld -brtl -eInit_rmd160 -bI:/home/paul/ruby-1.8.1/ruby.imp
    -bM:SRE
    -T512 -H512 -lc -L"/home/paul/ruby-1.8.1"
    -L"/u/dtalkwiz/psue/local/lib" -o rmd160.so rmd160init.o rmd160.o
    rmd160hl.o
    -ldl -lcrypt -lm -lc
    ld: 0711-317 ERROR: Undefined symbol: .__eprintf

  • on AIX 4.3.3 / IBM VAC I get:

  • on {AIX 4.3.3/5.1} / IBM VAC I get:

compiling curses
cc -g -I. -I/home/paul/ruby-1.8.1 -I/home/paul/ruby-1.8.1
-I/home/paul/ruby-1.8.1/ext/curses -DHAVE_CURSES_H -DHAVE_BEEP
-DHAVE_BKGD -DHAVE_BKGDSET -DHAVE_CURS_SET -DHAVE_DELETELN
-DHAVE_DOUPDATE -DHAVE_FLASH -DHAVE_GETBKGD -DHAVE_GETNSTR -DHAVE_INIT
-DHAVE_ISENDWIN -DHAVE_KEYNAME -DHAVE_KEYPAD -DHAVE_RESIZETERM
-DHAVE_SCRL -DHAVE_SET -DHAVE_SETSCRREG -DHAVE_UNGETCH -DHAVE_WATTROFF
-DHAVE_WATTRON -DHAVE_WATTRSET -DHAVE_WBKGD -DHAVE_WBKGDSET
-DHAVE_WDELETELN -DHAVE_WGETNSTR -DHAVE_WRESIZE -DHAVE_WSCRL
-DHAVE_WSETSCRREG -DHAVE_DEF_PROG_MODE -DHAVE_RESET_PROG_MODE
-DHAVE_TIMEOUT -DHAVE_WTIMEOUT -DHAVE_NODELAY -DHAVE_INIT_COLOR
-DNDEBUG -c curses.c
“/home/paul/ruby-1.8.1/ruby.h”, line 65.1: 1506-224 (I) Incorrect
#pragma ignored.
/usr/ccs/bin/ld -brtl -eInit_curses
-bI:/home/paul/ruby-1.8.1/ruby.imp -bM:SRE -T512 -H512 -lc
-L"/home/paul/ruby-1.8.1" -L"/home/paul/local/lib" -o curses.so
curses.o -lcurses -ldl -lcrypt -lm -lc
ld: 0711-317 ERROR: Undefined symbol: .wresize
ld: 0711-317 ERROR: Undefined symbol: .resizeterm
ld: 0711-345 Use the -bloadmap or -bnoquiet option to obtain more
information.
make: 1254-004 The error code from the last command is 8.

···

DO I need to set LIBPATH or ???

Still confused,

Paul

Hi,

/usr/ccs/bin/ld -brtl -eInit_rmd160 -bI:/home/paul/ruby-1.8.1/ruby.imp -bM:SRE
-T512 -H512 -lc -L"/home/paul/ruby-1.8.1"
-L"/u/dtalkwiz/psue/local/lib" -o rmd160.so rmd160init.o rmd160.o rmd160hl.o
-ldl -lcrypt -lm -lc
ld: 0711-317 ERROR: Undefined symbol: .__eprintf
ld: 0711-345 Use the -bloadmap or -bnoquiet option to obtain more information.

Have you installed required stuff (libraries etc.) properly?

What required libraries??

I’m not sure what you need to use pthread on AIX.

  • on AIX 4.3.3/GCC I get:
    /usr/ccs/bin/ld -brtl -eInit_rmd160 -bI:/home/paul/ruby-1.8.1/ruby.imp
    -bM:SRE
    -T512 -H512 -lc -L"/home/paul/ruby-1.8.1"
    -L"/u/dtalkwiz/psue/local/lib" -o rmd160.so rmd160init.o rmd160.o
    rmd160hl.o
    -ldl -lcrypt -lm -lc
    ld: 0711-317 ERROR: Undefined symbol: .__eprintf

This symbol is for assert()?

  • on {AIX 4.3.3/5.1} / IBM VAC I get:

“/home/paul/ruby-1.8.1/ruby.h”, line 65.1: 1506-224 (I) Incorrect
#pragma ignored.

#pragma alloca is valid for only gcc?

    /usr/ccs/bin/ld -brtl -eInit_curses

-bI:/home/paul/ruby-1.8.1/ruby.imp -bM:SRE -T512 -H512 -lc
-L"/home/paul/ruby-1.8.1" -L"/home/paul/local/lib" -o curses.so
curses.o -lcurses -ldl -lcrypt -lm -lc
ld: 0711-317 ERROR: Undefined symbol: .wresize
ld: 0711-317 ERROR: Undefined symbol: .resizeterm

I have no idea why extconf detected them but ld failed. Can
you show mkmf.rb under ext/curses?

···

At Wed, 7 Jan 2004 04:26:42 +0900, Paul wrote:


Nobu Nakada

OK, I finally got it to compile … had to undef some stuff.

Running some basic ruby scripts seems to work, but the tcl/tk module
seems broken:

/home/ivr_tools/local/lib/ruby/1.8/powerpc-aix4.3.3.0/tcltklib.so:
tcltklib: tcltk_stubs init error(-1) (LoadError)
from /home/ivr_tools/local/lib/ruby/1.8/tk.rb:7
from ./tkballoonhelp.rb:13:in `require’
from ./tkballoonhelp.rb:13

During the build of ext/tcltklib and ext/tk, I saw no warnings or
errors.

Any ideas?

Thanks,

Paul

nobu.nokada@softhome.net wrote in message news:200401070454.i074sweJ013303@sharui.nakada.kanuma.tochigi.jp

···

Hi,

At Wed, 7 Jan 2004 04:26:42 +0900, > Paul wrote:

/usr/ccs/bin/ld -brtl -eInit_rmd160 -bI:/home/paul/ruby-1.8.1/ruby.imp -bM:SRE
-T512 -H512 -lc -L"/home/paul/ruby-1.8.1"
-L"/u/dtalkwiz/psue/local/lib" -o rmd160.so rmd160init.o rmd160.o rmd160hl.o
-ldl -lcrypt -lm -lc
ld: 0711-317 ERROR: Undefined symbol: .__eprintf
ld: 0711-345 Use the -bloadmap or -bnoquiet option to obtain more information.

Have you installed required stuff (libraries etc.) properly?

What required libraries??

I’m not sure what you need to use pthread on AIX.

  • on AIX 4.3.3/GCC I get:
    /usr/ccs/bin/ld -brtl -eInit_rmd160 -bI:/home/paul/ruby-1.8.1/ruby.imp
    -bM:SRE
    -T512 -H512 -lc -L"/home/paul/ruby-1.8.1"
    -L"/u/dtalkwiz/psue/local/lib" -o rmd160.so rmd160init.o rmd160.o
    rmd160hl.o
    -ldl -lcrypt -lm -lc
    ld: 0711-317 ERROR: Undefined symbol: .__eprintf

This symbol is for assert()?

  • on {AIX 4.3.3/5.1} / IBM VAC I get:

“/home/paul/ruby-1.8.1/ruby.h”, line 65.1: 1506-224 (I) Incorrect
#pragma ignored.

#pragma alloca is valid for only gcc?

    /usr/ccs/bin/ld -brtl -eInit_curses

-bI:/home/paul/ruby-1.8.1/ruby.imp -bM:SRE -T512 -H512 -lc
-L"/home/paul/ruby-1.8.1" -L"/home/paul/local/lib" -o curses.so
curses.o -lcurses -ldl -lcrypt -lm -lc
ld: 0711-317 ERROR: Undefined symbol: .wresize
ld: 0711-317 ERROR: Undefined symbol: .resizeterm

I have no idea why extconf detected them but ld failed. Can
you show mkmf.rb under ext/curses?

Hi,

OK, I finally got it to compile … had to undef some stuff.

How did you change?

Running some basic ruby scripts seems to work, but the tcl/tk module
seems broken:

/home/ivr_tools/local/lib/ruby/1.8/powerpc-aix4.3.3.0/tcltklib.so:
tcltklib: tcltk_stubs init error(-1) (LoadError)
from /home/ivr_tools/local/lib/ruby/1.8/tk.rb:7
from ./tkballoonhelp.rb:13:in `require’
from ./tkballoonhelp.rb:13

Perhaps, you have to set RUBY_TCL_DLL and RUBY_TK_DLL
environment variables properly. Set them to actual tcl/tk
shared library pathes.

···

At Fri, 9 Jan 2004 07:06:40 +0900, Paul wrote:


Nobu Nakada