Velocity Reviews - Computer Hardware Reviews

Velocity Reviews > Newsgroups > Programming > Perl > Perl Misc > compiling perl 5.8.7 on Solaris 8

Reply
Thread Tools

compiling perl 5.8.7 on Solaris 8

 
 
Kirt Loki Dankmyer
Guest
Posts: n/a
 
      11-17-2005
So, I download the latest "stable" tar for perl (5.8.7) and try to compile
it on the Solaris 8 (SPARC) box that I administrate. I try all sorts of
different switches, but I can't get it to compile. I need it to be
compiled with threads.

Anyone have any wisdom on how best to do this?

Here's a transcript of my latest attempt. It's long; you might want to
skip to the bottom, where I try "make" and the fatal errors start
happening.

Script started on Thu Nov 17 15:03:14 2005
sh-2.03# rm -f config.sh Policy.sh
sh-2.03# sh Configure

Beginning of configuration questions for perl5.

Checking echo to see how to suppress newlines...
....using \c
The star should be here-->*

First let's make sure your kit is complete. Checking...
Looks good...


Would you like to see the instructions? [n]

Locating common programs...
awk is in /usr/bin/awk.
cat is in /usr/bin/cat.
chmod is in /usr/bin/chmod.
comm is in /usr/bin/comm.
cp is in /usr/bin/cp.
echo is in /usr/bin/echo.
expr is in /usr/bin/expr.
grep is in /usr/bin/grep.
ls is in /usr/bin/ls.
mkdir is in /usr/bin/mkdir.
rm is in /usr/bin/rm.
sed is in /usr/bin/sed.
sort is in /usr/bin/sort.
touch is in /usr/bin/touch.
tr is in /usr/bin/tr.
uniq is in /usr/bin/uniq.

Don't worry if any of the following aren't found...
I don't see Mcc out there, offhand.
ar is in /usr/bin/ar.
I don't see bison out there, either.
I don't see byacc out there, either.
cpp is in /usr/local/bin/cpp.
csh is in /usr/bin/csh.
date is in /usr/bin/date.
egrep is in /usr/bin/egrep.
I don't see gmake out there, either.
gzip is in /usr/bin/gzip.
less is in /usr/bin/less.
ln is in /usr/bin/ln.
make is in /usr/bin/make.
more is in /usr/bin/more.
nm is in /usr/bin/nm.
nroff is in /usr/bin/nroff.
pg is in /usr/bin/pg.
test is in /usr/bin/test.
uname is in /usr/bin/uname.
zip is in /usr/bin/zip.
Using the test built into your sh.

Checking compatibility between /usr/bin/echo and builtin echo (if any)...
They are compatible. In fact, they may be identical.

Symbolic links are supported.

Checking how to test for symbolic links...
You can test for symbolic links with 'test -h'.


Good, your tr supports [:lower:] and [:upper:] to convert case.
Using [:upper:] and [:lower:] to convert case.

First time through, eh? I have some defaults handy for some systems
that need some extra help getting the Configure answers right:

3b1 dos_djgpp irix_6_0 nonstopux sunos_4_0
aix dynix irix_6_1 openbsd sunos_4_1
aix_3 dynixptx isc opus super-ux
aix_4 epix isc_2 os2 svr4
altos486 esix4 linux os390 svr5
amigaos fps lynxos os400 ti1500
apollo freebsd machten posix-bc titanos
atheos genix machten_2 powerux ultrix_4
aux_3 gnu mint qnx umips
beos gnukfreebsd mips rhapsody unicos
bsdos gnuknetbsd mpc sco unicosmk
convexos greenhills mpeix sco_2_3_0
unisysdynix
cxux hpux ncr_tower sco_2_3_1 utekv
cygwin i386 netbsd sco_2_3_2 uts
darwin interix newsos4 sco_2_3_3 uwin
dcosx irix_4 next_3 sco_2_3_4 vmesa
dec_osf irix_5 next_3_0 solaris_2 vos
dgux irix_6 next_4 stellar

You may give one or more space-separated answers, or "none" if
appropriate.
A well-behaved OS will have no hints, so answering "none" or just "Policy"
is a good thing. DO NOT give a wrong version or a wrong OS.

Which of these apply, if any? [solaris_2]

NOTE: Some people have reported problems with /usr/ucb/cc.
If you have difficulties, please make sure the directory
containing your C compiler is before /usr/ucb in your PATH.


Configure uses the operating system name and version to set some defaults.
The default value is probably right if the name rings a bell. Otherwise,
since spelling matters for me, either accept the default or answer "none"
to leave it blank.

Operating system name? [solaris]

Operating system version? [2.8]

Perl can be built to use the SOCKS proxy protocol library. To do so,
Configure must be run with -Dusesocks. If you use SOCKS you also need
to use the PerlIO abstraction layer, this will be implicitly selected.

If this doesn't make any sense to you, just accept the default 'n'.
Build Perl for SOCKS? [n]

Previous version of perl5 used the standard IO mechanisms as
defined in <stdio.h>. Versions 5.003_02 and later of perl5 allow
alternate IO mechanisms via the PerlIO abstraction layer, but the
stdio mechanism is still available if needed. The abstraction layer
can use AT&T's sfio (if you already have sfio installed) or regular stdio.
Using PerlIO with sfio may cause problems with some extension modules.

If this doesn't make any sense to you, just accept the default 'y'.
Use the PerlIO abstraction layer? [y]

Perl can be built to take advantage of threads on some systems.
To do so, Configure can be run with -Dusethreads.

Note that Perl built with threading support runs slightly slower
and uses more memory than plain Perl. The current implementation
is believed to be stable, but it is fairly new, and so should be
treated with caution.

If this doesn't make any sense to you, just accept the default 'n'.
Build a threading Perl? [n] y

Since release 5.6, Perl has had two different threading implementations,
the newer interpreter-based version (ithreads) with one interpreter per
thread, and the older 5.005 version (5005threads).
The 5005threads version is effectively unmaintained and will probably be
removed in Perl 5.10, so there should be no need to build a Perl using it
unless needed for backwards compatibility with some existing 5.005threads
code.

Use the newer interpreter-based ithreads? [y]
Your platform has some specific hints regarding threaded builds, using
them...

Perl can be built so that multiple Perl interpreters can coexist
within the same Perl executable.
This multiple interpreter support is required for interpreter-based
threads.

Hmm... Looks kind of like a USG system with BSD features, but we'll
see...

Congratulations. You aren't running Eunice.

It's not Xenix...

Nor is it Venix...
Use which C compiler? [cc]
/usr/ucb/cc: language optional software package not installed
Uh-oh, the C compiler 'cc' doesn't seem to be working.

You seem to have a working gcc, though.
Would you like to use it? [y]

*** However, any setting of the C compiler flags (e.g. for thread support)
*** has been lost. It may be necessary to pass -Dcc=gcc to Configure
*** (together with e.g. -Dusethreads).


NOTE: You are using GNU as(1). GNU as(1) might not build Perl. If you
have trouble, you can use /usr/ccs/bin/as by including -B/usr/ccs/bin/
in your gcc command. (Note that the trailing "/" is required.)

Found GNU ld='/usr/local/sparc-sun-solaris2.8/bin/ld'

NOTE: You are using GNU ld(1). GNU ld(1) might not build Perl. If you
have trouble, you can use /usr/ccs/bin/ld by including -B/usr/ccs/bin/
in your gcc command. (Note that the trailing "/" is required.)

I will try to use GNU ld by passing in the -Wl,-E flag, but if that
doesn't work, you should use -B/usr/ccs/bin/ instead.


Checking for GNU cc in disguise and/or its version number...
You are using GNU cc 2.95.3 20010315 (release).

Hmm... Doesn't look like a MIPS system.

Now, how can we feed standard input to your C preprocessor...
Maybe "gcc -E" will work...
Nope...maybe "gcc -E -" will work...
Yup, it does.

Some systems have incompatible or broken versions of libraries. Among
the directories listed in the question below, please remove any you
know not to be holding relevant libraries, and add any that are needed.
Say "none" for none.

Directories to use for library searches?
[/usr/local/lib /usr/lib /usr/ccs/lib]

On some systems, shared libraries may be available. Answer 'none' if
you want to suppress searching of shared libraries for the remainder
of this configuration.

What is the file extension used for shared libraries? [so]

Perl can be built to take advantage of long doubles which
(if available) may give more accuracy and range for floating point
numbers.

If this doesn't make any sense to you, just accept the default 'n'.
Try to use long doubles if available? [n]
Your platform has some specific hints regarding long doubles, using
them...

