从源代码构建 perl 时,configure 不生成 makefile

2024-03-31

我正在 Ubuntu 14.04(内核 3.13.0-24-generic)上从源代码构建 perl:

wget http://www.cpan.org/src/5.0/perl-5.22.2.tar.gz
tar -xzf perl-5.22.2.tar.gz
cd perl-5.22.2
./Configure -des -Dprefix=$HOME/perl5.22

配置未生成 makefile。输出日志为:

First let's make sure your kit is complete.  Checking...
Locating common programs...
Checking compatibility between /bin/echo and builtin echo (if any)...
Symbolic links are supported.

Checking how to test for symbolic links...
You can test for symbolic links with 'test -h'.
Checking for cross-compile
No targethost for running compiler tests against defined, running locally
Good, your tr supports [:lower:] and [:upper:] to convert case.
Using [:upper:] and [:lower:] to convert case.
aix_3         dragonfly       irix_4            nonstopux     stellar   
...  
dos_djgpp     interix         newsos4           solaris_2   
Which of these apply, if any? [linux]  

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.
Operating system name? [linux]  
Operating system version? [3.13.0-24-generic]  
Installation prefix to use? (~name ok) [/home/zxu/perl5.22]  
AFS does not seem to be running...
What installation prefix should I use for installing files? (~name ok)
[/home/zxu/perl5.22]  
Getting the current patchlevel...
Build a threading Perl? [n]  
Build Perl for multiplicity? [n]  
Use which C compiler? [cc]  
Checking for GNU cc in disguise and/or its version number...
Now, how can we feed standard input to your C preprocessor...
Directories to use for library searches?
[/home/zxu/lib /usr/local/lib /usr/lib/gcc/x86_64-linux-gnu/4.8/include-fixed /usr/include/x86_64-linux-gnu /usr/lib /home/zxu/lib/../lib /lib/x86_64-linux-gnu /lib/../lib /usr/lib/x86_64-linux-gnu /usr/l
ib/../lib /lib]  
What is the file extension used for shared libraries? [so]  
Make shared library basenames unique? [n]  
Build Perl for SOCKS? [n]  
Try to use long doubles if available? [n]  
Checking for optional libraries...
What libraries to use? [-lpthread -lnsl -ldl -lm -lcrypt -lutil -lc]  
What optimizer/debugger flag should be used? [-O2]  
Any additional cc flags?
[-fwrapv -fno-strict-aliasing -pipe -fstack-protector -I/usr/local/include]  
Let me guess what the preprocessor flags are...
Any additional ld flags (NOT including libraries)?
[ -fstack-protector -L/usr/local/lib]  
Checking your choice of C compiler and flags for coherency...
Computing filename position in cpp output for #include directives...
<stdlib.h> found.
Checking to see how big your integers are...
Checking to see if you have long long...
Checking to see how big your long longs are...
<inttypes.h> found.
Checking to see if you have int64_t...
Checking which 64-bit integer type we could use...
We could use 'long' for 64-bit integers.
Try to use maximal 64-bit support, if available? [y]  
Checking if your C library has broken 64-bit functions...
Checking for GNU C Library...
nm probably won't work on the GNU C Library.
Shall I use /usr/bin/nm to extract C symbols from the libraries? [n]  
Checking for C++...
Checking to see how big your double precision numbers are...
<float.h> found.
Checking to see if you have long double...
ldexpl() found.
Checking to see how big your long doubles are...
Checking the kind of long doubles you have...
You have x86 80-bit little endian long doubles.
What is your architecture name [x86_64-linux]  
Add the Perl API version to your archname? [n]  
This architecture is naturally 64-bit, not changing architecture name.
Pathname where the public executables will reside? (~name ok)
[/home/zxu/perl5.22/bin]  
Use relocatable @INC? [n]  
Pathname where the private library files will reside? (~name ok)
[/home/zxu/perl5.22/lib/5.22.2]  
Where do you want to put the public architecture-dependent libraries? (~name ok)
[/home/zxu/perl5.22/lib/5.22.2/x86_64-linux]  
Other username to test security of setuid scripts with? [none]  
Well, the recommended value is *not* secure.
Does your kernel have *secure* setuid scripts? [n]  
Installation prefix to use for add-on modules and utilities? (~name ok)
[/home/zxu/perl5.22]  
Pathname for the site-specific library files? (~name ok)
[/home/zxu/perl5.22/lib/site_perl/5.22.2]  
List of earlier versions to include in @INC? [none]  
<malloc/malloc.h> NOT found.
<malloc.h> found.
Checking to see how big your pointers are...
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.
Pathname for the site-specific architecture-dependent library files? (~name ok)
[/home/zxu/perl5.22/lib/site_perl/5.22.2/x86_64-linux]  
Do you want to configure vendor-specific add-on directories? [n]  
Colon-separated list of additional directories for perl to search? [none]  
Checking out function prototypes...
Support DTrace if available? [n]  
Install any extra modules (y or n)? [n]  
Directory for the main Perl5 html pages? (~name ok) [none]  
Directory for the Perl5 module html pages? (~name ok) [none]  
Do you want to install perl as /usr/bin/perl? [n]  
dlopen() found.
<unistd.h> found.
Do you wish to use dynamic loading? [y]  
Source file to use for dynamic loading [ext/DynaLoader/dl_dlopen.xs]  
Any special flags to pass to cc -c to compile shared library modules?
[-fPIC]  
What command should be used to create dynamic libraries? [cc]  
Any special flags to pass to cc to create a dynamically loaded library?
[-shared -O2 -L/usr/local/lib -fstack-protector]  
Any special flags to pass to cc to use dynamic linking? [-Wl,-E]  
ld supports scripting
Build a shared libperl.so (y/n) [n]  
System manual is in /usr/share/man/man1.
Where do the main Perl5 manual pages (source) go? (~name ok)
[/home/zxu/perl5.22/man/man1]  
What suffix should be used for the main Perl5 man pages? [1]  
You can have filenames longer than 14 characters.
Where do the perl5 library man pages (source) go? (~name ok)
[/home/zxu/perl5.22/man/man3]  
What suffix should be used for the perl5 library man pages? [3]  
Figuring out host name...
Your host name appears to be "***". Right? [y]  
What is your domain name? [***]  
What is your e-mail address? [zxu@***]  
Perl administrator e-mail address [zxu@***]  
Do you want to install only the version-specific parts of perl? [n]  
What shall I put after the #! to start up perl ("none" to not use #!)?
[/home/zxu/perl5.22/bin/perl]  
Where do you keep publicly executable scripts? (~name ok)
[/home/zxu/perl5.22/bin]  
Pathname where the add-on public executables should be installed? (~name ok)
[/home/zxu/perl5.22/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)
[/home/zxu/perl5.22/man/man1]  
Pathname where the site-specific library manual pages should be installed? (~name ok)
[/home/zxu/perl5.22/man/man3]  
Pathname where add-on public executable scripts should be installed? (~name ok)
[/home/zxu/perl5.22/bin]  
backtrace() found.
Use the "fast stdio" if available? [n]  
off_t found.
Checking to see how big your file offsets are...
fpos_t found.
Checking the size of fpos_t...
Try to understand large files, if available? [y]  
Rechecking to see how big your file offsets are...
Rechecking the size of fpos_t... 16 bytes.
Using <string.h> instead of <strings.h>.
qgcvt() found.
Checking the kind of doubles you have...
You have IEEE 754 64-bit little endian doubles.
Checking how to print long doubles...
gconvert NOT found.
gcvt() found.
I'll use gcvt to convert floats into a string.
fwalk() NOT found.
access() found.
<sys/file.h> defines the *_OK access constants.
accessx() NOT found.
acosh() found.
aintl() NOT found.
alarm() found.
ctime64() NOT found.
localtime64() NOT found.
gmtime64() NOT found.
mktime64() NOT found.
difftime64() NOT found.
asctime64() NOT 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.
We'll include <time.h>.
We'll include <sys/time.h>.
Checking to see if your struct tm has tm_zone field...
Checking to see if your struct tm has tm_gmtoff field...
asctime_r() found.
asinh() found.
atanh() found.
atolf() NOT found.
atoll() found.
Checking whether your compiler can handle __attribute__((format)) ...
Checking whether your compiler allows __printf__ format to be null ...
Checking whether your compiler can handle __attribute__((malloc)) ...
Checking whether your compiler can handle __attribute__((nonnull(1))) ...
Checking whether your compiler can handle __attribute__((noreturn)) ...
Checking whether your compiler can handle __attribute__((pure)) ...
Checking whether your compiler can handle __attribute__((unused)) ...
Checking whether your compiler can handle __attribute__((deprecated)) ...
Checking whether your compiler can handle __attribute__((warn_unused_result)) ...
bcmp() found.
bcopy() found.
getpgrp() found.
You have to use getpgrp() instead of getpgrp(pid).
setpgrp() found.
You have to use setpgrp() instead of setpgrp(pid,pgrp).
Checking whether your compiler can handle __builtin_choose_expr ...
Checking whether your compiler can handle __builtin_expect ...
bzero() found.
<stdarg.h> found.
<varargs.h> found.
We'll include <stdarg.h> to get va_dcl definition.
You have <stdarg.h> and <stdlib.h>, so checking for C99 variadic macros.
You have C99 variadic macros.
You have void (*signal())().
Checking whether your C compiler can cast large floats to int32.
Checking whether your C compiler can cast negative float to unsigned.
cbrt() found.
vprintf() found.
Your vsprintf() returns (int).
chown() found.
chroot() found.
chsize() NOT found.
class() NOT found.
clearenv() found.
Hmm... Looks like you have Berkeley networking support.
socketpair() found.
Checking the availability sa_len in the sock struct ...
Checking the availability struct sockaddr_in6 ...
Checking the availability sin6_scope_id in struct sockaddr_in6 ...
Checking the availability struct ip_mreq ...
Checking the availability struct ip_mreq_source ...
Checking the availability struct ipv6_mreq ...
Checking the availability struct ipv6_mreq_source ...
Checking the availability of certain socket constants...
<sys/uio.h> found.
Checking to see if your system supports struct cmsghdr...
Checking to see if your C compiler knows about "const"...
copysign() found.
copysignl() found.
crypt() found.
<crypt.h> found.
crypt_r() found.
ctermid() found.
ctermid_r() NOT found.
ctime_r() found.
cuserid() found.
<limits.h> found.
DBL_DIG found.
dbmclose() NOT found.
difftime() found.
<dirent.h> found.
Your directory entries are struct dirent.
Your directory entry does not know about the d_namlen field.
Checking to see if DIR has a dd_fd member variable
<sys/dir.h> found.
<sys/ndir.h> NOT found.
dirfd() found.
dladdr() found.
dlerror() found.
<dlfcn.h> found.
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() found.
dup2() found.
eaccess() 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.
<sys/file.h> defines the O_* constants...
and you have the 3 argument form of open().
<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>.
fork() found.
pipe() found.
Figuring out the flag used by open() for non-blocking I/O...
Let's see what value errno gets from read() on a O_NONBLOCK file...
erf() found.
erfc() found.
exp2() found.
expm1() found.
Checking how std your stdio is...
Checking to see what happens if we set the stdio ptr...
Increasing ptr in your stdio decreases cnt by the same amount.  Good.
You seem to have 'fast stdio' to directly manipulate the stdio buffers.
fchdir() found.
fchmod() found.
fchown() found.
fcntl() found.
Well, your system has some sort of fd_set available...
and you have the normal fd_set macros.
fdim() found.
fegetround() found.
fgetpos() found.
finite() found.
finitel() found.
flock() found.
fma() found.
fmax() found.
fmin() found.
fp_class() NOT found.
<math.h> found.
Checking to see if you have fpclassify...
fp_classify() NOT found.
fp_classl() NOT found.
pathconf() found.
fpathconf() found.
fpclass() NOT found.
fpclassl() NOT found.
fpgetround() NOT found.
Checking to see if you have fpos64_t...
frexpl() found.
<sys/param.h> found.
<sys/mount.h> found.
Checking to see if your system supports struct fs_data...
fseeko() found.
fsetpos() found.
fstatfs() found.
statvfs() found.
fstatvfs() found.
fsync() found.
ftello() found.
Checking if you have a working futimes()
Yes, you have
<ndbm.h> NOT found.
<gdbm/ndbm.h> NOT found.
<gdbm-ndbm.h> NOT found.
getaddrinfo() found.
getcwd() found.
getespwnam() NOT found.
getfsstat() NOT found.
getgrent() found.
getgrent_r() found.
getgrgid_r() found.
getgrnam_r() found.
gethostbyaddr() found.
gethostbyname() found.
gethostent() found.
gethostname() found.
uname() found.
Shall I ignore gethostname() from now on? [n]  
gethostbyaddr_r() found.
gethostbyname_r() found.
gethostent_r() found.
getitimer() found.
getlogin() found.
getlogin_r() found.
getmnt() NOT found.
getmntent() found.
getnameinfo() found.
getnetbyaddr() found.
getnetbyname() found.
getnetent() found.
getnetbyaddr_r() found.
getnetbyname_r() found.
getnetent_r() found.
getpagesize() found.
getprotobyname() found.
getprotobynumber() found.
getprotoent() found.
getpgid() found.
getpgrp2() NOT found.
getppid() found.
getpriority() found.
getprotobyname_r() found.
getprotobynumber_r() found.
getprotoent_r() found.
getprpwnam() NOT found.
getpwent() found.
getpwent_r() found.
getpwnam_r() found.
getpwuid_r() found.
getservbyname() found.
getservbyport() found.
getservent() found.
getservbyname_r() found.
getservbyport_r() found.
getservent_r() found.
getspnam() found.
<shadow.h> found.
getspnam_r() found.
gettimeofday() found.
gmtime_r() found.
hasmntopt() found.
<netinet/in.h> found.
<arpa/inet.h> found.
htonl() found.
hypot() found.
ilogb() found.
ilogbl() found.
strchr() found.
inet_aton() found.
inet_ntop() found.
inet_pton() found.
isascii() found.
isblank() found.
Checking to see if you have isfinite...
isfinitel() NOT found.
Checking to see if you have isinf...
isinfl() found.
Checking to see if you have isless...
Checking to see if you have isnan...
isnanl() found.
Checking to see if you have isnormal...
j0() found.
j0l() found.
killpg() found.
localeconv() found.
lchown() found.
LDBL_DIG found.
lgamma() found.
lgamma_r() found.
Checking to see if your libm supports _LIB_VERSION...
Yes, it does (2)
link() found.
llrint() found.
llrintl() found.
llround() found.
llroundl() found.
localtime_r() found.
lockf() found.
log1p() found.
log2() found.
logb() found.
lrint() found.
lrintl() found.
lround() found.
lroundl() found.
lstat() found.
madvise() found.
malloc_size() NOT found.
malloc_good_size() NOT found.
mblen() found.
mbstowcs() found.
mbtowc() found.
memchr() found.
memcmp() found.
memcpy() found.
memmove() found.
memset() found.
mkdir() found.
mkdtemp() found.
mkfifo() found.
mkstemp() found.
mkstemps() found.
mktime() found.
<sys/mman.h> found.
mmap() found.
and it returns (void *).
sqrtl() found.
scalbnl() found.
truncl() found.
modfl() found.
Your modfl() seems okay for large values.
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...
msync() found.
munmap() found.
nan() found.
nearbyint() found.
nextafter() found.
nexttoward() found.
nice() found.
<langinfo.h> found.
nl_langinfo() found.
<quadmath.h> found.
Checking to see if your C compiler knows about "volatile"...
Choosing the C types to be used for Perl's internal types...
Checking how many bits of your UVs your NVs can preserve...
Checking to find the largest integer value your NVs can hold...
The largest integer your NVs can preserve is equal to 256.0*256.0*256.0*256.0*256.0*256.0*2.0*2.0*2.0*2.0*2.0
Checking whether NV 0.0 is all bits zero in memory...
0.0 is represented as all bits zero in memory
Checking to see if you have off64_t...
pause() found.
poll() found.
prctl() found.
readlink() found.
vfork() found.
Do you still want to use vfork()? [n]  
pthread_attr_setscope() found.
Checking to see if you have ptrdiff_t...
random_r() found.
readdir() found.
seekdir() found.
telldir() found.
rewinddir() found.
readdir64_r() found.
readdir_r() found.
readv() found.
recvmsg() found.
regcomp() found.
remainder() found.
remquo() found.
rename() found.
rint() found.
rmdir() found.
round() found.
<memory.h> found.
Checking if your memcmp() can compare relative magnitude...
scalbn() 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 can also 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() found.
setreuid() found.
setresuid() found.
setrgid() NOT found.
setruid() NOT found.
setservent() found.
setservent_r() NOT found.
setsid() found.
setvbuf() found.
shmctl() found.
shmget() found.
shmat() found.
and it returns (void *).
shmdt() found.
You have the full shm*(2) library.
sigaction() found.
<sunmath.h> NOT found.
Checking to see if you have signbit() available to work on double... Yes.
sigprocmask() found.
POSIX sigsetjmp found.
snprintf() found.
vsnprintf() found.
sockatmark() found.
socks5_init() NOT found.
Checking whether sprintf returns the length of the string...
sprintf returns the length of the string (as ANSI says it should)
srand48_r() found.
srandom_r() found.
stat() 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...
Checking to see if your struct statfs has f_flags field...
Your compiler supports static __inline__.
Checking how to access stdio streams by file descriptor number...
I can't figure out how to access stdio streams by file descriptor number.
strcoll() found.
Checking to see if your C compiler can copy structs...
strerror() found.
strerror_r() found.
strftime() found.
strlcat() NOT found.
strlcpy() NOT found.
strtod() found.
strtol() found.
strtold() found.
strtoll() found.
strtoq() found.
strtoul() found.
strtoull() found.
strtouq() found.
strxfrm() found.
symlink() found.
syscall() found.
sysconf() found.
system() found.
tcgetpgrp() found.
tcsetpgrp() found.
tgamma() found.
time() found.
time_t found.
timegm() found.
<sys/times.h> found.
times() found.
clock_t found.
tmpnam_r() found.
trunc() found.
truncate() found.
ttyname_r() found.
tzname[] found.
(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() NOT found.
unsetenv() found.
usleep() found.
ustat() found.
closedir() found.
Checking whether closedir() returns a status...
wait4() found.
waitpid() found.
A working wcscmp() found.
wcstombs() found.
A working wcsxfrm() found.
wctomb() found.
writev() found.
Checking alignment constraints...
Doubles must be aligned on a how-many-byte boundary? [8]  
Checking how long a character is (in bits)...
What is the length of a character (in bits)? [8]  
Checking to see how your cpp does stuff like concatenate tokens...
Oh!  Smells like ANSI's been here.
<db.h> NOT found.
Using our internal random number implementation...
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...
fflush(NULL) seems to behave okay with input streams.
Checking the size of gid_t...
Checking the sign of gid_t...
Checking how to print 64-bit integers...
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 pointer is the second argument to getgroups() and setgroups()?
[gid_t]  
Checking if your /usr/bin/make program sets $(MAKE)...
mode_t found.
It seems that va_copy() or similar will be needed.
size_t found.
What is the type for the 1st argument to gethostbyaddr? [char *]  
What is the type for the 2nd argument to gethostbyaddr? [size_t]  
What pager is used on your system? [/usr/bin/less -R]  
pid_t found.
Checking how to generate random libraries on your machine...
<values.h> found.
Your select() operates on 64 bits at a time.
Generating a list of signal names and numbers...
Checking the size of size_t...
Checking to see if you have socklen_t...
<socks.h> NOT found.
I'll be using ssize_t for functions returning a byte count.
Checking the size of st_ino...
Checking the sign of st_ino...
Your stdio uses signed chars.
Checking the size of uid_t...
Checking the sign of uid_t...
Checking the format string to be used for uids...
Determining whether we can use sysctl with KERN_PROC_PATHNAME to find executing program...
I'm unable to compile the test program.
I'll assume no sysctl with KERN_PROC_PATHNAME here.
Determining whether we can use _NSGetExecutablePath to find executing program...
I'm unable to compile the test program.
I'll assume no _NSGetExecutablePath here.
It appears we'll be able to prototype varargs functions.
Which compiler compiler (yacc) shall I use? [yacc]  
<assert.h> found.
<bfd.h> NOT found.
<execinfo.h> found.
<fenv.h> found.
<fp.h> NOT found.
<fp_class.h> NOT found.
<gdbm.h> NOT found.
<ieeefp.h> NOT found.
<libutil.h> NOT found.
<mntent.h> 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...
You seem to have -D_FORTIFY_SOURCE already, not adding it.
tcsetattr() found.
You have POSIX termios.h... good!
<stdbool.h> found.
<stddef.h> found.
<stdint.h> found.
<sys/access.h> NOT found.
<sys/filio.h> NOT found.
<sys/ioctl.h> found.
<syslog.h> found.
<sys/mode.h> NOT found.
<sys/poll.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.
Looking for extensions...
What extensions do you wish to load dynamically?
[arybase attributes B Compress/Raw/Bzip2 Compress/Raw/Zlib Cwd Data/Dumper Devel/Peek Devel/PPPort Digest/MD5 Digest/SHA Encode Fcntl File/DosGlob File/Glob Filter/Util/Call Hash/Util Hash/Util/FieldHash 
I18N/Langinfo IO IPC/SysV List/Util Math/BigInt/FastCalc MIME/Base64 mro Opcode PerlIO/encoding PerlIO/mmap PerlIO/scalar PerlIO/via POSIX re SDBM_File Socket Storable Sys/Hostname Sys/Syslog threads thre
ads/shared Tie/Hash/NamedCapture Time/HiRes Time/Piece Unicode/Collate XS/APItest XS/Typemap]  
What extensions do you wish to load statically? [none]  
Stripping down executable paths...
Creating config.sh...
Doing variable substitutions on .SH files...
Extracting config.h (with variable substitutions)
cflags.SH: Adding -std=c89.
cflags.SH: Adding -Werror=declaration-after-statement.
cflags.SH: Adding -Wextra.
cflags.SH: Adding -Wc++-compat.
cflags.SH: Adding -Wwrite-strings.
cflags.SH: cc       = cc
cflags.SH: ccflags  = -fwrapv -fno-strict-aliasing -pipe -fstack-protector -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64
cflags.SH: stdflags =  -std=c89
cflags.SH: optimize = -O2
cflags.SH: warn     =  -Wall -Werror=declaration-after-statement -Wextra -Wc++-compat -Wwrite-strings
Extracting cflags (with variable substitutions)
Not re-extracting config.h
Extracting makedepend (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 runtests (with variable substitutions)
Configure done.
...

与另一台机器上成功的Configure相比,它没有执行makedepend:

Extracting runtests (with variable substitutions)
Run make depend now? [y]  
sh ./makedepend MAKE="make" cflags

执行上面的 makedepend 行给出了一条消息make: *** No rule to make target 'clist'. Stop.。有调试这个的提示吗?非常感激!


您发布的输出中令人惊讶的是您直接从这里开始:

Extracting runtests (with variable substitutions)

...对此:

Configure done.

...至少没有得到此提示(和响应):

Run make depend now? [y]

在 ./Configure 中,我们有这个“if”块:

if $contains '^depend:' [Mm]akefile >/dev/null 2>&1; then
    dflt=y
    case "$silent" in
    true) ;;
    *)
        $cat <<EOM

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.

