coolzdp 发表于 2004-10-14 22:44:44

安装perl的问题

# sh Configure -de
后再 # make
提示:
make:*** No rule to make targe '<built-in>',needed by 'miniperlmain.o'.Stop.

RedFlagLinux 4.0,请教是怎么回事呢?

coolzdp 发表于 2004-10-14 22:46:15

perl5.005_03.tar.gz!!!

jiangtao9999 发表于 2004-10-15 13:25:36

configure 后的输出有什么?

coolzdp 发表于 2004-10-15 21:49:56

Beginning of configuration questions for perl5.

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

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


This installation shell script will examine your system and ask you questions
to determine how the perl5 package should be installed. If you get
stuck on a question, you may use a ! shell escape to start a subshell or
execute a command.Many of the questions will have default answers in square
brackets; typing carriage return will give you the default.

On some of the questions which ask for file or directory names you are allowed
to use the ~name construct to specify the login directory belonging to "name",
even if you don't have a shell which knows about that.Questions where this is
allowed will be marked "(~name ok)".



The prompter used in this script allows you to use shell variables and
backticks in your answers.You may use $1, $2, etc...to refer to the words
in the default answer, as if the default line was a set of arguments given to a
script shell.This means you may also use $* to repeat the whole default line,
so you do not have to re-type everything to add something to the default.

Everytime there is a substitution, you will have to confirm.If there is an
error (e.g. an unmatched backtick), the default answer will remain unchanged
and you will be prompted again.

If you are in a hurry, you may run 'Configure -d'.This will bypass nearly all
the questions and use the computed defaults (or the previous answers if there
was already a config.sh file). Type 'Configure -h' for a list of options.
You may also start interactively and then answer '& -d' at any prompt to turn
on the non-interactive behaviour for the remainder of the execution.



Much effort has been expended to ensure that this shell script will run on any
Unix system.If despite that it blows up on yours, your best bet is to edit
Configure and run it again.If you can't run Configure for some reason,
you'll have to generate a config.sh file by hand.Whatever problems you
have, let [email protected] know how I blew it.

This installation script affects things in two ways:

1) it may do direct variable substitutions on some of the files included
   in this kit.
2) it builds a config.h file for inclusion in C programs.You may edit
   any of these files as the need arises after running this script.

If you make a mistake on a question, there is no easy way to back up to it
currently.The easiest thing to do is to edit config.sh and rerun all the SH
files.Configure will offer to let you do this before it runs the SH files.



Locating common programs...
awk is in /bin/awk.
cat is in /bin/cat.
comm is in /usr/bin/comm.
cp is in /bin/cp.
echo is in /bin/echo.
expr is in /usr/bin/expr.
find is in /usr/bin/find.
grep is in /bin/grep.
ls is in /bin/ls.
make is in /usr/bin/make.
mkdir is in /bin/mkdir.
rm is in /bin/rm.
sed is in /bin/sed.
sort is in /bin/sort.
touch is in /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.
byacc is in /usr/bin/byacc.
cpp is in /usr/bin/cpp.
csh is in /bin/csh.
date is in /bin/date.
egrep is in /bin/egrep.
gzip is in /bin/gzip.
less is in /usr/bin/less.
I don't see line out there, either.
ln is in /bin/ln.
more is in /bin/more.
nm is in /usr/bin/nm.
nroff is in /usr/bin/nroff.
perl is in /usr/bin/perl.
I don't see pg out there, either.
I don't see sendmail out there, either.
tee is in /usr/bin/tee.
test is in /usr/bin/test.
uname is in /bin/uname.
zip is in /usr/bin/zip.
Using the test built into your sh.

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

Symbolic links are supported.

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                 dynixptx       irix_6              next_3          stellar   
aix                 dynix                isc_2              next_4          sunos_4_0   
altos486      epix                isc              openbsd          sunos_4_1   
amigaos       esix4                linux              opus          svr4   
apollo      fps                lynxos              os2          ti1500   
aux_3         freebsd      machten_2   os390          titanos   
beos          genix                machten       powerux          ultrix_4   
bsdos         gnu                mint              qnx          umips   
convexos      greenhills   mips              sco_2_3_0   unicosmk   
cxux          hpux                mpc              sco_2_3_1   unicos   
cygwin32      i386                mpeix              sco_2_3_2   unisysdynix   
dcosx         irix_4         ncr_tower   sco_2_3_3   utekv   
dec_osf       irix_5         netbsd              sco_2_3_4   uts   
dgux          irix_6_0       newsos4       sco          uwin   
dos_djgpp   irix_6_1       next_3_0      solaris_2   

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.