Checking for optional libraries...
No -lsfio.
Found -lsocket (shared).
No -lbind.
No -linet.
Found -lnsl (shared).
No -lnm.
No -lndbm.
Found -lgdbm (shared).
No -ldbm.
No -ldb.
Found -ldl (shared).
No -ldld.
No -lsun.
Found -lm (shared).
No -lutil.
Found -lpthread (shared).
Found -lc (shared).
No -lcposix.
No -lposix.
No -lbsd.
No -lBSD.

In order to compile perl5 on your machine, a number of libraries
are usually needed. Include any other special libraries here as well.
Say "none" for none. The default list is almost always right.

What libraries to use? [-lsocket -lnsl -lgdbm -ldl -lm -lpthread -lc]
-lsocket -lnsl -ldl -lm -lpthread -lc]

By default, perl5 compiles with the -O flag to use the optimizer.
Alternately, you might want to use the symbolic debugger, which uses
the -g flag (on traditional Unix systems). Either flag can be
specified here. To use neither flag, specify the word "none".

What optimizer/debugger flag should be used? [-O]

Checking if your compiler accepts -fno-strict-aliasing
Yes, it does.

Checking if your compiler accepts -pipe
Yes, it does.

Your C compiler may want other flags. For this question you should
include
-I/whatever and -DWHATEVER flags and any other flags used by the C
compiler,
but you should NOT include libraries or ld flags like -lwhatever. If you
want perl5 to honor its debug switch, you should include -DDEBUGGING here.
Your C compiler might also need additional flags, such as -D_POSIX_SOURCE.

To use no flags, specify the word "none".

Any additional cc flags? [-fno-strict-aliasing -pipe -I/usr/local/include]

Let me guess what the preprocessor flags are...
They appear to be: -fno-strict-aliasing -pipe -I/usr/local/include

Your C linker may need flags. For this question you should
include -L/whatever and any other flags used by the C linker, but you
should NOT include libraries like -lwhatever.

Make sure you include the appropriate -L/path flags if your C linker
does not normally search all of the directories you specified above,
namely
/usr/local/lib /usr/lib /usr/ccs/lib
To use no flags, specify the word "none".

Any additional ld flags (NOT including libraries)? [ -L/usr/local/lib]

Checking your choice of C compiler and flags for coherency...
OK, that should do.

Computing filename position in cpp output for #include directives...
Your cpp writes the filename in the third field of the line.

<stdlib.h> found.

Checking to see how big your integers are...
Your integers are 4 bytes long.
Your long integers are 4 bytes long.
Your short integers are 2 bytes long.

Checking to see if you have long long...
You have long long.

Checking to see how big your long longs are...
Your long longs are 8 bytes long.

<inttypes.h> found.

Checking to see if you have int64_t...
You have int64_t.

Checking which 64-bit integer type we could use...
We could use 'long long' for 64-bit integers.

Perl can be built to take advantage of 64-bit integer types
on some systems. To do so, Configure can be run with -Duse64bitint.
Choosing this option will most probably introduce binary
incompatibilities.

If this doesn't make any sense to you, just accept the default 'n'.
(The default has been chosen based on your configuration.)
Try to use 64-bit integers, if available? [n]

You may also choose to try maximal 64-bitness. It means using as much
64-bitness as possible on the platform. This in turn means even more
binary incompatibilities. On the other hand, your platform may not
have any more 64-bitness available than what you already have chosen.

If this doesn't make any sense to you, just accept the default 'n'.
(The default has been chosen based on your configuration.)
Try to use maximal 64-bit support, if available? [n]
Your platform has some specific hints regarding 64-bit integers, using
them...
Your platform has some specific hints regarding 64-bit builds, using
them...

Checking to see how big your double precision numbers are...
Your double is 8 bytes long.

Checking to see if you have long double...
You have long double.

Checking to see how big your long doubles are...
Your long doubles are 16 bytes long.

What is your architecture name [sun4-solaris]
Threads selected.
....setting architecture name to sun4-solaris-thread.
Multiplicity selected.
....setting architecture name to sun4-solaris-thread-multi.
Perlio selected.

By default, perl5 will be installed in /usr/local/bin, manual pages
under /usr/local/man, etc..., i.e. with /usr/local as prefix for all
installation directories. Typically this is something like /usr/local.
If you wish to have binaries under /usr/bin but other parts of the
installation under /usr/local, that's ok: you will be prompted
separately for each of the installation directories, the prefix being
only used to set the defaults.

Installation prefix to use? (~name ok) [/usr/local]

AFS does not seem to be running...

In some special cases, particularly when building perl5 for distribution,
it is convenient to distinguish the directory in which files should be
installed from the directory (/usr/local) in which they will
eventually reside. For most users, these two directories are the same.

What installation prefix should I use for installing files? (~name ok)
[/usr/local]

Getting the current patchlevel...
(You have perl5 version 8 subversion 7.)

There are some auxiliary files for perl5 that need to be put into a
private library directory that is accessible by everyone.

Pathname where the private library files will reside? (~name ok)
[/usr/local/lib/perl5/5.8.7]

Perl5 contains architecture-dependent library files. If you are
sharing libraries in a heterogeneous environment, you might store
these files in a separate location. Otherwise, you can just include
them with the rest of the public library files.

Where do you want to put the public architecture-dependent libraries?
(~name ok)
[/usr/local/lib/perl5/5.8.7/sun4-solaris-thread-multi]

Some kernels have a bug that prevents setuid #! scripts from being
secure. Some sites have disabled setuid #! scripts because of this.

