=head1 NAME
-README.tru64 - Perl version 5 on Tru64 (formerly known as Digital UNIX formerly known as DEC OSF/1) systems
+perltru64 - Perl version 5 on Tru64 (formerly known as Digital UNIX formerly known as DEC OSF/1) systems
=head1 DESCRIPTION
process limits, and lowers the optimization for the toke.c if
necessary, and also gives advice on how to raise the process limits.
+Also, Configure might abort with
+
+ Build a threading Perl? [n]
+ Configure[2437]: Syntax error at line 1 : 'config.sh' is not expected.
+
+This indicates that Configure is being run with a broken Korn shell
+(even though you think you are using a Bourne shell by using
+"sh Configure" or "./Configure"). The Korn shell bug has been reported
+to Compaq as of February 1999 but in the meanwhile, the reason ksh is
+being used is that you have the environment variable BIN_SH set to
+'xpg4'. This causes /bin/sh to delegate its duties to /bin/posix/sh
+(a ksh). Unset the environment variable and rerun Configure.
+
=head2 Using Large Files with Perl on Tru64
In Tru64 Perl is automatically able to use large files, that is,
older operating releases like 3.2 aren't probably going to work
properly with threads.
+In Tru64 V5 (at least V5.1A, V5.1B) you cannot build threaded Perl with gcc
+because the system header <pthread.h> explicitly checks for supported
+C compilers, gcc (at least 3.2.2) not being one of them. But the
+system C compiler should work just fine.
+
=head2 Long Doubles on Tru64
You cannot Configure Perl to use long doubles unless you have at least
The BerkeleyDB works with Berkeley DB versions 2.* or greater.
The Berkeley DB 4.1.25 has been tested with Tru64 V5.1A and found
-to work. The latest Berkeley DB can be found from F<http://www.sleepycat.com>.
+to work. The latest Berkeley DB can be found from L<http://www.sleepycat.com>.
=head2 64-bit Perl on Tru64
When compiling Perl in Tru64 you may (depending on the compiler
release) see two warnings like this
- cc: Warning: numeric.c, line 104: In this statement, floating-point overflow occurs in evaluating the expression "1.8e308". (floatoverfl)
+ cc: Warning: numeric.c, line 104: In this statement, floating-point
+ overflow occurs in evaluating the expression "1.8e308". (floatoverfl)
return HUGE_VAL;
-----------^
and when compiling the POSIX extension
- cc: Warning: const-c.inc, line 2007: In this statement, floating-point overflow occurs in evaluating the expression "1.8e308". (floatoverfl)
+ cc: Warning: const-c.inc, line 2007: In this statement, floating-point
+ overflow occurs in evaluating the expression "1.8e308". (floatoverfl)
return HUGE_VAL;
-------------------^
Tru64 4.0D to at least 4.0F: the sockatmark() system call was
added in Tru64 4.0F, and the IO extension refers that symbol.
+=head1 read_cur_obj_info: bad file magic number
+
+You may be mixing the Tru64 cc/ar/ld with the GNU gcc/ar/ld.
+That may work, but sometimes it doesn't (your gcc or GNU utils
+may have been compiled for an incompatible OS release).
+
+Try 'which ld' and 'which ld' (or try 'ar --version' and 'ld --version',
+which work only for the GNU tools, and will announce themselves to be such),
+and adjust your PATH so that you are consistently using either
+the native tools or the GNU tools. After fixing your PATH, you should
+do 'make distclean' and start all the way from running the Configure
+since you may have quite a confused situation.
+
=head1 AUTHOR
Jarkko Hietaniemi <jhi@iki.fi>