Which of these apply, if any?

You appear to have ELF support.I'll try to use it for dynamic loading.
If dynamic loading doesn't work, read hints/linux.sh for further information.

You appear to have a working bash.Good.
Your csh is really tcsh.Good.

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?

Operating system version?

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

Note that threading is a highly experimental feature, and
some known race conditions still remain.If you choose to try
it, be very sure to not actually deploy it for production
purposes.README.threads has more details, and is required
reading if you enable threads.
Build a threading Perl?

What is your architecture name

AFS does not seem to be running...

By default, perl5 will be installed in /usr/bin, manual
pages under /usr/man, etc..., i.e. with /usr as prefix for
all installation directories. Typically set to /usr/local, but you
may choose /usr if you wish to install perl5 among your system
binaries. If you wish to have binaries under /bin but manual pages
under /usr/local/man, 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)

Getting the current patchlevel...
(You have perl5 5.0 patchlevel 5 subversion 3.)

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)


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)


Hmm...Looks kind of like a Version 7 system, but we'll see...

Congratulations.You aren't running Eunice.

It's not Xenix...

Nor is it Venix...

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.)

If you are not sure if they are secure, I can check but I'll need a
username and password different from the one you are using right now.
If you don't have such a uname or don't want me to test, simply
enter 'none'.

Other uname to test security of setuid scripts with?
Well, the recommended value is *not* secure.
Does your kernel have *secure* setuid scripts?

Some systems have disabled setuid scripts, especially systems where
setuid scripts cannot be secure.On systems where setuid scripts have
been disabled, the setuid/setgid bits on scripts are currently
useless.It is possible for perl5 to detect those bits and emulate
setuid/setgid in a secure fashion.This emulation will only work if
setuid scripts have been disabled in your kernel.

Do you want to do setuid/setgid emulation?

System manual is in /usr/man/man1.

Some systems have different model sizes.On most systems they are called
small, medium, large, and huge.On the PDP11 they are called unsplit and
split.If your system doesn't support different memory models, say "none".
If you wish to force everything to one memory model, say "none" here and
put the appropriate flags later when it asks you for other cc and ld flags.
Venix systems may wish to put "none" and let the compiler figure things out.
(In the following question multiple model names should be space separated.)

The default for most systems is "none".

Which memory models are supported?

Use which C compiler?

Checking for GNU cc in disguise and/or its version number...
You are using GNU cc 3.2 20020903 (Red Flag Linux 4.0 3.2-9).

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

Now, how can we feed standard input to your C preprocessor...
Maybe "cc -E" will work...
Nope...maybe "cc -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?

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

What is the file extension used for shared libraries?

Checking for optional libraries...
No -lsfio.
No -lsocket.
No -linet.
Found -lnsl (shared).
No -lnm.
No -lndbm.
Found -lgdbm (shared).
No -ldbm.
Found -ldb (shared).
No -lmalloc.
Found -ldl (shared).
No -ldld.
No -lld.
No -lsun.
Found -lm (shared).
Found -lc (shared).
No -lcposix.
No -lposix.
No -lndir.
No -ldir.
Found -lcrypt (shared).
No -lucb.
No -lBSD.
No -lPW.
No -lx.

Some versions of Unix support shared libraries, which make executables smaller
but make load time slightly longer.

On some systems, mostly System V Release 3's, the shared library is included
by putting the option "-lc_s" as the last thing on the cc command line when
linking.Other systems use shared libraries by default.There may be other
libraries needed to compile perl5 on your machine as well.If your system
needs the "-lc_s" option, include it here.Include any other special libraries
here as well.Say "none" for none.

Any additional libraries? [-lnsl -lgdbm -ldb -ldl -lm -lc -lcrypt]

Some C compilers have problems with their optimizers.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? [-O2]

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? [-Dbool=char -DHAS_BOOL -I/usr/local/include]

Let me guess what the preprocessor flags are...
They appear to be: -Dbool=char -DHAS_BOOL -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 /lib /usr/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.

<malloc.h> found.

<stdlib.h> found.

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

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

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

Pathname where the public executables will reside? (~name ok)


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

nm probably won't work on 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?

<dld.h> NOT found.

dlopen() found.