First let's decide if your kernel supports secure setuid #! scripts.
(If setuid #! scripts would be secure but have been disabled anyway,
don't say that they are secure if asked.)

Congratulations, your kernel has secure setuid scripts!

No need to emulate SUID scripts since they are secure here.

<malloc.h> found.

Checking to see how well your C compiler groks the void type...
Good. It appears to support void to the level perl5 wants.

Checking to see how big your pointers are...
Your pointers are 4 bytes long.

Do you wish to wrap malloc calls to protect against potential overflows?
[y]

Do you wish to attempt to use the malloc that comes with perl5? [n]

Your system wants malloc to return 'void *', it would seem.
Your system uses void free(), it would seem.

After perl5 is installed, you may wish to install various
add-on modules and utilities. Typically, these add-ons will
be installed under /usr/local with the rest
of this package. However, you may wish to install such add-ons
elsewhere under a different prefix.

If you do not wish to put everything under a single prefix, that's
ok. You will be prompted for the individual locations; this siteprefix
is only used to suggest the defaults.

The default should be fine for most people.

Installation prefix to use for add-on modules and utilities? (~name ok)
[/usr/local]

The installation process will create a directory for
site-specific extensions and modules. Most users find it convenient
to place all site-specific files in this directory rather than in the
main distribution directory.

Pathname for the site-specific library files? (~name ok)
[/usr/local/lib/perl5/site_perl/5.8.7]

The installation process will also create a directory for
architecture-dependent site-specific extensions and modules.

Pathname for the site-specific architecture-dependent library files?
(~name ok)
[/usr/local/lib/perl5/site_perl/5.8.7/sun4-solaris-thread-multi]

The installation process will also create a directory for
vendor-supplied add-ons. Vendors who supply perl with their system
may find it convenient to place all vendor-supplied files in this
directory rather than in the main distribution directory. This will
ease upgrades between binary-compatible maintenance versions of perl.

Of course you may also use these directories in whatever way you see
fit. For example, you might use them to access modules shared over a
company-wide network.

The default answer should be fine for most people.
This causes further questions about vendor add-ons to be skipped
and no vendor-specific directories will be configured for perl.

Do you want to configure vendor-specific add-on directories? [n]

Lastly, you can have perl look in other directories for extensions and
modules in addition to those already specified.
These directories will be searched after
/usr/local/lib/perl5/site_perl/5.8.7/sun4-solaris-thread-multi
/usr/local/lib/perl5/site_perl/5.8.7

Enter a colon-separated set of extra paths to include in perl's @INC
search path, or enter 'none' for no extra paths.

Colon-separated list of additional directories for perl to search? [none]

Checking out function prototypes...
Your C compiler appears to support function prototypes.

Pathname where the public executables will reside? (~name ok)
[/usr/local/bin]

Perl can be built with extra modules or bundles of modules which
will be fetched from the CPAN and installed alongside Perl.

Notice that you will need access to the CPAN; either via the Internet,
or a local copy, for example a CD-ROM or a local CPAN mirror. (You will
be asked later to configure the CPAN.pm module which will in turn do
the installation of the rest of the extra modules or bundles.)

Notice also that if the modules require any external software such as
libraries and headers (the libz library and the zlib.h header for the
Compress::Zlib module, for example) you MUST have any such software
already installed, this configuration process will NOT install such
things for you.

If this doesn't make any sense to you, just accept the default 'n'.
Install any extra modules (y or n)? [n]


If you wish to install html files for programs in Perl5, indicate
the appropriate directory here. To skip installing html files,
answer "none".
Directory for the main Perl5 html pages? (~name ok) [none]

If you wish to install html files for modules associated with Perl5,
indicate the appropriate directory here. To skip installing html files,
answer "none".
Directory for the Perl5 module html pages? (~name ok) [none]
Looking for a previously installed perl5.005 or later...
Using /usr/bin/perl.

In order to ease the process of upgrading, this version of perl
can be configured to use modules built and installed with earlier
versions of perl that were installed under /usr/local. Specify here
the list of earlier versions that this version of perl should check.
If Configure detected no earlier versions of perl installed under
/usr/local, then the list will be empty. Answer 'none' to tell perl
to not search earlier versions.

The default should almost always be sensible, so if you're not sure,
just accept the default.
List of earlier versions to include in @INC? [5.8.5]

Many scripts expect perl to be installed as /usr/bin/perl.

If you want to, I can install the perl you are about to compile
as /usr/bin/perl (in addition to /usr/local/bin/perl).

However, please note that because you already have a /usr/bin/perl,
overwriting that with a new Perl would very probably cause problems.
Therefore I'm assuming you don't want to do that (unless you insist).

Do you want to install perl as /usr/bin/perl? [n]

Checking for GNU C Library...
You are not using the GNU C Library

I can use /usr/bin/nm to extract the symbols from your C libraries. This
is a time consuming task which may generate huge output on the disk (up
to 3 megabytes) but that should make the symbols extraction faster. The
alternative is to skip the 'nm' extraction part and to compile a small
test program instead to determine whether each symbol is present. If
you have a fast C compiler and/or if your 'nm' output cannot be parsed,
this may be the best solution.

You probably shouldn't let me use 'nm' if you are using the GNU C Library.

Shall I use /usr/bin/nm to extract C symbols from the libraries? [y] n

<dld.h> NOT found.

dlopen() found.

Do you wish to use dynamic loading? [y]
The following dynamic loading files are available:
ext/DynaLoader/dl_aix.xs ext/DynaLoader/dl_mac.xs
ext/DynaLoader/dl_beos.xs ext/DynaLoader/dl_mpeix.xs
ext/DynaLoader/dl_dld.xs ext/DynaLoader/dl_next.xs
ext/DynaLoader/dl_dllload.xs ext/DynaLoader/dl_none.xs
ext/DynaLoader/dl_dlopen.xs ext/DynaLoader/dl_vmesa.xs
ext/DynaLoader/dl_dyld.xs ext/DynaLoader/dl_vms.xs
ext/DynaLoader/dl_hpux.xs
Source file to use for dynamic loading [ext/DynaLoader/dl_dlopen.xs]

Some systems may require passing special flags to gcc -c to
compile modules that will be used to create a shared library.
To use no flags, say "none".

Any special flags to pass to gcc -c to compile shared library modules?
[-fPIC]

Some systems use ld to create libraries that can be dynamically loaded,
while other systems (such as those using ELF) use gcc.

You appear to have ELF support. I'll use gcc to build dynamic libraries.
What command should be used to create dynamic libraries? [gcc]

Some systems may require passing special flags to gcc to create a
library that can be dynamically loaded. If your ld flags include
-L/other/path options to locate libraries outside your loader's normal
search path, you may need to specify those -L options here as well. To
use no flags, say "none".

Any special flags to pass to gcc to create a dynamically loaded library?
[ -Wl,-E -G -L/usr/local/lib]

Some systems may require passing special flags to gcc to indicate that
the resulting executable will use dynamic linking. To use no flags,
say "none".

Any special flags to pass to gcc to use dynamic linking? [ -Wl,-E]

The perl executable is normally obtained by linking perlmain.c with
libperl.a, any static extensions (usually just DynaLoader), and
any other libraries needed on this system (such as -lm, etc.). Since
your system supports dynamic loading, it is probably possible to build
a shared libperl.so. If you will have more than one executable linked
to libperl.so, this will significantly reduce the size of each
executable, but it may have a noticeable affect on performance. The
default is probably sensible for your system.


Build a shared libperl.so (y/n) [n]

System manual is in /usr/share/man/man1.

Perl5 has manual pages available in source form.
If you don't want the manual sources installed, answer 'none'.

Where do the main Perl5 manual pages (source) go? (~name ok)
[/usr/local/share/man/man1]
What suffix should be used for the main Perl5 man pages? [1]

You can have filenames longer than 14 characters.

Perl5 has manual pages for many of the library modules.
If you don't want the manual sources installed, answer 'none'.

Where do the perl5 library man pages (source) go? (~name ok)
[/usr/local/share/man/man3]
What suffix should be used for the perl5 library man pages? [3]

Figuring out host name...
Maybe "hostname" will work...
Your host name appears to be "triumph". Right? [y]

What is your domain name? [.somesite.somewhere]

I need to get your e-mail address in Internet format if possible, i.e.
something like http://www.velocityreviews.com/forums/(E-Mail Removed). Please answer accurately since I have
no easy means to double check it. The default value provided below
is most probably close to reality but may not be valid from outside
your organization...

What is your e-mail address? [(E-Mail Removed)]

If you or somebody else will be maintaining perl at your site, please
fill in the correct e-mail address here so that they may be contacted
if necessary. Currently, the "perlbug" program included with perl
will send mail to this address in addition to (E-Mail Removed). You may
enter "none" for no administrator.

Perl administrator e-mail address [(E-Mail Removed)]

Do you want to install only the version-specific parts of the perl
distribution? Usually you do *not* want to do this.
Do you want to install only the version-specific parts of perl? [n]

I can use the #! construct to start perl on your system. This will
make startup of perl scripts faster, but may cause problems if you
want to share those scripts and perl is not in a standard place
(/usr/local/bin/perl) on all your platforms. The alternative is to force
a shell by starting the script with a single ':' character.

What shall I put after the #! to start up perl ("none" to not use #!)?
[/usr/local/bin/perl]
I'll use #!/usr/local/bin/perl to start perl scripts.

Some installations have a separate directory just for executable scripts
so
that they can mount it across multiple architectures but keep the scripts
in
one spot. You might, for example, have a subdirectory of /usr/share for
this.
Or you might just lump your scripts in with all your other executables.

Where do you keep publicly executable scripts? (~name ok) [/usr/local/bin]
Pathname where the add-on public executables should be installed? (~name
ok)
[/usr/local/bin]
Pathname where the site-specific html pages should be installed? (~name
ok)
[none]
Pathname where the site-specific library html pages should be installed?
(~name ok)
[none]
Pathname where the site-specific manual pages should be installed? (~name
ok)
[/usr/local/share/man/man1]
Pathname where the site-specific library manual pages should be installed?
(~name ok)
[/usr/local/share/man/man3]
Pathname where add-on public executable scripts should be installed?
(~name ok)
[/usr/local/bin]

Perl can be built to use 'fast stdio', which means using the stdio
library but also directly manipulating the stdio buffers to enable
faster I/O. Using stdio is better for backward compatibility (especially
for Perl extensions), but on the other hand since Perl 5.8 the 'perlio'
interface has been preferred instead of stdio.

If this doesn't make any sense to you, just accept the default 'y'.
Use the "fast stdio" if available? [y]

Looking for the type used for lseek's offset on this system.
off_t found.

Checking to see how big your file offsets are...
Your file offsets are 4 bytes long.

Looking for the type for file position used by fsetpos().
fpos_t found.

Checking the size of fpos_t...
Your fpos_t is 4 bytes long.

Perl can be built to understand large files (files larger than 2
gigabytes)
on some systems. To do so, Configure can be run with -Duselargefiles.

If this doesn't make any sense to you, just accept the default 'y'.
Try to understand large files, if available? [y]
Your platform has some specific hints regarding large file builds, using
them...

Rechecking to see how big your file offsets are...
Your file offsets are now 8 bytes long.
Rechecking the size of fpos_t... 8 bytes.

qgcvt() found.

Checking how to print long doubles...
We will use %Lf.

Checking for an efficient way to convert floats to strings.
Trying gconvert...
gconvert() found.
I'll use gconvert to convert floats into a string.

fwalk() NOT found.

access() found.

<unistd.h> defines the *_OK access constants.

accessx() NOT found.

aintl() NOT found.

alarm() found.

<pthread.h> found.

<sys/types.h> found.

<sys/select.h> found.

Testing to see if we should include <time.h>, <sys/time.h> or both.
I'm now running the test program....
Succeeded with -DI_SYSTIME -DS_TIMEVAL
We'll include <sys/time.h>.

Checking to see if your struct tm has tm_zone field...
No, it doesn't.

Checking to see if your struct tm has tm_gmtoff field...
No, it doesn't.

asctime_r() found.
asctime_r() prototype NOT found.

*** WHOA THERE!!! ***
The recommended value for $d_asctime_r_proto on this machine was
"define"!
Keep the recommended value? [y]
Prototype: char* asctime_r(const struct tm*, char*);

atolf() NOT found.

atoll() found.

Checking whether your compiler can handle __attribute__ ...
Your C compiler supports __attribute__.

bcmp() found.

bcopy() found.

<unistd.h> found.

getpgrp() found.

Checking to see which flavor of getpgrp is in use...
(I see you are running Configure as super-user...)
You have to use getpgrp() instead of getpgrp(pid).

setpgrp() found.

Checking to see which flavor of setpgrp is in use...
(I see you are running Configure as super-user...)
You have to use setpgrp() instead of setpgrp(pid,pgrp).

bzero() found.

You have void (*signal())().

Checking whether your C compiler can cast large floats to int32.
Yup, it can.

Checking whether your C compiler can cast negative float to unsigned.
Yup, it can.

vprintf() found.
Your vsprintf() returns (int).

chown() found.

chroot() found.

chsize() NOT found.

class() NOT found.

Hmm... Looks like you have Berkeley networking support.

socketpair() found.

Checking the availability of certain socket constants...

<sys/uio.h> found.

Checking to see if your system supports struct cmsghdr...
Yes, it does.

Checking to see if your C compiler knows about "const"...
Yup, it does.

copysignl() NOT found.


crypt() found.

<crypt.h> found.

crypt_r() NOT found.

ctermid_r() found.
Prototype: char* ctermid_r(char*);

ctime_r() found.
ctime_r() prototype NOT found.

*** WHOA THERE!!! ***
The recommended value for $d_ctime_r_proto on this machine was
"define"!
Keep the recommended value? [y]
Prototype: char* ctime_r(const time_t*, char*);

cuserid() found.

<limits.h> found.

<float.h> found.

DBL_DIG found.

dbmclose() found.

<dbm.h> NOT found.

<rpcsvc/dbm.h> found.

dbminit() prototype NOT found.

difftime() found.

<dirent.h> found.

Your directory entries are struct dirent.

Your directory entry does not know about the d_namlen field.

<sys/dir.h> NOT found.

<sys/ndir.h> NOT found.

dirfd() NOT found.

dlerror() found.

<dlfcn.h> found.

On a few systems, the dynamically loaded modules that perl generates and
uses
will need a different extension than shared libs. The default will
probably
be appropriate.

What is the extension of dynamically loaded modules [so]

Checking whether your dlsym() needs a leading underscore ...
dlsym doesn't need a leading underscore.

drand48_r() NOT found.

drand48() prototype found.

dup2() found.

eaccess() NOT found.

endgrent() found.

<grp.h> found.

endgrent_r() NOT found.

endhostent() found.

<netdb.h> found.

endhostent_r() NOT found.

endnetent() found.

endnetent_r() NOT found.

endprotoent() found.

endprotoent_r() NOT found.

endpwent() found.

<pwd.h> found.

endpwent_r() NOT found.

endservent() found.

endservent_r() NOT found.

<fcntl.h> defines the O_* constants...
and you have the 3 argument form of open().

Using <string.h> instead of <strings.h>.

<sys/file.h> found.

We won't be including <sys/file.h>.

<fcntl.h> found.

We'll be including <fcntl.h>.

Figuring out the flag used by open() for non-blocking I/O...
Seems like we can use O_NONBLOCK.

Let's see what value errno gets from read() on a O_NONBLOCK file...
A read() system call with no data present returns -1.
Your read() sets errno to EAGAIN when no data is available.
And it correctly returns 0 to signal EOF.

Checking how std your stdio is...
Your stdio acts pretty std.
Checking to see what happens if we set the stdio ptr...
Increasing ptr in your stdio leaves cnt unchanged. Good.
And its _base field acts std.
You seem to have 'fast stdio' to directly manipulate the stdio buffers.

fchdir() found.

fchmod() found.

fchown() found.

fcntl() found.

Checking if fcntl-based file locking works...
Yes, it seems to work.

Checking to see how well your C compiler handles fd_set and friends ...
Well, your system knows about the normal fd_set typedef...
and you have the normal fd_set macros (just as I'd expect).

fgetpos() found.

finite() found.

finitel() NOT found.

flock() NOT found.

flock() prototype NOT found.

fork() found.

fp_class() NOT found.

pathconf() found.

fpathconf() found.

fpclass() found.

fpclassify() NOT found.

fpclassl() NOT found.

Checking to see if you have fpos64_t...
You have fpos64_t.

frexpl() NOT found.

<sys/param.h> found.

<sys/mount.h> found.

Checking to see if your system supports struct fs_data...
No, it doesn't.

fseeko() found.

fsetpos() found.

fstatfs() found.

statvfs() found.

fstatvfs() found.

fsync() found.

ftello() found.

getcwd() found.

getespwnam() NOT found.

getfsstat() NOT found.

getgrent() found.

getgrent_r() found.
getgrent_r() prototype found.
Prototype: struct group* getgrent_r(struct group*, char*, int);

getgrgid_r() found.
getgrgid_r() prototype found.
Prototype: struct group* getgrgid_r(gid_t, struct group*, char*, int);

getgrnam_r() found.
getgrnam_r() prototype found.
Prototype: struct group* getgrnam_r(const char*, struct group*, char*,
int);

gethostbyaddr() found.

gethostbyname() found.

gethostent() found.

gethostname() found.
uname() found.

Every now and then someone has a gethostname() that lies about the
hostname
but can't be fixed for political or economic reasons. If you wish, I can
pretend gethostname() isn't there and maybe compute hostname at run-time
thanks to the 'hostname' command.

Shall I ignore gethostname() from now on? [n] y
Okay...I'll use 'popen("/usr/bin/hostname", "r")' to get your hostname.

gethostbyaddr_r() found.
Prototype: struct hostent* gethostbyaddr_r(const char*, int, int, struct
hostent*, char*, int, int*);

gethostbyname_r() found.
Prototype: struct hostent* gethostbyname_r(const char*, struct hostent*,
char*, int, int*);

gethostent_r() found.
gethostent_r() prototype found.
Prototype: struct hostent* gethostent_r(struct hostent*, char*, int,
int*);

gethostent() prototype found.

getitimer() found.

getlogin() found.

getlogin_r() found.
getlogin_r() prototype NOT found.

*** WHOA THERE!!! ***
The recommended value for $d_getlogin_r_proto on this machine was
"define"!
Keep the recommended value? [y]
Prototype: int getlogin_r(char*, size_t);

getmnt() NOT found.

getmntent() found.

getnetbyaddr() found.

getnetbyname() found.

getnetent() found.

getnetbyaddr_r() found.
getnetbyaddr_r() prototype found.
Prototype: struct netent* getnetbyaddr_r(long, int, struct netent*, char*,
int);

getnetbyname_r() found.
Prototype: struct netent* getnetbyname_r(const char*, struct netent*,
char*, int);

getnetent_r() found.
getnetent_r() prototype found.
Prototype: struct netent* getnetent_r(struct netent*, char*, int);

getnetent() prototype found.

getpagesize() found.

getprotobyname() found.

getprotobynumber() found.

getprotoent() found.

getpgid() found.

getpgrp2() NOT found.

getppid() found.

getpriority() found.

getprotobyname_r() found.
Prototype: struct protoent* getprotobyname_r(const char*, struct
protoent*, char*, int);

getprotobynumber_r() found.
Prototype: struct protoent* getprotobynumber_r(int, struct protoent*,
char*, int);

getprotoent_r() found.
getprotoent_r() prototype found.
Prototype: struct protoent* getprotoent_r(struct protoent*, char*, int);

getprotoent() prototype found.

getprpwnam() NOT found.

getpwent() found.

getpwent_r() found.
getpwent_r() prototype found.
Prototype: struct passwd* getpwent_r(struct passwd*, char*, int);

getpwnam_r() found.
getpwnam_r() prototype found.
Prototype: struct passwd* getpwnam_r(const char*, struct passwd*, char*,
int);

getpwuid_r() found.
getpwuid_r() prototype found.
Prototype: struct passwd* getpwuid_r(uid_t, struct passwd*, char*, int);

getservbyname() found.

getservbyport() found.

getservent() found.

getservbyname_r() found.
Prototype: struct servent* getservbyname_r(const char*, const char*,
struct servent*, char*, int);

getservbyport_r() found.
Prototype: struct servent* getservbyport_r(int, const char*, struct
servent*, char*, int);

getservent_r() found.
getservent_r() prototype found.
Prototype: struct servent* getservent_r(struct servent*, char*, int);

getservent() prototype found.

getspnam() found.

<shadow.h> found.

getspnam_r() found.
getspnam_r() prototype found.
Prototype: struct spwd* getspnam_r(const char*, struct spwd*, char*, int);

gettimeofday() found.

gmtime_r() found.
gmtime_r() prototype NOT found.

*** WHOA THERE!!! ***
The recommended value for $d_gmtime_r_proto on this machine was
"define"!
Keep the recommended value? [y]
Prototype: struct tm* gmtime_r(const time_t*, struct tm*);

hasmntopt() found.

<netinet/in.h> found.

<arpa/inet.h> found.

htonl() found.

ilogbl() NOT found.

strchr() found.

inet_aton() NOT found.

isascii() found.

isfinite() NOT found.

isinf() NOT found.

isnan() found.

isnanl() NOT found.

killpg() found.

lchown() found.

LDBL_DIG found.

<math.h> found.

Checking to see if your libm supports _LIB_VERSION...
No, it does not (probably harmless)


link() found.

localtime_r() found.
localtime_r() prototype NOT found.

*** WHOA THERE!!! ***
The recommended value for $d_localtime_r_proto on this machine was
"define"!
Keep the recommended value? [y]
Prototype: struct tm* localtime_r(const time_t*, struct tm*);

localeconv() found.

lockf() found.

lseek() prototype found.

lstat() found.

madvise() found.

mblen() found.

mbstowcs() found.

mbtowc() found.

memchr() found.

memcmp() found.

memcpy() found.

memmove() found.

memset() found.

mkdir() found.

mkdtemp() NOT found.

mkfifo() found.

mkstemp() found.

mkstemps() NOT found.

mktime() found.

<sys/mman.h> found.

mmap() found.
and it returns (caddr_t).

sqrtl() NOT found.

scalbnl() NOT found.

modfl() NOT found.

modfl() prototype NOT found.

mprotect() found.

msgctl() found.

msgget() found.

msgsnd() found.

msgrcv() found.

You have the full msg*(2) library.

Checking to see if your system supports struct msghdr...
Yes, it does.

msync() found.

munmap() found.

nice() found.

<langinfo.h> found.

nl_langinfo() found.

Checking to see how big your characters are (hey, you never know)...
What is the size of a character (in bytes)? [1]

Checking to see if your C compiler knows about "volatile"...
Yup, it does.

Choosing the C types to be used for Perl's internal types...
(IV will be long, 4 bytes)
(UV will be unsigned long, 4 bytes)
(NV will be double, 8 bytes)
Checking how many bits of your UVs your NVs can preserve...
Your NVs can preserve all 32 bits of your UVs.

Checking to see if you have off64_t...
You have off64_t.

Checking what constant to use for creating joinable pthreads...
You seem to use PTHREAD_CREATE_JOINABLE.

pause() found.

pipe() found.

poll() found.

readlink() found.

pthread_atfork found.

pthread_attr_setscope() found.
sched_yield() NOT found.
pthread_yield() NOT found.

random_r() NOT found.

readdir() found.

seekdir() found.

telldir() found.

rewinddir() found.

readdir64_r() found.
Prototype: int readdir64_r(DIR*, struct dirent64*, struct dirent64**);

readdir_r() found.
Prototype: int readdir_r(DIR*, struct dirent*, struct dirent**);

readv() found.

recvmsg() found.

rename() found.

rmdir() found.

<memory.h> found.

We won't be including <memory.h>.

I'll use memmove() instead of bcopy() for overlapping copies.

I'll use memmove() instead of memcpy() for overlapping copies.

Checking if your memcmp() can compare relative magnitude...
Yes, it can.

sbrk() prototype found.

select() found.

semctl() found.

semget() found.

semop() found.

You have the full sem*(2) library.

You do not have union semun in <sys/sem.h>.

You can use union semun for semctl IPC_STAT.
You cannot use struct semid_ds* for semctl IPC_STAT.

sendmsg() found.

setegid() found.

seteuid() found.

setgrent() found.

setgrent_r() NOT found.

sethostent() found.

sethostent_r() NOT found.

setitimer() found.

setlinebuf() found.

setlocale() found.

<locale.h> found.

setlocale_r() NOT found.

setnetent() found.

setnetent_r() NOT found.

setprotoent() found.

setpgid() found.

setpgrp2() NOT found.

setpriority() found.

setproctitle() NOT found.

setprotoent_r() NOT found.

setpwent() found.

setpwent_r() NOT found.

setregid() found.

setresgid() NOT found.

setreuid() found.

setresuid() NOT found.

setrgid() NOT found.

setruid() NOT found.

setservent() found.

setservent_r() NOT found.

setsid() found.

setvbuf() found.

<sfio.h> NOT found.

shmctl() found.

shmget() found.

shmat() found.
and it returns (void *).

shmdt() found.

You have the full shm*(2) library.

sigaction() found.

sigprocmask() found.

POSIX sigsetjmp found.

sockatmark() NOT found.

sockatmark() prototype NOT found.

socks5_init() NOT found.

srand48_r() NOT found.

srandom_r() NOT found.

setresgid() prototype NOT found.

setresuid() prototype NOT found.

<sys/stat.h> found.

Checking to see if your struct stat has st_blocks field...

<sys/vfs.h> found.

<sys/statfs.h> found.

Checking to see if your system supports struct statfs...
Yes, it does.

Checking to see if your struct statfs has f_flags field...
No, it doesn't.
Checking how to access stdio streams by file descriptor number...
You can access stdio streams by file descriptor number by the __iob array.

strcoll() found.

Checking to see if your C compiler can copy structs...
Yup, it can.

strerror() found.
(You also have sys_errlist[], so we could roll our own strerror.)

strerror_r() NOT found.

strftime() found.

strlcat() found.

strlcpy() found.

strtod() found.

strtol() found.

strtold() NOT found.

strtoll() found.
Checking whether your strtoll() works okay...
Your strtoll() seems to be working okay.

strtoq() NOT found.

strtoul() found.
Checking whether your strtoul() works okay...
Your strtoul() seems to be working okay.

strtoull() found.
Checking whether your strtoull() works okay...
Your strtoull() seems to be working okay.

strtouq() NOT found.

strxfrm() found.

symlink() found.

syscall() found.

syscall() prototype NOT found.

sysconf() found.

system() found.

tcgetpgrp() found.

tcsetpgrp() found.

telldir() prototype found.

time() found.

Looking for the type returned by time() on this system.
time_t found.

<sys/times.h> found.

times() found.

Looking for the type returned by times() on this system.
clock_t found.

tmpnam_r() found.
Prototype: char* tmpnam_r(char*);

truncate() found.

ttyname_r() found.
Prototype: int ttyname_r(int, char*, size_t);

tzname[] found.

In the following, larger digits indicate more significance. A big-endian
machine like a Pyramid or a Motorola 680?0 chip will come out to 4321. A
little-endian machine like a Vax or an Intel 80?86 chip would be 1234.
Other
machines may have weird orders like 3412. A Cray will report 87654321,
an Alpha will report 12345678. If the test program works the default is
probably right.
I'm now running the test program...
(The test program ran ok.)
byteorder=4321

Checking to see whether you can access character data unalignedly...
(Testing for character data alignment may crash the test. That's okay.)
It seems that you must access character data in an aligned manner.

ualarm() found.

umask() found.

unordered() found.

usleep() found.

usleep() prototype found.

ustat() found.

vfork() found.


Perl can only use a vfork() that doesn't suffer from strict
restrictions on calling functions or modifying global data in
the child. For example, glibc-2.1 contains such a vfork()
that is unsuitable. If your system provides a proper fork()
call, chances are that you do NOT want perl to use vfork().

Do you still want to use vfork()? [n]
Ok, we won't use vfork().

closedir() found.

Checking whether closedir() returns a status...
Yes, it does.

wait4() found.

waitpid() found.

wcstombs() found.

wctomb() found.

writev() found.

Checking alignment constraints...
Doubles must be aligned on a how-many-byte boundary? [8]

Checking to see how your cpp does stuff like concatenate tokens...
Oh! Smells like ANSI's been here.
We can catify or stringify, separately or together!

<db.h> NOT found.

Looking for a random number function...
Good, found drand48().

Use which function to generate random numbers? [drand48]

Determining whether or not we are on an EBCDIC system...
Nope, no EBCDIC, probably ASCII or some ISO Latin. Or UTF-8.

Checking how to flush all pending stdio output...
Your fflush(NULL) works okay for output streams.
Let's see if it clobbers input pipes...
Ouch, fflush(NULL) clobbers input pipes! We will not use it.
All is futile. Even fflush(stdin) clobbers input pipes!
OK, I give up. I cannot figure out how to flush pending stdio output.
We won't be flushing handles at all before fork/exec/popen.

Looking for the type for group ids returned by getgid().
gid_t found.

Checking the size of gid_t...
Your gid_t is 4 bytes long.

Checking the sign of gid_t...
Your gid_t is signed.

Checking how to print 64-bit integers...
We will use the %lld style.

Checking the format strings to be used for Perl's internal types...

Checking the format string to be used for gids...

getgroups() found.

setgroups() found.

What type of pointer is the second argument to getgroups() and
setgroups()?
Usually this is the same as group ids, gid_t, but not always.

What type pointer is the second argument to getgroups() and setgroups()?
[gid_t]

Checking if your /usr/bin/make program sets $(MAKE)...
Yup, it does.

Looking for the type used for file modes for system calls (e.g. fchmod()).
mode_t found.

<stdarg.h> found.

<varargs.h> found.

We'll include <stdarg.h> to get va_dcl definition.

It seems that you don't need va_copy().

Looking for the type used for the length parameter for string functions.
size_t found.

Checking to see what type of arguments are accepted by gethostbyaddr().
Your system accepts const char * for the first arg.
....and int for the second arg.

Checking to see what type of argument is accepted by gethostbyname().
Your system accepts const char *.

Checking to see what type of 1st argument is accepted by getnetbyaddr().
Your system accepts in_addr_t.

What pager is used on your system? [/usr/bin/less]

Looking for the type of process ids on this system.
pid_t found.

Checking how to generate random libraries on your machine...
/usr/bin/ar appears to generate random libraries itself.

Checking to see what type of arguments are accepted by select().
Your system accepts fd_set *.

Checking to see on how many bits at a time your select() operates...
Your select() operates on 32 bits at a time.

Generating a list of signal names and numbers...
The following 46 signals are available:

SIGZERO SIGHUP SIGINT SIGQUIT SIGILL SIGTRAP SIGABRT SIGEMT SIGFPE
SIGKILL SIGBUS SIGSEGV SIGSYS SIGPIPE SIGALRM SIGTERM SIGUSR1 SIGUSR2
SIGCHLD SIGPWR SIGWINCH SIGURG SIGIO SIGSTOP SIGTSTP SIGCONT SIGTTIN
SIGTTOU SIGVTALRM SIGPROF SIGXCPU SIGXFSZ SIGWAITING SIGLWP SIGFREEZE
SIGTHAW SIGCANCEL SIGLOST SIGRTMIN SIGNUM39 SIGNUM40 SIGNUM41
SIGNUM42 SIGNUM43 SIGNUM44 SIGRTMAX SIGIOT SIGCLD SIGPOLL

Checking the size of size_t...
Your size_t size is 4 bytes.

Checking to see if you have socklen_t...
You have socklen_t.

<socks.h> NOT found.

Checking to see what type is the last argument of accept().
What is the type for socket address structure sizes? [int]

I'll be using ssize_t for functions returning a byte count.

Your stdio uses unsigned chars.

Looking for the type for user ids returned by getuid().
uid_t found.

Checking the size of uid_t...
Your uid_t is 4 bytes long.

Checking the sign of uid_t...
Your uid_t is signed.

Checking the format string to be used for uids...

Which compiler compiler (yacc) shall I use? [yacc]

<fp.h> NOT found.

<fp_class.h> NOT found.

<ieeefp.h> found.

<libutil.h> NOT found.

<mach/cthreads.h> NOT found.

<mntent.h> NOT found.

<ndbm.h> found.

dbm_open() found.

<net/errno.h> NOT found.

<netinet/tcp.h> found.

<poll.h> found.

<prot.h> NOT found.

Guessing which symbols your C compiler and preprocessor define...
Your C compiler and pre-processor define these symbols:
__GCC_NEW_VARARGS__
__GNUC__
__SVR4
sparc
sun
unix

Your C pre-processor also defines the following symbols:
_BIG_ENDIAN
_FILE_OFFSET_BITS
__GNUC_MINOR__
_ILP32
_LARGEFILE64_SOURCE
_LARGEFILE_SOURCE
__STDC__
__sparc
__sparc__
__sun
__sun__
__svr4__
__unix
__unix__

Your C compiler further defines the following cpp symbols:
__GNUC_MINOR__=95
__sparc
__sparc__
__sun
__sun__
__svr4__
__unix
__unix__
cpu=sparc
machine=sparc
system=svr4
system=unix

tcsetattr() found.

You have POSIX termios.h... good!

<stddef.h> found.

<sunmath.h> NOT found.

<sys/access.h> NOT found.

<sys/filio.h> found.

<sys/ioctl.h> found.

You have socket ioctls defined in <sys/sockio.h>.

<syslog.h> found.

<sys/mode.h> found.

<sys/resource.h> found.

<sys/security.h> NOT found.

<sys/statvfs.h> found.

<sys/un.h> found.

<sys/utsname.h> found.

<sys/wait.h> found.

<ustat.h> found.

<utime.h> found.

<values.h> found.

<gdbm.h> NOT found.

Looking for extensions...
A number of extensions are supplied with perl5. You may choose to
compile these extensions for dynamic loading (the default), compile
them into the perl5 executable (static loading), or not include
them at all. Answer "none" to include no extensions.
Note that DynaLoader is always built and need not be mentioned here.

What extensions do you wish to load dynamically?
[B ByteLoader Cwd Data/Dumper Devel/DProf Devel/PPPort Devel/Peek
Digest/MD5 Encode Fcntl File/Glob Filter/Util/Call I18N/Langinfo IO
IPC/SysV List/Util MIME/Base64 NDBM_File ODBM_File Opcode POSIX
PerlIO/encoding PerlIO/scalar PerlIO/via SDBM_File Socket Storable
Sys/Hostname Sys/Syslog Time/HiRes Unicode/Normalize XS/APItest XS/Typemap
attrs re threads threads/shared]
What extensions do you wish to load statically? [none]


End of configuration questions.


Stripping down executable paths...

Creating config.sh...

If you'd like to make any changes to the config.sh file before I begin
to configure things, do it as a shell escape now (e.g. !vi config.sh).

Press return or use a shell escape to edit config.sh:

Doing variable substitutions on .SH files...
Extracting cflags (with variable substitutions)
Extracting config.h (with variable substitutions)
Extracting makeaperl (with variable substitutions)
Extracting makedepend (with variable substitutions)
Extracting makedir (with variable substitutions)
Extracting Makefile (with variable substitutions)
Extracting myconfig (with variable substitutions)
Extracting pod/Makefile (with variable substitutions)
Extracting Policy.sh (with variable substitutions)
Extracting writemain (with variable substitutions)
Extracting x2p/cflags (with variable substitutions)
Extracting x2p/Makefile (with variable substitutions)

Now you need to generate make dependencies by running "make depend".
You might prefer to run it in background: "make depend > makedepend.out &"
It can take a while, so you might not want to run it right now.

Run make depend now? [y]
sh ./makedepend MAKE=make
make: Warning: Both `makefile' and `Makefile' exist
Current working directory /array/tmp/perl-5.8.7
sh writemain lib/auto/DynaLoader/DynaLoader.a > writemain.tmp
sh mv-if-diff writemain.tmp perlmain.c
cp op.c opmini.tmp
sh mv-if-diff opmini.tmp opmini.c
echo av.c scope.c op.c doop.c doio.c dump.c hv.c mg.c reentr.c perl.c
perly.c pp.c pp_hot.c pp_ctl.c pp_sys.c regcomp.c regexec.c utf8.c gv.c
sv.c taint.c toke.c util.c deb.c run.c universal.c xsutils.c pad.c
globals.c perlio.c perlapi.c numeric.c locale.c pp_pack.c pp_sort.c
miniperlmain.c perlmain.c opmini.c | tr ' ' '\n' >.clist
Finding dependencies for av.o.
Finding dependencies for scope.o.
Finding dependencies for op.o.
Finding dependencies for doop.o.
Finding dependencies for doio.o.
Finding dependencies for dump.o.
Finding dependencies for hv.o.
Finding dependencies for mg.o.
Finding dependencies for reentr.o.
Finding dependencies for perl.o.
Finding dependencies for perly.o.
Finding dependencies for pp.o.
Finding dependencies for pp_hot.o.
Finding dependencies for pp_ctl.o.
Finding dependencies for pp_sys.o.
Finding dependencies for regcomp.o.
Finding dependencies for regexec.o.
Finding dependencies for utf8.o.
Finding dependencies for gv.o.
Finding dependencies for sv.o.
Finding dependencies for taint.o.
Finding dependencies for toke.o.
Finding dependencies for util.o.
Finding dependencies for deb.o.
Finding dependencies for run.o.
Finding dependencies for universal.o.
Finding dependencies for xsutils.o.
Finding dependencies for pad.o.
Finding dependencies for globals.o.
Finding dependencies for perlio.o.
Finding dependencies for perlapi.o.
Finding dependencies for numeric.o.
Finding dependencies for locale.o.
Finding dependencies for pp_pack.o.
Finding dependencies for pp_sort.o.
Finding dependencies for miniperlmain.o.
Finding dependencies for perlmain.o.
Finding dependencies for opmini.o.
make: Warning: Both `makefile' and `Makefile' exist
Current working directory /array/tmp/perl-5.8.7
echo Makefile.SH cflags.SH config_h.SH makeaperl.SH makedepend.SH
makedir.SH myconfig.SH writemain.SH pod/Makefile.SH | tr ' ' '\n' >.shlist
Updating makefile...
test -s perlmain.c && touch perlmain.c
cd x2p; make depend
sh ../makedepend MAKE=make
make: Warning: Both `makefile' and `Makefile' exist
Current working directory /array/tmp/perl-5.8.7/x2p
echo hash.c str.c util.c walk.c | tr ' ' '\n' >.clist
Finding dependencies for hash.o.
Finding dependencies for str.o.
Finding dependencies for util.o.
Finding dependencies for walk.o.
make: Warning: Both `makefile' and `Makefile' exist
Current working directory /array/tmp/perl-5.8.7/x2p
echo Makefile.SH cflags.SH | tr ' ' '\n' >.shlist
Updating makefile...
Now you must run 'make'.

If you compile perl5 on a different machine or from a different object
directory, copy the Policy.sh file from this object directory to the
new one before you run Configure -- this will help you with most of
the policy defaults.

sh-2.03# make
make: Warning: Both `makefile' and `Makefile' exist
`sh cflags "optimize='-O'" miniperlmain.o` miniperlmain.c
CCCMD = gcc -DPERL_CORE -c -fno-strict-aliasing -pipe
-I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -O -Wall
`sh cflags "optimize='-O'" perl.o` perl.c
CCCMD = gcc -DPERL_CORE -c -fno-strict-aliasing -pipe
-I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -O -Wall
`sh cflags "optimize='-O'" gv.o` gv.c
CCCMD = gcc -DPERL_CORE -c -fno-strict-aliasing -pipe
-I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -O -Wall
`sh cflags "optimize='-O'" toke.o` toke.c
CCCMD = gcc -DPERL_CORE -c -fno-strict-aliasing -pipe
-I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -O -Wall
`sh cflags "optimize='-O'" perly.o` perly.c
CCCMD = gcc -DPERL_CORE -c -fno-strict-aliasing -pipe
-I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -O -Wall
`sh cflags "optimize='-O'" op.o` op.c
CCCMD = gcc -DPERL_CORE -c -fno-strict-aliasing -pipe
-I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -O -Wall
`sh cflags "optimize='-O'" pad.o` pad.c
CCCMD = gcc -DPERL_CORE -c -fno-strict-aliasing -pipe
-I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -O -Wall
`sh cflags "optimize='-O'" regcomp.o` regcomp.c
CCCMD = gcc -DPERL_CORE -c -fno-strict-aliasing -pipe
-I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -O -Wall
`sh cflags "optimize='-O'" dump.o` dump.c
CCCMD = gcc -DPERL_CORE -c -fno-strict-aliasing -pipe
-I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -O -Wall
`sh cflags "optimize='-O'" util.o` util.c
CCCMD = gcc -DPERL_CORE -c -fno-strict-aliasing -pipe
-I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -O -Wall
`sh cflags "optimize='-O'" mg.o` mg.c
CCCMD = gcc -DPERL_CORE -c -fno-strict-aliasing -pipe
-I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -O -Wall
`sh cflags "optimize='-O'" reentr.o` reentr.c
CCCMD = gcc -DPERL_CORE -c -fno-strict-aliasing -pipe
-I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -O -Wall
`sh cflags "optimize='-O'" hv.o` hv.c
CCCMD = gcc -DPERL_CORE -c -fno-strict-aliasing -pipe
-I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -O -Wall
`sh cflags "optimize='-O'" av.o` av.c
CCCMD = gcc -DPERL_CORE -c -fno-strict-aliasing -pipe
-I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -O -Wall
`sh cflags "optimize='-O'" run.o` run.c
CCCMD = gcc -DPERL_CORE -c -fno-strict-aliasing -pipe
-I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -O -Wall
`sh cflags "optimize='-O'" pp_hot.o` pp_hot.c
CCCMD = gcc -DPERL_CORE -c -fno-strict-aliasing -pipe
-I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -O -Wall
`sh cflags "optimize='-O'" sv.o` sv.c
CCCMD = gcc -DPERL_CORE -c -fno-strict-aliasing -pipe
-I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -O -Wall
`sh cflags "optimize='-O'" pp.o` pp.c
CCCMD = gcc -DPERL_CORE -c -fno-strict-aliasing -pipe
-I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -O -Wall
`sh cflags "optimize='-O'" scope.o` scope.c
CCCMD = gcc -DPERL_CORE -c -fno-strict-aliasing -pipe
-I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -O -Wall
`sh cflags "optimize='-O'" pp_ctl.o` pp_ctl.c
CCCMD = gcc -DPERL_CORE -c -fno-strict-aliasing -pipe
-I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -O -Wall
`sh cflags "optimize='-O'" pp_sys.o` pp_sys.c
CCCMD = gcc -DPERL_CORE -c -fno-strict-aliasing -pipe
-I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -O -Wall
pp_sys.c: In function `Perl_pp_readdir':
pp_sys.c:3861: warning: implicit declaration of function `readdir_r'
pp_sys.c: In function `Perl_pp_gmtime':
pp_sys.c:4470: warning: implicit declaration of function `localtime_r'
pp_sys.c:4472: warning: implicit declaration of function `gmtime_r'
pp_sys.c: In function `Perl_pp_getlogin':
pp_sys.c:5566: warning: implicit declaration of function `getlogin_r'
`sh cflags "optimize='-O'" doop.o` doop.c
CCCMD = gcc -DPERL_CORE -c -fno-strict-aliasing -pipe
-I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -O -Wall
`sh cflags "optimize='-O'" doio.o` doio.c
CCCMD = gcc -DPERL_CORE -c -fno-strict-aliasing -pipe
-I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -O -Wall
`sh cflags "optimize='-O'" regexec.o` regexec.c
CCCMD = gcc -DPERL_CORE -c -fno-strict-aliasing -pipe
-I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -O -Wall
`sh cflags "optimize='-O'" utf8.o` utf8.c
CCCMD = gcc -DPERL_CORE -c -fno-strict-aliasing -pipe
-I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -O -Wall
`sh cflags "optimize='-O'" taint.o` taint.c
CCCMD = gcc -DPERL_CORE -c -fno-strict-aliasing -pipe
-I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -O -Wall
`sh cflags "optimize='-O'" deb.o` deb.c
CCCMD = gcc -DPERL_CORE -c -fno-strict-aliasing -pipe
-I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -O -Wall
`sh cflags "optimize='-O'" universal.o` universal.c
CCCMD = gcc -DPERL_CORE -c -fno-strict-aliasing -pipe
-I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -O -Wall
`sh cflags "optimize='-O'" xsutils.o` xsutils.c
CCCMD = gcc -DPERL_CORE -c -fno-strict-aliasing -pipe
-I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -O -Wall
`sh cflags "optimize='-O'" globals.o` globals.c
CCCMD = gcc -DPERL_CORE -c -fno-strict-aliasing -pipe
-I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -O -Wall
`sh cflags "optimize='-O'" perlio.o` perlio.c
CCCMD = gcc -DPERL_CORE -c -fno-strict-aliasing -pipe
-I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -O -Wall
`sh cflags "optimize='-O'" perlapi.o` perlapi.c
CCCMD = gcc -DPERL_CORE -c -fno-strict-aliasing -pipe
-I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -O -Wall
`sh cflags "optimize='-O'" numeric.o` numeric.c
CCCMD = gcc -DPERL_CORE -c -fno-strict-aliasing -pipe
-I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -O -Wall
`sh cflags "optimize='-O'" locale.o` locale.c
CCCMD = gcc -DPERL_CORE -c -fno-strict-aliasing -pipe
-I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -O -Wall
`sh cflags "optimize='-O'" pp_pack.o` pp_pack.c
CCCMD = gcc -DPERL_CORE -c -fno-strict-aliasing -pipe
-I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -O -Wall
pp_pack.c: In function `S_next_symbol':
pp_pack.c:703: warning: `allowed' might be used uninitialized in this
function
`sh cflags "optimize='-O'" pp_sort.o` pp_sort.c
CCCMD = gcc -DPERL_CORE -c -fno-strict-aliasing -pipe
-I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -O -Wall
rm -f libperl.a
/usr/bin/ar rcu libperl.a perl.o gv.o toke.o perly.o op.o pad.o regcomp.o
dump.o util.o mg.o reentr.o hv.o av.o run.o pp_hot.o sv.o pp.o scope.o
pp_ctl.o pp_sys.o doop.o doio.o regexec.o utf8.o taint.o deb.o universal.o
xsutils.o globals.o perlio.o perlapi.o numeric.o locale.o pp_pack.o
pp_sort.o
`sh cflags "optimize='-O'" opmini.o` -DPERL_EXTERNAL_GLOB opmini.c
CCCMD = gcc -DPERL_CORE -c -fno-strict-aliasing -pipe
-I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -O -Wall
gcc -L/usr/local/lib -o miniperl \
miniperlmain.o opmini.o libperl.a -lsocket -lnsl -ldl -lm -lpthread
-lc
../miniperl -w -Ilib -MExporter -e '<?>' || make minitest
*** Error code 1 (ignored)
../miniperl -Ilib configpm --heavy=lib/Config_heavy.pl configpm.tmp
sh mv-if-diff configpm.tmp lib/Config.pm
../miniperl -Ilib lib/lib_pm.PL
Extracting lib.pm (with variable substitutions)
AutoSplitting perl library
../miniperl -Ilib -e 'use AutoSplit; \
autosplit_lib_modules(@ARGV)' lib/*.pm
../miniperl -Ilib -e 'use AutoSplit; \
autosplit_lib_modules(@ARGV)' lib/*/*.pm
make lib/re.pm
make: Warning: Both `makefile' and `Makefile' exist
Current working directory /array/tmp/perl-5.8.7
cp ext/re/re.pm ext/re/re.tmp && sh mv-if-diff ext/re/re.tmp lib/re.pm
../miniperl minimod.pl > minimod.tmp
sh mv-if-diff minimod.tmp lib/ExtUtils/Miniperl.pm
touch lib/ExtUtils/Miniperl.pm
cd lib/unicore && ../../miniperl -I../../lib mktables -w
`sh cflags "optimize='-O'" perlmain.o` perlmain.c
CCCMD = gcc -DPERL_CORE -c -fno-strict-aliasing -pipe
-I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -O -Wall

Making DynaLoader (static)
Writing Makefile for DynaLoader
.../../miniperl "-I../../lib" "-I../../lib" "-I../../lib" "-I../../lib"
DynaLoader_pm.PL DynaLoader.pm
.../../miniperl "-I../../lib" "-I../../lib" "-I../../lib" "-I../../lib"
XSLoader_pm.PL XSLoader.pm
cp XSLoader.pm ../../lib/XSLoader.pm
cp DynaLoader.pm ../../lib/DynaLoader.pm
AutoSplitting ../../lib/DynaLoader.pm (../../lib/auto/DynaLoader)
gcc -o perl -L/usr/local/lib -Wl,-E perlmain.o
lib/auto/DynaLoader/DynaLoader.a libperl.a `cat ext.libs` -lsocket -lnsl
-ldl -lm -lpthread -lc
gcc: lib/auto/DynaLoader/DynaLoader.a: No such file or directory
*** Error code 1
make: Fatal error: Command failed for target `perl'
sh-2.03# exit

script done on Thu Nov 17 15:22:31 2005

--
Kirt "Loki" Dankmyer -- http://ivanhoeunbound.com -- xiomBRAG on AIM
cats * hats * RPGs * love * Eris * Agent Patriot * anime * Dada * poetry
"Only ONE MAN can kill this many Russians. Bring his guitar to me!" -Death
 
Reply With Quote
 
 
 
 
Oscar del Rio
Guest
Posts: n/a
 
      11-17-2005
Kirt Loki Dankmyer wrote:

> Use which C compiler? [cc]
> /usr/ucb/cc: language optional software package not installed
>
> Uh-oh, the C compiler 'cc' doesn't seem to be working.
>
> You seem to have a working gcc, though.
> Would you like to use it? [y]
>
> *** However, any setting of the C compiler flags (e.g. for thread support)
> *** has been lost. It may be necessary to pass -Dcc=gcc to Configure
> *** (together with e.g. -Dusethreads).


1. Get rid of /usr/ucb in your PATH; if you have the (free) Sun compilers add
/opt/SUNWspro/bin to the PATH

> NOTE: You are using GNU as(1). GNU as(1) might not build Perl. If you
> have trouble, you can use /usr/ccs/bin/as by including -B/usr/ccs/bin/
> in your gcc command. (Note that the trailing "/" is required.)
>
> Found GNU ld='/usr/local/sparc-sun-solaris2.8/bin/ld'
>
> NOTE: You are using GNU ld(1). GNU ld(1) might not build Perl. If you
> have trouble, you can use /usr/ccs/bin/ld by including -B/usr/ccs/bin/
> in your gcc command. (Note that the trailing "/" is required.)
>
> I will try to use GNU ld by passing in the -Wl,-E flag, but if that
> doesn't work, you should use -B/usr/ccs/bin/ instead.


2. Add /usr/ccs/bin to your path and/or try a version of gcc that uses
Solaris ld + as


> Checking for GNU cc in disguise and/or its version number...
> You are using GNU cc 2.95.3 20010315 (release).


3. Try a newer version of gcc; 2.95 is ancient. Or try the Sun Studio 11
compilers (free).


Hope that helps
 
Reply With Quote
 
 
 
 
PM
Guest
Posts: n/a
 
      11-18-2005
Short answer to your 2210-Liner

got to 'sunfreeware' or 'blastwave', pick the correct
version for your OS an install it.
The rest is waste of bandwidth!

PM
 
Reply With Quote
 
Thomas Hildebrandt - Sun Germany - ES - SSE
Guest
Posts: n/a
 
      11-25-2005
Kirt,

from the error messages you get during the compile stage, this looks a
lot like a broken perl version. Apparently, all that's going wrong is
linking in stuff from lib/auto/DynaLoader/DynaLoader.a, which does not
exist.

Since you appear to have chosen the correct DynaLoader method for
Solaris earlier on, I'd check if there is anything to make in lib/auto
which hasn't been done yet. In this case, the generated Makefile would
be the culprit.

HTH, kind regards,
- Thomas

 
Reply With Quote
 
 
 
Reply

Thread Tools

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are Off


Similar Threads
Thread Thread Starter Forum Replies Last Post
Compiling perl on Solaris 10...bread crumb trail anyone? Aftermath Fan Perl Misc 1 07-27-2007 02:26 PM
problems while compiling perl on solaris 10 ashish Perl Misc 8 11-26-2006 02:23 PM
compiling Python 2.3.3 Solaris 9 x86 question Stefan Python 2 04-25-2004 06:05 AM
Problem with cc-gcc compiling mod_jk in Solaris 9 AleC Java 1 01-27-2004 10:03 PM
Errors while compiling SWIG wrappers on Solaris Michael Schmitt Python 3 09-10-2003 08:24 PM



Advertisments