configure does not generate makefile while building perl from source - perl

I am building perl from source on Ubuntu 14.04 (kernel 3.13.0-24-generic):
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
Configure did not generate a makefile. The output log is:
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.
...
Comparing with a successful Configure on another machine, it did not execute makedepend:
Extracting runtests (with variable substitutions)
Run make depend now? [y]
sh ./makedepend MAKE="make" cflags
Executing the above makedepend line gave a message make: *** No rule to make target 'clist'. Stop.. Any hints to debug this? Much appreciated!

What is surprising in the output you posted is that you went directly from this:
Extracting runtests (with variable substitutions)
... to this:
Configure done.
... without, at the very least, getting this prompt (and response):
Run make depend now? [y]
In ./Configure, we have this 'if' block:
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
Is it possible that you do not have a 'Makefile' (or 'makefile') in the directory in which you are configuring? (Note, I have no idea why that would be the case, but that's what the sequence of STDOUT statements seems to be suggesting.)
I examined your Configure output as well as mine from perl-5.22.2. The most significant differences I noted were:
(a) You do not appear to have BerkeleyDB installed; and
(b) you have directory '/home/zxu/lib' at the start of the list of directories which is Configure's output from this probe:
Directories to use for library searches?
I'm not really sure why (b) would be so. You might want to post the output of this command:
grep -E 'libpth\b' config.sh
That may have nothing to do with your original problem, but it is anomalous.

Related

Error in ./configure step in installation of libpqxx

this is a bit of a long shot but:
I'm following this guide: https://www.tutorialspoint.com/postgresql/postgresql_c_cpp.htm
But when running ./configure I get the following error:
(previous checking lines omitted for brevity)
checking for main in -lpq... yes
checking for PQexec in -lpq... yes
checking for correct C++ linkage of basic libpq functions...
sed: character class syntax is [[:space:]], not [:space:]
configure: error:
Linking a call to libpq failed in C++, even though it succeeded in C. If your
C and C++ compilers are very different beasts, this may mean that we do not have
the right options for linking with it after all.
Read the config.log file for more detailed information. Look for the last error
message, which may be several pages up from the end of the file.
And the configure.log file looks like this:
This file contains any messages produced by compilers while
running configure, to aid debugging if configure makes a mistake.
It was created by libpqxx configure 4.0, which was
generated by GNU Autoconf 2.68. Invocation command line was
$ ./configure
## --------- ##
## Platform. ##
## --------- ##
(some lines omitted)
configure:3039: g++ -V >&5
g++: error: unrecognized command line option '-V'
g++: fatal error: no input files
compilation terminated.
configure:3050: $? = 1
configure:3039: g++ -qversion >&5
g++: error: unrecognized command line option '-qversion'; did you mean '--version'?
g++: fatal error: no input files
compilation terminated.
(some lines omitted)
configure:7629: gcc -E conftest.c
conftest.c:11:10: fatal error: ac_nonexistent.h: No such file or directory
#include <ac_nonexistent.h>
^~~~~~~~~~~~~~~~~~
compilation terminated.
(some lines omitted)
configure:8319: gcc -c -g -O2 -fno-rtti -fno-exceptions conftest.c >&5
cc1: warning: command line option '-fno-rtti' is valid for C++/ObjC++ but not for C
(some lines omitted)
configure:16424: g++ -o conftest -g -O2 -L/usr/lib/x86_64-linux-gnu conftest.cpp >&5
/tmp/ccfFBf4K.o: In function `main':
/home/peter/libpqxx-4.0/conftest.cpp:44: undefined reference to `PQexec'
collect2: error: ld returned 1 exit status
(some liens omitted)
I don't believe I have any packages missing. I have the newest version of g++, psql and libpqxx installed.
I have updated and upgraded all packages on my system.
I have crawled the web for solutions to this error, but I have no clue what is wrong.
Do you have an idea where I can go from here?
There hasn't been a tarball release of libpqxx at the old spot in a long time, so the tutorial you used with its wget command to download the tarball is very outdated.
The issue you encountered looks related to this issue and appears to have been fixed in this commit:
commit 85e9336740475be25ed19924cca0961f7d844c4b
Author: Jeroen Vermeulen <jtvjtv#gmail.com>
Date: Thu Jun 1 11:39:08 2017 +0700
Fix #13: not linking to libpq.
This was that annoying interaction between autoconf, m4, GNU sed syntax,
and the shell which broke the "remove redundant -lpq options" code in
the configure script.
Solution: forget about GNU sed's "[[:space:]]" syntax, and just look for
a literal space. There aren't going to be any tabs, newlines,
non-breaking spaces, etc. there in even a moderately sane world.

How to load shared library created in Matlab

I tried to create an OpenModelica model with liquid flow and Media.
And I have a function in Matlab that calculates the PDE (partial differential equation) in pdetool.
I would like to create a shared dynamic library (.so file) in Matlab by MCR and load it in the model.
My platform: OpenModelica used on Linux or Mac OS. MCR on Linux and Mac OS installed.
In Matlab I can generate only DLL (may be it's possible to generate libmyfunc.so?).
When I try to compile the model with extern C function I got an error:
#omc +s test_matlab_so.mo func_mathlab.mo
#make -f test_matlab_so.makefile
/usr/bin/clang -Wimplicit-function-declaration -O0 -falign-functions -march=native -I"/opt/openmodelica/include/omc/c" -I. -DOPENMODELICA_XML_FROM_FILE_AT_RUNTIME -c -o test_matlab_so_functions.o test_matlab_so_functions.c
clang: warning: optimization flag '-falign-functions' is not supported
clang: warning: argument unused during compilation: '-falign-functions'
In file included from test_matlab_so_functions.c:7:
In file included from ./test_matlab_so_includes.h:4:
./shared_train/src/lib_summ.c:90:8: warning: implicit declaration of function 'GetModuleFileName' is invalid in C99 [-Wimplicit-function-declaration]
if (!GetModuleFileName(GetModuleHandle("lib_summ"), path_to_dll, _MAX_PATH))
^
./shared_train/src/lib_summ.c:90:26: warning: implicit declaration of function 'GetModuleHandle' is invalid in C99 [-Wimplicit-function-declaration]
if (!GetModuleFileName(GetModuleHandle("lib_summ"), path_to_dll, _MAX_PATH))
^
./shared_train/src/lib_summ.c:90:55: error: use of undeclared identifier 'path_to_dll'
if (!GetModuleFileName(GetModuleHandle("lib_summ"), path_to_dll, _MAX_PATH))
^
./shared_train/src/lib_summ.c:90:68: error: use of undeclared identifier '_MAX_PATH'
if (!GetModuleFileName(GetModuleHandle("lib_summ"), path_to_dll, _MAX_PATH))
^
./shared_train/src/lib_summ.c:94:37: error: use of undeclared identifier 'path_to_dll'
mclGetEmbeddedCtfStream(path_to_dll);
^
test_matlab_so_functions.c:19:16: warning: implicit declaration of function '_mlfSumm' is invalid in C99 [-Wimplicit-function-declaration]
_v_out_ext = _mlfSumm(_v_a_ext, _v_b_ext);
^
3 warnings and 3 errors generated.
make: *** [test_matlab_so_functions.o] Error 1
Can someone help me with integrating OpenModelica and Matlab?
I don't have much experience with Linux but I did the same thing in Windows using MCR. Check this out:
http://de.mathworks.com/matlabcentral/answers/94471-how-do-i-create-a-c-c-shared-library-with-matlab-compiler-that-can-be-used-in-a-microsoft-visual-c
When you do this, you will get a DLL as well as a static library. You need to copy both of them into the folder that your modelica code is located at and then set the library in the "Library" attibute of your modelica function which calls the external function.
Keep in mind that if you are using a 64 or 32 bit dymola, you are supposed to create the DLL using the same version of matlab correspondingly.

FIWARE- Orion Context Broker

I tried to install Orion context Broker on Ubuntu 14.04 with Alien but when I do contextBroker start it says:
contextBroker: error while loading shared libraries: libboost_thread-mt.so.5: cannot open shared object file: No such file or directory
I couldn't find where is the error then I tried to install with all the dependencies from the instructions in Git, but when I try to do the make it makes an error:
[ 26%] Building CXX object src/lib/serviceRoutines/CMakeFiles/serviceRoutines.dir/exitTreat.cpp.o
In file included from /home/sistemas/fiware-orion-develop/src/lib/serviceRoutines/exitTreat.cpp:32:0:
/home/sistemas/fiware-orion-develop/src/lib/mongoBackend/MongoGlobal.h:30:35: fatal error: mongo/client/dbclient.h: No existe el archivo o el directorio
#include "mongo/client/dbclient.h"
I have the mongo's driver installed, how can I solve this?
Finally I compile a new driver from https://github.com/mongodb/mongo-cxx-driver/releases and it continues compiling until:
*
/home/sistemas/fiware-orion/src/lib/mongoBackend/MongoGlobal.cpp: In function ‘void recoverOnTimeIntervalThread(std::string, mongo::BSONObj&)’:
/home/sistemas/fiware-orion/src/lib/mongoBackend/MongoGlobal.cpp:532:40: error: ‘class mongo::OID’ has no member named ‘str’
std::string subId = idField.OID().str();
^
/home/sistemas/fiware-orion/src/lib/mongoBackend/MongoGlobal.cpp: In function ‘void destroyOnTimeIntervalThread(std::string, mongo::BSONObj&)’:
/home/sistemas/fiware-orion/src/lib/mongoBackend/MongoGlobal.cpp:583:40: error: ‘class mongo::OID’ has no member named ‘str’
std::string subId = idField.OID().str();
^
/home/sistemas/fiware-orion/src/lib/mongoBackend/MongoGlobal.cpp: In function ‘void releaseTriggeredSubscriptions(std::map<std::basic_string<char>, TriggeredSubscription*>&)’:
/home/sistemas/fiware-orion/src/lib/mongoBackend/MongoGlobal.cpp:1911:17: error: ‘string’ was not declared in this scope
for (std::map<string, TriggeredSubscription*>::iterator it = subs.begin(); it != subs.end(); ++it)
^
/home/sistemas/fiware-orion/src/lib/mongoBackend/MongoGlobal.cpp:1911:17: note: suggested alternative:
In file included from /usr/include/c++/4.9/iosfwd:39:0,
from /usr/include/boost/smart_ptr/shared_ptr.hpp:49,
from /usr/include/boost/shared_ptr.hpp:17,
from /usr/include/mongo/client/dbclient_rs.h:20,
from /usr/include/mongo/client/dbclient.h:59,
from /home/sistemas/fiware-orion/src/lib/mongoBackend/MongoGlobal.cpp:27:
/usr/include/c++/4.9/bits/stringfwd.h:62:33: note: ‘std::string’
typedef basic_string<char> string;
^
/home/sistemas/fiware-orion/src/lib/mongoBackend/MongoGlobal.cpp:1911:47: error: template argument 1 is invalid
for (std::map<string, TriggeredSubscription*>::iterator it = subs.begin(); it != subs.end(); ++it)
^
/home/sistemas/fiware-orion/src/lib/mongoBackend/MongoGlobal.cpp:1911:47: error: template argument 3 is invalid
/home/sistemas/fiware-orion/src/lib/mongoBackend/MongoGlobal.cpp:1911:47: error: template argument 4 is invalid
/home/sistemas/fiware-orion/src/lib/mongoBackend/MongoGlobal.cpp:1911:59: error: invalid type in declaration before ‘it’
for (std::map<string, TriggeredSubscription*>::iterator it = subs.begin(); it != subs.end(); ++it)
^
/home/sistemas/fiware-orion/src/lib/mongoBackend/MongoGlobal.cpp:1911:59: error: expected ‘;’ before ‘it’
/home/sistemas/fiware-orion/src/lib/mongoBackend/MongoGlobal.cpp:1911:59: error: ‘it’ was not declared in this scope
/home/sistemas/fiware-orion/src/lib/mongoBackend/MongoGlobal.cpp:1911:94: error: expected ‘)’ before ‘;’ token
for (std::map<string, TriggeredSubscription*>::iterator it = subs.begin(); it != subs.end(); ++it)
/home/sistemas/fiware-orion/src/lib/mongoBackend/MongoGlobal.cpp:1911:50: error: unused variable ‘iterator’ [-Werror=unused-variable]
for (std::map<string, TriggeredSubscription*>::iterator it = subs.begin(); it != subs.end(); ++it)
^
/home/sistemas/fiware-orion/src/lib/mongoBackend/MongoGlobal.cpp:1911:98: error: ‘it’ was not declared in this scope
for (std::map<string, TriggeredSubscription*>::iterator it = subs.begin(); it != subs.end(); ++it)
^
cc1plus: all warnings being treated as errors
make[3]: *** [src/lib/mongoBackend/CMakeFiles/mongoBackend.dir/MongoGlobal.cpp.o] Error 1
make[3]: se sale del directorio «/home/sistemas/fiware-orion/BUILD_RELEASE»
make[2]: *** [src/lib/mongoBackend/CMakeFiles/mongoBackend.dir/all] Error 2
make[2]: *** Se espera a que terminen otras tareas....
[ 88%] Building CXX object src/lib/xmlParse/CMakeFiles/xmlParse.dir/xmlRegisterProviderRequest.cpp.o
*
Is a problem in a file of Orion Context Broker?
I think that it could be a problem with de mongo's driver again but I try to install another one older and it doesn't work. I also think it can be a problem with de -mt libraries that doesn't exist in boost anymore, but nothing that I try until now works.
I've installed Orion CB using Ubuntu 14.04 LTS as host. I've also found some problems with libboost_thread-mt.so libraries. Solved this way:
Get & install packages
boost-thread-1.41.0-25.el6.x86_64.rpm
boost-system-1.41.0-25.el6.x86_64.rpm
boost-filesystem-1.41.0-25.el6.x86_64.rpm
and install them using alien. Then, the libraries were installed in “/usr/lib64” folder. To correct this (and CB is able to locate them): create a .conf file within “/etc/ld.so.conf.d/”, add a line (“/usr/lib64”) within and save it and quit and reload your configuration by calling (“sudo ldconfig”)
Hope this helps
So, here we have two questions in one. Let's start with the first one, about shared library not found:
Ask the broker where the library should be, using "ldd $(which contextBroker) | grep boost_thread).
After running this command, make sure the library is there. If it is not, but you have it elsewhere, you should be able to use the env var LD_LIBRARY_PATH to point to the directory where the library is found.
Now, for the second question, the mongo driver includes are not found. In my machine, I have them in /usr/local/include/mongo => I'm ok with the -I/usr/local/include directive to the compiler.
If you have your mongo driver installed elsewhere, you might need to add another 'include-directory' for the compilation. This would be done in the top-level CMakeLists.txt (I guess using 'include_directories' - I'm far from a cmake expert :-)).
When building, to see detailed information, compile like this:
% CPU_COUNT=1 VERBOSE=1 make install
Post the info again here unless you manage to solve your problems.

Error in ./configure in solaris 11

Okay i am trying to install BIND on solaris 11.
Upon downloading the tar file using wget, then i used extract it out.
After which, when i enter the command :
./configure
i face the following error
checking <<some stuff>>
..
..
..
checking <<some stuff>>
checking whether we are cross compiling... configure: error: in '/home/user/user/downloads/bind9.8.2
configure: error: cannot run C compiled programs.
If you meant to cross compile, use '--host'.
so i used --host in my option, but i cant get it to work,
For example, i entered the below command :
./configure --host=ulinux-uclibc
I received an error saying
checking host system type... Invalid configuration 'ulinux-uclibc': machine 'ulinux' not recognized
Thanks! :)
Why not just install the bind package from your configured solaris publisher?
# pkg install network/dns/bind service/network/dns/bind
should get you exactly what you need. That will get you ISC Bind v9.6.3 if you use pkg.oracle.com/solaris/release publisher.

Perl Cross Compilation: MAKE

I've been trying to Cross Compile Perl-5.14.2 for NetBSD target from Linux machine.
Configure script successfully invoked with following options,
./Configure -des -Dusecrosscompile
-Dtargetarch=netbsd
-Dosvers=3.0.0
-Dtargethost=10.184.22.48
-Dtargetuser=username
-Dusrinc=.../sb1-mips/usr/include
-Dlibpth=.../xc-sb1-mips/netbsd/Lib/lib
-Dcc=.../mips64-netbsdelf-gcc
Once after Configured, make wasn't successful.
It breaks at different places right from creating miniperlmain.o file.
For example following error occurred while generating gv.o file:
gv.c: In function `Perl_try_amagic_un':
gv.c:2018: error: void value not ignored as it ought to be
gv.c:2029: error: void value not ignored as it ought to be
gv.c:2029: warning: cast from pointer to integer of different size
gv.c: In function `Perl_try_amagic_bin':
gv.c:2061: error: void value not ignored as it ought to be
gv.c:2063: error: void value not ignored as it ought to be
make: *** [gv.o] Error 1
Now to get rid of these errors I've passed two flags namely -DPERL_IMPLICIT_CONTEXT and -DPERL_GCC_BRACE_GROUPS_FORBIDDEN to C Compiler CCFLAGS which solved the problem.
Since it is a custom build, want to know about all of the CCFLAGS that have to be passed in order to achieve a successful build?
What does each flag mean?
Is their any documentation available?
Use vagrant. It has some OpenBSD and FreeBSD images. Hopefuly those will be compatible with NetBSD.
You can get a build environment very fast with that. Then you can transfer and build your code happily :)