Ruby on Compaq Tur64unix 5.1a

Hi!

Is anybody working on a ruby installation on Compaq Tur64unix 5.1a?
Is there ruby run on this platform?

Thanks In Advance for help,

gp-

Opss…

Compaq Tur64unix 5.1a = Compaq Tru64unix 5.1a

···

On Sun, 15 Sep 2002 10:13:07 GMT, Gian Paolo Marra gp.marra@le.isac.cnr.it wrote:

Hi!

Is anybody working on a ruby installation on Compaq Tur64unix 5.1a?
Is there ruby run on this platform?

Thanks In Advance for help,

gp-

Hi,

···

In message “Ruby on Compaq Tur64unix 5.1a” on 02/09/15, Gian Paolo Marra gp.marra@le.isac.cnr.it writes:

Is anybody working on a ruby installation on Compaq Tur64unix 5.1a?
Is there ruby run on this platform?

I think it runs. Tell me if compilation fails.

						matz.

Hello,

I’ve compiled it in Tru64 5.1a. I had some problems with network libraries
bit I solved it adding some parameters to the compilation (
-DHAVE_SOCKADDR_STORAGE or something like this, I don’t remember). If I have
time I’ll try to recompile again and I’ll tell you exactly how I did it.

Bye and good luck.

···

On Sun 15 Sep 2002 12:26, Gian Paolo Marra wrote:

Hi!

Is anybody working on a ruby installation on Compaq Tur64unix 5.1a?
Is there ruby run on this platform?

Thanks In Advance for help,

gp-


Javier Fontan Muiños
jfontan@cesga.es
CESGA, Supercomputing Center of Galicia

Javier Fontan wrote:

Hello,

I’ve compiled it in Tru64 5.1a. I had some problems with network libraries
bit I solved it adding some parameters to the compilation (
-DHAVE_SOCKADDR_STORAGE or something like this, I don’t remember). If I
have time I’ll try to recompile again and I’ll tell you exactly how I did
it.

Ok! I’ve compiled on my Comapq Tru64Unix 5.1a system (Cluster version)!

  • My system is:

TruCluster Server (Clusters for Tru64 UNIX) ver. 5.1a
Alpha EV6-7

$uname -svrm
OSF1 V5.1 1885 alpha

  • My compiler is:

$cc -V
Compaq C V6.4-009 on Compaq Tru64 UNIX V5.1A (Rev. 1885)
Compiler Driver V6.4-008 (sys) cc Driver

  • My GNU Make is:

$make -v
GNU Make version 3.79, by Richard Stallman and Roland McGrath.
Built for alphaev67-dec-osf5.1

···

Step for compiling ruby-1.6.7 on Tru64Unix 5.1a

  1. Download ruby-1.6.7.tar.gz and decompress file

  2. Run ./configure

ruby-1.6.7$./configure

(Note: ./configure --without-gcc if there is gcc compiler on the system. I
have gcc 3.2)

(Note: After run ./configure, in ruby-1.6.7/ext/socket, there isn’t
Makefile)

  1. Run make

ruby-1.6.7$make

  1. Wait until socket.c error… (compiling socket)

This is the output of the error:

###################################

cc -ieee -g -oldc -std -Dsocklen_t=int -I. -I/zeus/gpmarra/ruby-1.6.7
-I/zeus/gpmarra/ruby-1.6.7 -I/usr/local/include
-DHAVE_NETINET_TCP_H -DHAVE_NETINET_UDP_H -DHAVE_INET_NTOP -DHAVE_INET_PTON
-DHAVE_GETSERVBYPORT -DHAVE_ARPA_INET_H -DHAVE_ARPA_NAMESER_H
-DHAVE_RESOLV_H -DHAVE_SYS_UN_H -DHAVE_SOCKET -DHAVE_GETHOSTNAME
-Dss_family=__ss_family -Dss_len=__ss_len -c socket.c
cc: Warning: addrinfo.h, line 65: The redefinition of the macro
“getaddrinfo” conflicts with a current definition because the replacement
lists differ. The redefinition is now in effect. (macroredef)
#define getaddrinfo getaddrinfo__compat
--------------------^
cc: Warning: socket.c, line 93: The redefinition of the macro
“_SS_ALIGNSIZE” conflicts with a current definition because the replacement
lists differ. The redefinition is now in effect. (macroredef)
#define _SS_ALIGNSIZE (sizeof(double))
-------------------------------^
cc: Warning: socket.c, line 94: The redefinition of the macro
“_SS_PAD1SIZE” conflicts with a current definition because the replacement
lists differ. The redefinition is now in effect. (macroredef)
#define _SS_PAD1SIZE (_SS_ALIGNSIZE - sizeof(unsigned char) * 2)
-----------------------------------------------^
cc: Warning: socket.c, line 95: The redefinition of the macro
“_SS_PAD2SIZE” conflicts with a current definition because the replacement
lists differ. The redefinition is now in effect. (macroredef)
#define _SS_PAD2SIZE (_SS_MAXSIZE - sizeof(unsigned char) * 2 -
---------------------------------------^
cc: Error: socket.c, line 98: In this declaration, the struct
“sockaddr_storage” is redefined. (redefstruct)
struct sockaddr_storage {
^
*** Exit 1
Stop.

###################################

  1. Now I start from the hit of Javier (Thanks Javier!!!). ;-)))

  2. Go to ruby-1.6.7/ext/socket directory and modify Makefile.

Add in CPPFLAGS -DHAVE_SOCKADDR_STORAGE and remove -Dss_family=__ss_family

Original CCPLAGS line:

CPPFLAGS = -I$(topdir) -I$(hdrdir) -I${prefix}/include -DHAVE_NETINET_TCP_H
-DHAVE_NETINET_UDP_H -DHAVE_INET_NTOP -DHAVE_INET_PTON -DHAVE_GETSERVBYPORT
-DHAVE_ARPA_INET_H -DHAVE_ARPA_NAMESER_H -DHAVE_RESOLV_H -DHAVE_SYS_UN_H
-DHAVE_SOCKET -DHAVE_GETHOSTNAME -Dss_family=__ss_family -Dss_len=__ss_len

Modify CCPLAGS line:

CPPFLAGS = -I$(topdir) -I$(hdrdir) -I${prefix}/include
-DHAVE_SOCKADDR_STORAGE -DHAVE_NETINET_TCP_H -DHAVE_NETINET_UDP_H
-DHAVE_INET_NTOP -DHAVE_INET_PTON -DHAVE_GETSERVBYPORT -DHAVE_ARPA_INET_H
-DHAVE_ARPA_NAMESER_H -DHAVE_RESOLV_H -DHAVE_SYS_UN_H -DHAVE_SOCKET
-DHAVE_GETHOSTNAME -Dss_len=__ss_len

  1. Go to ruby-1.6.7 and run again make to finish compling Ruby.

ruby-1.6.7$make

  1. Test the compiled Ruby.

ruby-1.6.7$make test
test succeeded

  1. Install on the system…

ruby-1.6.7$make install

  1. run!!

$ruby -v
ruby 1.6.7 (2002-03-01) [alphaev67-osf5.1]

:-))))))

Final note.

Also, I’ve compiled Ruby -1.6.7 on my Comapq Tru64Unix 5.1a system
successfully (same step) with gcc 3.2!!

$gcc -v
Reading specs from /usr/local/lib/gcc-lib/alphaev67-dec-osf5.1/3.2/specs
Configured with: ./configure
Thread model: single
gcc version 3.2

gp-

===========================================================
Gian Paolo Marra
CNR - National Council of Research
ISAC - Institute of Atmospheric and Climate Sciences
73100 Lecce - Italy