Do you wish to use dynamic loading?
The following dynamic loading files are available:
ext/DynaLoader/dl_aix.xs       ext/DynaLoader/dl_hpux.xs
ext/DynaLoader/dl_beos.xs      ext/DynaLoader/dl_mpeix.xs
ext/DynaLoader/dl_cygwin32.xsext/DynaLoader/dl_next.xs
ext/DynaLoader/dl_dld.xs       ext/DynaLoader/dl_none.xs
ext/DynaLoader/dl_dlopen.xs    ext/DynaLoader/dl_vms.xs
Source file to use for dynamic loading

Some systems may require passing special flags to cc -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 cc -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 cc.

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

Some systems may require passing special flags to cc 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 cc to create a dynamically loaded library?
[-shared -L/usr/local/lib]

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

Any special flags to pass to cc to use dynamic loading? [-rdynamic]

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)

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)
What suffix should be used for the main Perl5 man pages?

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)

What suffix should be used for the perl5 library man pages?

Figuring out host name...
Maybe "hostname" will work...
Your host name appears to be "zdp.linux". Right?
(Normalizing case in your host name)
(Trimming domain name from host name--host name is now zdp)

What is your domain name? [.linux]
(Normalizing case in your domain name)

I need to get your e-mail address in Internet format if possible, i.e.
something like [email protected]. Please answer accurately since I have
no easy means to double check it. The default value provided below
is most probably close to the reality but may not be valid from outside
your organization...

What is your e-mail address?

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 [email protected]. You may
enter "none" for no administrator.

Perl administrator e-mail address

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/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 #!)?

I'll use #!/usr/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)

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

Pathname for the site-specific library files? (~name ok)


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)


Previous version of perl5 used the standard IO mechanisms as defined
in <stdio.h>.Versions 5.003_02 and later of perl allow alternate IO
mechanisms via a "PerlIO" abstraction, but the stdio mechanism is still
the default.This 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.Using PerlIO with stdio is safe,
but it is slower than plain stdio and therefore is not the default.

If this doesn't make any sense to you, just accept the default 'n'.
Use the experimental PerlIO abstraction layer?
Ok, doing things the stdio way

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

access() found.

<sys/file.h> defines the *_OK access constants.

alarm() found.

Checking whether your compiler can handle __attribute__ ...
Your C compiler doesn't fully support __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.

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.

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

Checking whether your C compiler can cast large floats to int32.
Nope, it can't.

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.

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

crypt() found.

cuserid() found.

<limits.h> found.

<float.h> found.

DBL_DIG found.

difftime() found.

<sys/stat.h> found.

<dirent.h> found.

Your directory entries are struct dirent.

Your directory entry does not know about the d_namlen field.

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

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

dup2() found.

endhostent() found.

endnetent() found.

endprotoent() found.

endservent() found.

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

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.

fchmod() found.

fchown() found.

fcntl() found.

fgetpos() found.

flock() found.

fork() found.

pathconf() found.

fpathconf() found.

fsetpos() found.

gethostbyaddr() found.

gethostbyname() found.

<sys/param.h> found.

<sys/mount.h> found.

fstatfs() found.


<sys/statvfs.h> found.

fstatvfs() found.

gethostent() found.

<netdb.h> found.

gethostent() prototype found.

getlogin() found.

getnetbyaddr() found.

getnetbyname() found.

getnetent() found.

getnetent() prototype found.

getprotobyname() found.

getprotobynumber() found.

getprotoent() found.

<mntent.h> found.

getmntent() found.

hasmntopt() found.

getpgid() found.

getpgrp2() NOT found.

getppid() found.

getpriority() found.

getprotoent() prototype found.

getservbyname() found.

getservbyport() found.

getservent() found.

getservent() prototype found.

gettimeofday() found.

<netinet/in.h> found.

<arpa/inet.h> found.

htonl() found.

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

strchr() found.

inet_aton() found.

isascii() found.

killpg() found.

lchown() found.

link() found.

localeconv() found.

lockf() found.

Checking to see if your system supports long doubles... Yup, it does.

Checking to see how big your long doubles are... 12 bytes.

Checking to see if your system supports long long... Yup, it does.

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

lstat() found.

mblen() found.

mbstowcs() found.

mbtowc() found.

memcmp() found.

memcpy() found.

memmove() found.

memset() found.

mkdir() found.

mkfifo() found.

mktime() found.

msgctl() found.

msgget() found.

msgsnd() found.

msgrcv() found.

You have the full msg*(2) library.

nice() found.

pause() found.

pipe() found.

poll() found.
pthread_yield() NOT found.
sched_yield() found.