EOM
        ;;
    esac
    rp="Run $make depend now?"
    . UU/myread
    case "$ans" in
    y*)
        $make depend && echo "Now you must run '$make'."
        ;;
    *)
        echo "You must run '$make depend' then '$make'."
        ;;
    esac
elif test -f [Mm]akefile; then
    echo " "
    echo "Now you must run a $make."
else
    echo "Configure done."
fi
  1. 您正在配置的目录中是否可能没有“Makefile”(或“makefile”)? (注意,我不知道为什么会出现这种情况,但这就是 STDOUT 语句序列似乎所暗示的。)

  2. 我检查了你的配置输出以及我的 perl-5.22.2 的输出。我注意到的最显着的差异是:

(a) 您似乎没有安装 BerkeleyDB;和

(b) 在目录列表的开头有目录“/home/zxu/lib”,这是此探测器的配置输出:

用于图书馆搜索的目录?

我不太确定为什么(b)会这样。您可能想发布此命令的输出:

grep -E 'libpth\b' config.sh

这可能与您原来的问题无关,但它是异常的。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

从源代码构建 perl 时,configure 不生成 makefile 的相关文章

  • 使用 XML::LibXML 删除 XML 命名空间

    我正在将 XML 文档转换为 HTML 需要做的事情之一是删除命名空间 命名空间不能在 HTML 中合法声明 除非它是根标记中的 XHTML 命名空间 我发现过 5 到 10 年前的帖子 介绍使用 XML LibXML 和 LibXML2
  • 在ubuntu 18.04上安装python 2.7

    有没有办法在 Ubuntu 18 04 上安装 Python 2 7 我尝试了这个命令 但它不起作用 sudo apt install python minimal 有没有办法手动安装 我尝试使用 python 2 7 作为不支持 pyth
  • 在 Linux/Ubuntu 计算机上通过 Python/Django 设置网络设置

    我正在为嵌入式计算机开发一个简单的网络界面 计算机将附带一个静态默认 IP 然后需要由可能不懂技术 Linux 的安装技术人员进行更新 基本上我需要从 Django 应用程序更改以下系统设置 IP地址 Subnet 默认网关 DNS 服务器
  • 配置失败,因为找不到 libcurl

    我正在尝试使用从远程服务器提取一些 json 数据fromJSON gt server lt http 111 111 000 00 3000 gt streams lt fromJSON paste server output strea
  • “docker compose up”永远挂起(通常),即使使用 V2,尽管熵很高(Ubuntu)

    我遇到了问题docker compose up命令 因此 我最近创建了一个全新的 Ubuntu 操作系统安装 并且一直在设置我的开发环境 我已经安装了 Docker 并mostly一切似乎都运转良好 启动单个容器按预期工作 例如 docke
  • Perl:避免从标准输入贪婪读取?

    考虑以下 perl 脚本 read pl my line
  • GNU Make 与 patsubst:需要两次替换

    我需要在变量替换的替换中引用词干两次 O23 OROOTS ODIR overx 2wk 3wk mlb 我需要使用相同的词干执行两次替换 但是替换使用patsubst这只做第一个 我们怎样才能同时实现这两点呢 事实上 杰克几乎猜对了 fo
  • 使用mongodb+srv配置Mongo

    我在 docker 上启动 mongo 所以默认主机 localhost port 27017 用户名 root密码 example 现在我想通过连接字符串进行连接 mongodb srv root example localhost si
  • 如何在 Perl 中取消导入函数?

    我正在尝试删除导入的符号 以便它们不能用作对象中的方法 但是no似乎不起作用 也许我不明白不 或者还有其他方法 use 5 014 use warnings use Test More still has carp after no car
  • 如何在 Perl 中使用数组引用中的索引作为方法引用?

    如同这个关于迭代子例程引用的问题 https stackoverflow com questions 452529 how do i iterate over dereference an array of subroutine refs
  • 代码::块 - 警告:GDB:无法设置控制终端:不允许操作

    我已经通过官方存储库在 Ubuntu 14 04 中安装了 Code Blocks 13 12 当我编译时 一切正常 但是当我调试时 shell 中会显示以下消息 警告 GDB 无法设置控制终端 操作不正确 允许的 程序执行到断点 但当我执
  • Perl Mongo 查找对象 ID

    你会认为这是一件简单的事情 我有一个集合中的对象 ID 列表 我想根据对象 ID 获取单个记录 谷歌搜索过 但没有任何帮助 所以我有对象 ID 5106c7703abc120a04070b34 my client MongoDB Mongo
  • 哪一个代表null? undef 或空字符串

    我想插入null在表的一列中 哪一个代表null undef或空字符串 应该使用哪一种 为什么 我知道关于defined我可以检查一下 但我更多的是从数据库的角度来看 代表哪一个null更合适吗 Update 我在用DBI module D
  • 箭头键变成 Telnet 中的控制字符

    我在 Ubuntu 终端中 并通过 telnet 连接到服务器 现在每当我输入 up 时 它就会变成 A 其他箭头键也变成控制字符 有没有办法可以运行 telnet 以便它理解我的箭头键 这将是一个巨大的帮助 因为我想在我的命令历史记录中向
  • 使用 perl 比较两个 Unicode 字符串

    当我运行以下代码时 它不会进入 在此处执行某些操作 部分 my a P 3 lt 1 my b P 3 lt 1 if a ne b do something here 还有另一种方法可以将 Unicode 字符串与 perl 进行比较吗
  • 通过 SSH 将变量传递给远程脚本

    我正在通过 SSH 从本地服务器在远程服务器上运行脚本 首先使用 SCP 复制该脚本 然后在传递一些参数时调用该脚本 如下所示 scp path to script server example org another path ssh s
  • gdb 错误 - 文件不是可执行格式:无法识别文件格式

    我正在尝试使用 gdb 调试某个名为 xdf 的程序 但是当我运行 gdb xdf 时 出现以下错误 home nealtitusthomas X ray astronomy heasoft 6 24 x86 64 pc linux gnu
  • 有没有人在 Ubuntu 16.04 LTS 上安装 QGIS

    按照以下网址提供的说明进行操作 这一页 http www qgis org en site forusers alldownloads html并收到以下错误 以下软件包具有未满足的依赖关系 python qgis Depends pyth
  • Perl 中字符串之间的字符匹配计数

    我有一个字符串 例如字符串 1 需要与另一个字符串 字符串 2 匹配 两个字符串的长度相同并且不区分大小写 我想打印两个字符串之间的字符匹配数 E g String 1 stranger String 2 strangem Match co
  • Ubuntu 12.04 上的 PHP 从 5.3 升级到 php 5.6

    我正在按照本教程将 php 从版本 5 3 升级到 5 6 http phpave com upgrade php 53 to php 56 on ubuntu 1204 lts http phpave com upgrade php 53

随机推荐