Subject: | Makefile.PL bug with fix |
When attempting to install, make returns the errors below. The same
errors occur when doing a manual make and a CPAN install.
I found the fix on the web - comment out the last three lines of
Makefile.PL so that it looks like:
#sub MY::post_constants {
# 'PASTHRU_INC=$(INC)'
#}
Frankly, I don't know what the -D<argument> inclusions are supposed to
do, but removing the "post_constants" allows the module to compile,
install and function.
My system: CentOS 5, 32-bit
Perl 5.8.8
Net::Z3950-0.51
Errors:
[root@localhost Net-Z3950-0.51]# make
cd yazwrap && make INC=-pthread -DYAZ_POSIX_THREADS=1 -DYAZ_HAVE_XML2=1
-DYAZ_HAVE_XSLT=1 -DYAZ_HAVE_EXSLT=1 -I/usr/include/libxml2
-I/usr/local/include LIBPERL_A="libperl.a" LINKTYPE="dynamic"
OPTIMIZE="-O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions
-fstack-protector --param=ssp-buffer-size=4 -m32 -march=i386
-mtune=generic -fasynchronous-unwind-tables" PREFIX="/usr"
PASTHRU_DEFINE="" PASTHRU_INC="-pthread -DYAZ_POSIX_THREADS=1
-DYAZ_HAVE_XML2=1 -DYAZ_HAVE_XSLT=1 -DYAZ_HAVE_EXSLT=1
-I/usr/include/libxml2 -I/usr/local/include"
make: invalid option -- D
make: invalid option -- Y
make: invalid option -- A
make: invalid option -- Z
make: invalid option -- _
make: invalid option -- P
make: invalid option -- O
make: invalid option -- D
make: invalid option -- Y
make: invalid option -- A
make: invalid option -- Z
make: invalid option -- _
make: invalid option -- H
make: invalid option -- A
make: invalid option -- V
make: invalid option -- E
make: invalid option -- _
make: invalid option -- X
make: invalid option -- M
make: invalid option -- 2
make: invalid option -- =
make: invalid option -- 1
make: invalid option -- D
make: invalid option -- Y
make: invalid option -- A
make: invalid option -- Z
make: invalid option -- _
make: invalid option -- H
make: invalid option -- A
make: invalid option -- V
make: invalid option -- E
make: invalid option -- _
make: invalid option -- X
make: invalid option -- T
make: invalid option -- =
make: invalid option -- 1
make: invalid option -- D
make: invalid option -- Y
make: invalid option -- A
make: invalid option -- Z
make: invalid option -- _
make: invalid option -- H
make: invalid option -- A
make: invalid option -- V
make: invalid option -- E
make: invalid option -- _
make: invalid option -- E
make: invalid option -- X
make: invalid option -- T
make: invalid option -- =
make: invalid option -- 1
Usage: make [options] [target] ...
Options:
-b, -m Ignored for compatibility.
-B, --always-make Unconditionally make all targets.
-C DIRECTORY, --directory=DIRECTORY
Change to DIRECTORY before doing anything.
-d Print lots of debugging information.
--debug[=FLAGS] Print various types of debugging information.
-e, --environment-overrides
Environment variables override makefiles.
-f FILE, --file=FILE, --makefile=FILE
Read FILE as a makefile.
-h, --help Print this message and exit.
-i, --ignore-errors Ignore errors from commands.
-I DIRECTORY, --include-dir=DIRECTORY
Search DIRECTORY for included makefiles.
-j [N], --jobs[=N] Allow N jobs at once; infinite jobs with
no arg.
-k, --keep-going Keep going when some targets can't be made.
-l [N], --load-average[=N], --max-load[=N]
Don't start multiple jobs unless load is
below N.
-L, --check-symlink-times Use the latest mtime between symlinks and
target.
-n, --just-print, --dry-run, --recon
Don't actually run any commands; just
print them.
-o FILE, --old-file=FILE, --assume-old=FILE
Consider FILE to be very old and don't
remake it.
-p, --print-data-base Print make's internal database.
-q, --question Run no commands; exit status says if up to
date.
-r, --no-builtin-rules Disable the built-in implicit rules.
-R, --no-builtin-variables Disable the built-in variable settings.
-s, --silent, --quiet Don't echo commands.
-S, --no-keep-going, --stop
Turns off -k.
-t, --touch Touch targets instead of remaking them.
-v, --version Print the version number of make and exit.
-w, --print-directory Print the current directory.
--no-print-directory Turn off -w, even if it was turned on
implicitly.
-W FILE, --what-if=FILE, --new-file=FILE, --assume-new=FILE
Consider FILE to be infinitely new.
--warn-undefined-variables Warn when an undefined variable is referenced.
This program built for i686-redhat-linux-gnu
Report bugs to <bug-make@gnu.org>
make: *** [yazwrap/libyazwrap.a] Error 2