<pthread.h> found.

<mach/cthreads.h> NOT found.

<pwd.h> found.

setpwent() found.

getpwent() found.

endpwent() found.

readdir() found.

seekdir() found.

telldir() found.

rewinddir() found.

readlink() found.

rename() found.

rmdir() found.

<memory.h> found.

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

Checking to see if your bcopy() can do overlapping copies...
Yes, it can.

Checking to see if your memcpy() can do overlapping copies...
It can't, sorry.
But that's Ok since you have memmove().

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

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 can also use struct semid_ds* for semctl IPC_STAT.

setegid() found.

seteuid() found.

sethostent() found.

setlinebuf() found.

setlocale() found.

setnetent() found.

setprotoent() found.

setpgid() found.

setpgrp2() NOT found.

setpriority() found.

setregid() found.

setresgid() found.

setreuid() found.

setresuid() found.

setrgid() NOT found.

setruid() NOT found.

setservent() 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.

POSIX sigsetjmp found.

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

socketpair() found.


Checking how std your stdio is...
Your stdio doesn't appear very std.

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.)

strtod() found.

strtol() found.

strtoul() found.

strxfrm() found.

symlink() found.

syscall() found.

sysconf() found.

system() found.

tcgetpgrp() found.

tcsetpgrp() found.

<sys/times.h> found.

times() found.

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

truncate() found.

tzname[] found.

umask() found.

uname() 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()?
Ok, we won't use vfork().

<sys/dir.h> found.

<sys/ndir.h> NOT found.

<sys/types.h> found.

closedir() found.

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

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

wait4() found.

waitpid() found.

wcstombs() found.

wctomb() found.

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

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. If
the test program works the default is probably right.
I'm now running the test program...
(The test program ran ok.)
byteorder=1234

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

<db.h> found.

Checking Berkeley DB version ...
You have Berkeley DB Version 2 or greater
db.h is from Berkeley DB Version 4.0.14
libdb is from Berkeley DB Version 4.0.14
db.h and libdb are compatible
Looks OK.

Checking return type needed for hash for Berkeley DB ...
Your version of Berkeley DB uses int for hash.

Checking return type needed for prefix for Berkeley DB ...
Your version of Berkeley DB uses int for prefix.

Checking to see how well your C compiler groks the void type...
Good.It appears to support void to the level perl5 wants.
However, you might get some warnings that look like this:
cc1: warning: changing search order for system directory "/usr/local/include"
cc1: warning:   as it has already been specified as a non-system directory

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

Determining whether or not we are on an EBCDIC system...
Nope, no EBCDIC.Assuming ASCII or some ISO Latin.

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

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

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()?


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

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.

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 void * for the first arg.
...and size_t 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?

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

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

Checking to see how many bits your rand function produces...
How many bits does your rand() function produce?

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

<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_TIME -DI_SYSTIME -DS_TIMEVAL
We'll include <time.h>.
We'll include <sys/time.h>.

Checking to see how well your C compiler handles fd_set and friends ...
Hmm, your compiler has some difficulty with fd_set.Checking further...
Well, your system has some sort of fd_set available...
and you have the normal fd_set macros.
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 signals are available:

SIGZERO SIGHUP SIGINT SIGQUIT SIGILL SIGTRAP SIGABRT SIGBUS SIGFPE
SIGKILL SIGUSR1 SIGSEGV SIGUSR2 SIGPIPE SIGALRM SIGTERM SIGSTKFLT
SIGCHLD SIGCONT SIGSTOP SIGTSTP SIGTTIN SIGTTOU SIGURG SIGXCPU
SIGXFSZ SIGVTALRM SIGPROF SIGWINCH SIGIO SIGPWR SIGSYS SIGNUM32
SIGNUM33 SIGNUM34 SIGNUM35 SIGNUM36 SIGNUM37 SIGNUM38 SIGNUM39
SIGNUM40 SIGNUM41 SIGNUM42 SIGNUM43 SIGNUM44 SIGNUM45 SIGNUM46
SIGNUM47 SIGNUM48 SIGNUM49 SIGNUM50 SIGNUM51 SIGNUM52 SIGNUM53
SIGNUM54 SIGNUM55 SIGNUM56 SIGNUM57 SIGNUM58 SIGNUM59 SIGNUM60
SIGNUM61 SIGNUM62 SIGNUM63 SIGRTMIN SIGIOT SIGCLD SIGPOLL SIGUNUSED

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

Your stdio uses signed chars.

time() found.

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

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

dbmclose() found.

<dbm.h> NOT found.

<rpcsvc/dbm.h> NOT found.

<sys/file.h> found.

We'll be including <sys/file.h>.

<fcntl.h> found.

We don't need to include <fcntl.h> if we include <sys/file.h>.

<grp.h> found.

setgrent() found.

getgrent() found.

endgrent() found.

<locale.h> found.

<math.h> found.

<ndbm.h> NOT found.

<net/errno.h> NOT found.

Hmm... Your C compiler and pre-processor define these symbols:
i386
__i386
__i386__
linux
__linux__
unix
__unix
__unix__

Your C pre-processor also defines the following symbols:
__STDC__

Your C compiler further defines the following cpp symbols:
-Acpu=i386
-Amachine=i386
-Asystem=posix
__ELF__
__GNUC__=3
__GNUC_MINOR__=2
__GNUC_PATCHLEVEL__=0
__gnu_linux__
__GXX_ABI_VERSION02
__linux
__NO_INLINE__
__STDC_HOSTED__
__tune_i386__

tcsetattr() found.

You have POSIX termios.h... good!

<stdarg.h> found.

<varargs.h> found.

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

<stddef.h> found.

<sys/filio.h> NOT found.

<sys/ioctl.h> found.

<sys/resource.h> found.

<sys/un.h> found.

<sys/wait.h> found.

<utime.h> found.

<values.h> found.

<gdbm.h> found.

gdbm_open() 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?

What extensions do you wish to load statically?


End of configuration questions.


Stripping down executable paths...

Creating config.sh...

Doing variable substitutions on .SH files...
Extracting Makefile (with variable substitutions)
Extracting Policy.sh (with variable substitutions)
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 perl.exp
Extracting writemain (with variable substitutions)
Extracting x2p/Makefile (with variable substitutions)
Extracting x2p/cflags (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?
sh ./makedepend MAKE=make
make: Entering directory `/tmp/download/perl5.005_03'
sh writemain lib/auto/DynaLoader/DynaLoader.a> tmp
sh mv-if-diff tmp perlmain.c
echoav.c scope.c op.c doop.c doio.c dump.c hv.c mg.c byterun.c perl.c perly.c pp.c pp_hot.c pp_ctl.c pp_sys.c regcomp.c regexec.c gv.c sv.c taint.c toke.c util.c deb.c run.c universal.c globals.c perlio.c miniperlmain.c perlmain.c | tr ' ' '\n' >.clist
make: Leaving directory `/tmp/download/perl5.005_03'
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 byterun.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 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 globals.o.
Finding dependencies for perlio.o.
Finding dependencies for miniperlmain.o.
Finding dependencies for perlmain.o.
make: Entering directory `/tmp/download/perl5.005_03'
echo Makefile.SH cflags.SH config_h.SH makeaperl.SH makedepend.SH makedir.SH perl_exp.SH writemain.SH | tr ' ' '\n' >.shlist
make: Leaving directory `/tmp/download/perl5.005_03'
Updating makefile...
test -s perlmain.c && touch perlmain.c
cd x2p; make depend
make: Entering directory `/tmp/download/perl5.005_03/x2p'
sh ../makedepend MAKE=make
make: Entering directory `/tmp/download/perl5.005_03/x2p'
echo hash.cstr.c util.c walk.c | tr ' ' '\n' >.clist
make: Leaving directory `/tmp/download/perl5.005_03/x2p'
Finding dependencies for hash.o.
Finding dependencies for str.o.
Finding dependencies for util.o.
Finding dependencies for walk.o.
make: Entering directory `/tmp/download/perl5.005_03/x2p'
echo Makefile.SH cflags.SH | tr ' ' '\n' >.shlist
make: Leaving directory `/tmp/download/perl5.005_03/x2p'
Updating makefile...
make: Leaving directory `/tmp/download/perl5.005_03/x2p'
Now you must run a 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.

coolzdp 发表于 2004-10-15 21:54:56

不好意思没注意有这么多~~~~~~~~~

还有n个这个:
cpp0: warning: changing search order for system directort "/usr/local/include"
cpp0:   as it has already been specified as a non-system directory

zzh2004linux 发表于 2004-10-19 21:38:07

一般装GCC和所有光盘带的库,然后编译其他软件就不出错了,建议还是看看你的系统有没有使用说明手册,如何安装光盘的软件库程序。
页: [1]
查看完整版本: 安装perl的问题