Open p5pRT opened 21 years ago
I previously had perl 5.6.0 installed on an IBM RS6000 running AIX 4.3.3. I downloaded the 5.8.0 files and followed the installation procedures with mostly default answers to the Configure script. I do not have root privleges on my machine\, and therefore install everything in ~rlg0301. The make process went ok until it tried to compile the B extension. I then get the following output:
make[1]: Leaving directory `/acct/rlg0301/PROGS/PERL/perl-5.8.0/x2p'
Making B (dynamic) readdir(./../../../../../..): A file descriptor does not refer to an open file. at ../../lib/File/Find.pm line 573
Use of chdir('') or chdir(undef) as chdir() is deprecated at ../../lib/File/Find.pm line 716. readdir(/acct/rlg0301/lib/perl5/5.8.0/aix/../../../../..): A file or directory in the path name does not exist. at ../../lib/ExtUtils/MakeMaker.pm line 231 readdir(/acct/rlg0301/lib/perl5/5.8.0/../../../..): A file or directory in the path name does not exist. at ../../ lib/ExtUtils/MakeMaker.pm line 231 readdir(/acct/rlg0301/lib/perl5/site_perl/5.8.0/aix/../../../../../..): A file or directory in the path name does not exist. at ../../lib/ExtUtils/MakeMaker.pm line 231 readdir(/acct/rlg0301/lib/perl5/site_perl/5.8.0/../../../../..): A file or directory in the path name does not exi st. at ../../lib/ExtUtils/MakeMaker.pm line 231 readdir(/acct/rlg0301/lib/perl5/site_perl/../../../..): A file or directory in the path name does not exist. at .. /../lib/ExtUtils/MakeMaker.pm line 231 readdir(./..): A file or directory in the path name does not exist. at ../../lib/ExtUtils/MakeMaker.pm line 231 Couldn't change to directory /acct/rlg0301/C: A file or directory in the path name does not exist. at Makefile.PL line 18 Running '../../miniperl "-I../../lib" ../../lib/ExtUtils/xsubpp -v 2>&1' exits with status 127 at ../../lib/ExtUti ls/MM_Unix.pm line 3826. Running '../../miniperl ../../lib/ExtUtils/xsubpp temp000 2>&1' exits with status 16777215 at ../../lib/ExtUtils/M M_Unix.pm line 3852. Writing Makefile for B Warning: No Makefile! make[1]: Entering directory `/acct/rlg0301/PROGS/PERL/perl-5.8.0/ext/B' make[1]: *** No rule to make target `config'. Stop. make[1]: Leaving directory `/acct/rlg0301/PROGS/PERL/perl-5.8.0/ext/B' /acct/rlg0301/bin/make config failed\, continuing anyway... make[1]: Entering directory `/acct/rlg0301/PROGS/PERL/perl-5.8.0/ext/B' make[1]: *** No rule to make target `all'. Stop. make[1]: Leaving directory `/acct/rlg0301/PROGS/PERL/perl-5.8.0/ext/B' make: *** [lib/auto/B/B.so] Error 2
So I tried making perl without any extensions\, and got some kind of error (Sorry\, I didn't save that output). So I went back to trying to run make with extensions included\, and when it blew up\, I would just edit config.sh and remove the exetension that gave me a problem. I must have done this about 8 or 10 times untill I finally got to the point where I thought I should run make test and make install.
Then I went into the ext/ directory and ran the perl Makefile.PL;make;make test;make install sequence on all of the extensions that the top level make could not handle. (I still could not get make test to give good results on the Encode extension).
So after I got version 5.8.0 installed\, I deleted my old 5.6.0 files\, deleted the perl-5.8.0 directory\, and reinstalled a fresh set of source code from the stable.tar file and tried to rebuild version 5.8.0. I had thought that perhaps I had problems with the extensions because I was upgrading from 5.6.0 instead of something more recent. But I got the same error messages when the make process tried to build the B extension.
On Thu\, Jan 09\, 2003 at 07:28:18PM -0000\, Richard L. Grubb wrote:
# New Ticket Created by "Richard L. Grubb" # Please include the string: [perl #19877] # in the subject line of all future correspondence about this issue. # \<URL: http://rt.perl.org/rt2/Ticket/Display.html?id=19877 >
This is a bug report for perl from richard.l.grubb@boeing.com\, generated with the help of perlbug 1.34 running under perl v5.8.0.
----------------------------------------------------------------- [Please enter your report here] I previously had perl 5.6.0 installed on an IBM RS6000 running AIX 4.3.3. I downloaded the 5.8.0 files and followed the installation
I know very little about AIX\, but this bug report reminds me of another one for AIX 4.3.3. What's your AIX "Maintenance Level"?
If you still have the build tree from the existing perl that failed to get past making the "B" extension\, what test failures do you get if you run "make minitest"?
procedures with mostly default answers to the Configure script. I do
useperlio=define d\_sfio=undef uselargefiles=define usesocks=undef use64bitint=undef use64bitall=undef uselongdouble=undef usemymalloc=n\, bincompat5005=undef
Compiler: cc='cc'\, ccflags ='-D_ALL_SOURCE -D_ANSI_C_SOURCE -D_POSIX_SOURCE -qmaxmem=16384 -qnoansialias -DUSE_NATIVE_DLOPEN -q32 -D_LARGE_FILES -qlonglong'\, optimize='-O'\, cppflags='-D_ALL_SOURCE -D_ANSI_C_SOURCE -D_POSIX_SOURCE -qmaxmem=16384 -qnoansialias -DUSE_NATIVE_DLOPEN -q32 -D_LARGE_FILES -qlonglong -D_ALL_SOURCE -D_ANSI_C_SOURCE -D_POSIX_SOURCE -qmaxmem=16384 -qnoansialias -DUSE_NATIVE_DLOPEN -q32 -D_LARGE_FILE S -qlonglong -D_ALL_SOURCE -D_ANSI_C_SOURCE -D_POSIX_SOURCE -qmaxmem=16384 -qnoansialias -DUSE_NATIVE_DLOPEN -q32 -D_LARGE_FILES -qlonglong -D_ALL_SOURCE -D_ANSI_C_SOURCE -D_POSIX_SOURCE -qmaxmem=16384 -qnoansialias -DUSE_NATIVE_DLOPEN -q32 -D_LARGE_FILES -qlonglong -D_ALL_SOURCE -D_ANSI_C_SOURCE -D_POSIX_SOURCE -qmaxmem=16384 -qnoansialias -DUSE_NATIVE_DLOPEN -q32 -D_LARGE_FILES -qlonglong -D_ALL_SOURCE -D_ANSI_C_SOURCE -D_POSIX_SOURCE -qmaxmem=16384 -qnoansialias -DUSE_NATIVE_DLOPEN -q32 -D_LARGE_FILES -qlonglong'
You seem to have the C flags repeated in there 7 times. However\, I don't think that that will actually make a difference. If you reconfigure\, and answer "no" to the question about "do you want to use large files?"\, are you able to get further through the build process?
If it still fails\, could you try "make minitest" then\, and send the results to p5p. (cutting out the ok lines is fine; the failures are what is interesting)
Aside to p5p - could we re-order the build targets so that the non-XS extensions get built before static and dynamic? That way Errno will get built before the "challenging" stuff\, and less of minitest will fail.
Nicholas Clark
I ran the following:
lslpp -l | grep 'bos.rte '
and got back:
bos.rte 4.3.3.50 COMMITTED Base Operating System Runtime bos.rte 4.3.2.0 COMMITTED Base Operating System Runtime
Does this give you the Maintenance level? I also know little about AIX. I am just playing around with perl since the system administrators have Perl 5.4.5 installed (It takes them a long time to determine which pieces of Open Source software they want to install and support).
I ran the following command: make minitest >minitest.out 2>&1 and have attached the file minitest.out.
But I am not sure if the build tree is exactly the same. I may have gone into the ext directory and built some more extensions manually. I remember fixing my config.sh file one time because I noticed the repeated C flags in the Makefile. I don't know how they got in there seven times\, except that Boeing has a modified (supposedly easier to use) version of emacs that has a few bugs in it. When I open a file with long lines\, the editor wraps the lines at 255 characters. It stays that way when I save it\, and sometimes even an extra blank line will be inserted. When I work with files with long lines\, I generally switch over to Nedit.
But to get to the point\, I can make a clean perl-5.8.0 directory and recompile from the beginning with any options would like me to try (unless they require root privileges). I'll go ahead and do that and disable using large files.
What is p5p?
Thanks
-----Original Message----- From: Nicholas Clark (via RT) [mailto:perlbug-followup@perl.org] Sent: Saturday\, January 11\, 2003 10:59 AM To: Grubb\, Richard L Subject: Re: [perl #19877] Problem Compiling extensions on AIX 4.3.3
On Thu\, Jan 09\, 2003 at 07:28:18PM -0000\, Richard L. Grubb wrote:
# New Ticket Created by "Richard L. Grubb" # Please include the string: [perl #19877] # in the subject line of all future correspondence about this issue. # \<URL: http://rt.perl.org/rt2/Ticket/Display.html?id=19877 >
This is a bug report for perl from richard.l.grubb@boeing.com\, generated with the help of perlbug 1.34 running under perl v5.8.0.
----------------------------------------------------------------- [Please enter your report here] I previously had perl 5.6.0 installed on an IBM RS6000 running AIX 4.3.3. I downloaded the 5.8.0 files and followed the installation
I know very little about AIX\, but this bug report reminds me of another one for AIX 4.3.3. What's your AIX "Maintenance Level"?
If you still have the build tree from the existing perl that failed to get past making the "B" extension\, what test failures do you get if you run "make minitest"?
procedures with mostly default answers to the Configure script. I do
useperlio=define d\_sfio=undef uselargefiles=define usesocks=undef use64bitint=undef use64bitall=undef uselongdouble=undef usemymalloc=n\, bincompat5005=undef
Compiler: cc='cc'\, ccflags ='-D_ALL_SOURCE -D_ANSI_C_SOURCE -D_POSIX_SOURCE -qmaxmem=16384 -qnoansialias -DUSE_NATIVE_DLOPEN -q32 -D_LARGE_FILES -qlonglong'\, optimize='-O'\, cppflags='-D_ALL_SOURCE -D_ANSI_C_SOURCE -D_POSIX_SOURCE -qmaxmem=16384 -qnoansialias -DUSE_NATIVE_DLOPEN -q32 -D_LARGE_FILES -qlonglong -D_ALL_SOURCE -D_ANSI_C_SOURCE -D_POSIX_SOURCE -qmaxmem=16384 -qnoansialias -DUSE_NATIVE_DLOPEN -q32 -D_LARGE_FILE S -qlonglong -D_ALL_SOURCE -D_ANSI_C_SOURCE -D_POSIX_SOURCE -qmaxmem=16384 -qnoansialias -DUSE_NATIVE_DLOPEN -q32 -D_LARGE_FILES -qlonglong -D_ALL_SOURCE -D_ANSI_C_SOURCE -D_POSIX_SOURCE -qmaxmem=16384 -qnoansialias -DUSE_NATIVE_DLOPEN -q32 -D_LARGE_FILES -qlonglong -D_ALL_SOURCE -D_ANSI_C_SOURCE -D_POSIX_SOURCE -qmaxmem=16384 -qnoansialias -DUSE_NATIVE_DLOPEN -q32 -D_LARGE_FILES -qlonglong -D_ALL_SOURCE -D_ANSI_C_SOURCE -D_POSIX_SOURCE -qmaxmem=16384 -qnoansialias -DUSE_NATIVE_DLOPEN -q32 -D_LARGE_FILES -qlonglong'
You seem to have the C flags repeated in there 7 times. However\, I don't think that that will actually make a difference. If you reconfigure\, and answer "no" to the question about "do you want to use large files?"\, are you able to get further through the build process?
If it still fails\, could you try "make minitest" then\, and send the results to p5p. (cutting out the ok lines is fine; the failures are what is interesting)
Aside to p5p - could we re-order the build targets so that the non-XS extensions get built before static and dynamic? That way Errno will get built before the "challenging" stuff\, and less of minitest will fail.
Nicholas Clark
On Wed 15 Jan 2003 17:05\, "Grubb\, Richard L" \richard\.l\.grubb@​boeing\.com wrote:
I ran the following:
lslpp -l | grep 'bos.rte '
and got back:
bos.rte 4.3.3.50 COMMITTED Base Operating System Runtime bos.rte 4.3.2.0 COMMITTED Base Operating System Runtime
Does this give you the Maintenance level?
No\, it gives the subversion of BaseOperatingSystem.RunTimeEnvironment
You get the ML thusly:
i2:/data/update/index 103 # instfix -i | grep ML All filesets for AIX43ML were found. All filesets for 4.3.0.0_AIX_ML were found. All filesets for 4.3.1.0_AIX_ML were found. All filesets for 4.3.2.0_AIX_ML were found. All filesets for 4320-01_AIX_ML were found. All filesets for 4320-02_AIX_ML were found. All filesets for 4.3.3.0_AIX_ML were found. All filesets for 4330-02_AIX_ML were found. All filesets for 4330-03_AIX_ML were found. All filesets for 4330-04_AIX_ML were found. All filesets for 4330-05_AIX_ML were found. All filesets for 4330-01_AIX_ML were found. All filesets for 4330-06_AIX_ML were found. All filesets for 4330-07_AIX_ML were found. All filesets for 4330-08_AIX_ML were found. All filesets for 4330-09_AIX_ML were found. All filesets for 4330-10_AIX_ML were found. i2:/data/update/index 104 #
[ I'm on AIX-4.3.3.0 ML-10 ]
I also know little about AIX. I am just playing around with perl since the system administrators have Perl 5.4.5 installed (It takes them a long time to determine which pieces of Open Source software they want to install and support).
I ran the following command: make minitest >minitest.out 2>&1 and have attached the file minitest.out.
But I am not sure if the build tree is exactly the same. I may have gone into the ext directory and built some more extensions manually. I remember fixing my config.sh file one time because I noticed the repeated C flags in the Makefile. I don't know how they got in there seven times\, except that Boeing has a modified (supposedly easier to use) version of emacs that has a few bugs in it. When I open a file with long lines\, the editor wraps the lines at 255 characters. It stays that way when I save it\, and sometimes even an extra blank line will be inserted. When I work with files with long lines\, I generally switch over to Nedit.
But to get to the point\, I can make a clean perl-5.8.0 directory and recompile from the beginning with any options would like me to try (unless they require root privileges). I'll go ahead and do that and disable using large files.
Try with the default first (don't install\, just look at what happens)
$ cd /blah $ gzip -d \</tmp/perl-5.8.0.tar.gz | tar xf - $ cd perl-5.8.0 $ sh ./Configure -des |
---|
: $ make : $ make test
Are you using GNU make or AIX' default make? GNU make /might/ help
What is p5p?
Perl5 porters. We maintain the perl development.
Thanks
-----Original Message----- From: Nicholas Clark (via RT) [mailto:perlbug-followup@perl.org] Sent: Saturday\, January 11\, 2003 10:59 AM To: Grubb\, Richard L Subject: Re: [perl #19877] Problem Compiling extensions on AIX 4.3.3
On Thu\, Jan 09\, 2003 at 07:28:18PM -0000\, Richard L. Grubb wrote:
# New Ticket Created by "Richard L. Grubb" # Please include the string: [perl #19877] # in the subject line of all future correspondence about this issue. # \<URL: http://rt.perl.org/rt2/Ticket/Display.html?id=19877 >
This is a bug report for perl from richard.l.grubb@boeing.com\, generated with the help of perlbug 1.34 running under perl v5.8.0.
----------------------------------------------------------------- [Please enter your report here] I previously had perl 5.6.0 installed on an IBM RS6000 running AIX 4.3.3. I downloaded the 5.8.0 files and followed the installation
I know very little about AIX\, but this bug report reminds me of another one for AIX 4.3.3. What's your AIX "Maintenance Level"?
If you still have the build tree from the existing perl that failed to get past making the "B" extension\, what test failures do you get if you run "make minitest"?
procedures with mostly default answers to the Configure script. I do
useperlio=define d\_sfio=undef uselargefiles=define usesocks=undef use64bitint=undef use64bitall=undef uselongdouble=undef usemymalloc=n\, bincompat5005=undef
Compiler: cc='cc'\, ccflags ='-D_ALL_SOURCE -D_ANSI_C_SOURCE -D_POSIX_SOURCE -qmaxmem=16384 -qnoansialias -DUSE_NATIVE_DLOPEN -q32 -D_LARGE_FILES -qlonglong'\, optimize='-O'\, cppflags='-D_ALL_SOURCE -D_ANSI_C_SOURCE -D_POSIX_SOURCE -qmaxmem=16384 -qnoansialias -DUSE_NATIVE_DLOPEN -q32 -D_LARGE_FILES -qlonglong -D_ALL_SOURCE -D_ANSI_C_SOURCE -D_POSIX_SOURCE -qmaxmem=16384 -qnoansialias -DUSE_NATIVE_DLOPEN -q32 -D_LARGE_FILE S -qlonglong -D_ALL_SOURCE -D_ANSI_C_SOURCE -D_POSIX_SOURCE -qmaxmem=16384 -qnoansialias -DUSE_NATIVE_DLOPEN -q32 -D_LARGE_FILES -qlonglong -D_ALL_SOURCE -D_ANSI_C_SOURCE -D_POSIX_SOURCE -qmaxmem=16384 -qnoansialias -DUSE_NATIVE_DLOPEN -q32 -D_LARGE_FILES -qlonglong -D_ALL_SOURCE -D_ANSI_C_SOURCE -D_POSIX_SOURCE -qmaxmem=16384 -qnoansialias -DUSE_NATIVE_DLOPEN -q32 -D_LARGE_FILES -qlonglong -D_ALL_SOURCE -D_ANSI_C_SOURCE -D_POSIX_SOURCE -qmaxmem=16384 -qnoansialias -DUSE_NATIVE_DLOPEN -q32 -D_LARGE_FILES -qlonglong'
You seem to have the C flags repeated in there 7 times. However\, I don't think that that will actually make a difference. If you reconfigure\, and answer "no" to the question about "do you want to use large files?"\, are you able to get further through the build process?
If it still fails\, could you try "make minitest" then\, and send the results to p5p. (cutting out the ok lines is fine; the failures are what is interesting)
Aside to p5p - could we re-order the build targets so that the non-XS extensions get built before static and dynamic? That way Errno will get built before the "challenging" stuff\, and less of minitest will fail.
Nicholas Clark
-- H.Merijn Brand Amsterdam Perl Mongers (http://amsterdam.pm.org/) using perl-5.6.1\, 5.8.0 & 633 on HP-UX 10.20 & 11.00\, AIX 4.2\, AIX 4.3\, WinNT 4\, Win2K pro & WinCE 2.11. Smoking perl CORE: smokers@perl.org http://archives.develooper.com/daily-build@perl.org/ perl-qa@perl.org send smoke reports to: smokers-reports@perl.org\, QA: http://qa.perl.org
Thanks.
Here is the maintenance level output:
All filesets for AIX43ML were found. All filesets for 4.3.0.0_AIX_ML were found. All filesets for 4.3.1.0_AIX_ML were found. All filesets for 4.3.2.0_AIX_ML were found. All filesets for 4.3.3.0_AIX_ML were found. All filesets for 4330-02_AIX_ML were found. All filesets for 4320-02_AIX_ML were found. All filesets for 4330-03_AIX_ML were found. All filesets for 4330-04_AIX_ML were found. All filesets for 4330-05_AIX_ML were found. All filesets for 4330-01_AIX_ML were found. All filesets for 4330-06_AIX_ML were found. All filesets for 4330-07_AIX_ML were found. All filesets for 4330-08_AIX_ML were found.
My make is Gnumake 3.79.1 (Built for powerpc-ibm-aix4.3.3.0)
Using the default values in Configure\, the make step then fails with this at the end (complete make output is attached):
make[1]: Leaving directory `/acct/rlg0301/PROGS/PERL/perl-5.8.0/x2p'
Making B (dynamic) readdir(./../../../../../..): A file or directory in the path name does not exist. at ../../lib/File/Find.pm line$ Use of chdir('') or chdir(undef) as chdir() is deprecated at ../../lib/File/Find.pm line 716. readdir(./..): A file or directory in the path name does not exist. at ../../lib/ExtUtils/MakeMaker.pm line 231 Couldn't change to directory /acct/rlg0301/C: A file or directory in the path name does not exist. at Makefile.PL$ Running '../../miniperl "-I../../lib" ../../lib/ExtUtils/xsubpp -v 2>&1' exits with status 127 at ../../lib/ExtUt$ Running '../../miniperl ../../lib/ExtUtils/xsubpp temp000 2>&1' exits with status 16777215 at ../../lib/ExtUtils/$ Writing Makefile for B Warning: No Makefile! make[1]: Entering directory `/acct/rlg0301/PROGS/PERL/perl-5.8.0/ext/B' make[1]: *** No rule to make target `config'. Stop. make[1]: Leaving directory `/acct/rlg0301/PROGS/PERL/perl-5.8.0/ext/B' /acct/rlg0301/bin/make config failed\, continuing anyway... make[1]: Entering directory `/acct/rlg0301/PROGS/PERL/perl-5.8.0/ext/B' make[1]: *** No rule to make target `all'. Stop. make[1]: Leaving directory `/acct/rlg0301/PROGS/PERL/perl-5.8.0/ext/B' make: *** [lib/auto/B/B.so] Error 2
Using the first error message as my guide\, I looked at the man page for readdir. I don't know if the following is pertinent:
"Description
Attention: Do not use the readdir subroutine in a multithreaded environment. See the multithread alternative in the readdir_r subroutine article."
Going on\, I ran 'make minitest'\, and two tests failed\, both for the same reason.
t/io/open............Can't locate Errno.pm in @INC (@INC contains: ../lib) at io/open.t line 234. BEGIN failed--compilation aborted at io/open.t line 234. FAILED at test 0 t/op/magic...........Can't locate Errno.pm in @INC (@INC contains: ../lib) at op/magic.t line 299. BEGIN failed--compilation aborted. FAILED at test 38
I also ran make test\, which ended with this output:
Making Errno (nonxs) Writing Makefile for Errno make[1]: Entering directory `/acct/rlg0301/PROGS/PERL/perl-5.8.0/ext/Errno' make[1]: Leaving directory `/acct/rlg0301/PROGS/PERL/perl-5.8.0/ext/Errno' make[1]: Entering directory `/acct/rlg0301/PROGS/PERL/perl-5.8.0/ext/Errno' ../../miniperl "-I../../lib" "-I../../lib" "-I../../lib" "-I../../lib" Errno_pm.PL Errno.pm cp Errno.pm ../../lib/Errno.pm make[1]: Leaving directory `/acct/rlg0301/PROGS/PERL/perl-5.8.0/ext/Errno'
Making B (dynamic) readdir(./../../../../../..): A file or directory in the path name does not exist. at ../../lib/File/Find.pm line$ Use of chdir('') or chdir(undef) as chdir() is deprecated at ../../lib/File/Find.pm line 716. readdir(./..): A file or directory in the path name does not exist. at ../../lib/ExtUtils/MakeMaker.pm line 231 Couldn't change to directory /acct/rlg0301/C: A file or directory in the path name does not exist. at Makefile.PL$ Running '../../miniperl "-I../../lib" ../../lib/ExtUtils/xsubpp -v 2>&1' exits with status 127 at ../../lib/ExtUt$ Running '../../miniperl ../../lib/ExtUtils/xsubpp temp000 2>&1' exits with status 16777215 at ../../lib/ExtUtils/$ Writing Makefile for B Warning: No Makefile! make[1]: Entering directory `/acct/rlg0301/PROGS/PERL/perl-5.8.0/ext/B' make[1]: *** No rule to make target `config'. Stop. make[1]: Leaving directory `/acct/rlg0301/PROGS/PERL/perl-5.8.0/ext/B' /acct/rlg0301/bin/make config failed\, continuing anyway... make[1]: Entering directory `/acct/rlg0301/PROGS/PERL/perl-5.8.0/ext/B' make[1]: *** No rule to make target `all'. Stop. make[1]: Leaving directory `/acct/rlg0301/PROGS/PERL/perl-5.8.0/ext/B' make: *** [lib/auto/B/B.so] Error 2
I saved the entire output from "make minitest"\, and "make test" if anyone needs to see it.
Thanks.
-----Original Message----- From: H.Merijn Brand (via RT) [mailto:perlbug-followup@perl.org] Sent: Thursday\, January 16\, 2003 6:38 AM To: Grubb\, Richard L Subject: Re: [perl #19877] Problem Compiling extensions on AIX 4.3.3
[SNIP]
No\, it gives the subversion of BaseOperatingSystem.RunTimeEnvironment
You get the ML thusly:
i2:/data/update/index 103 # instfix -i | grep ML
[SNIP]
Try with the default first (don't install\, just look at what happens)
$ cd /blah $ gzip -d \</tmp/perl-5.8.0.tar.gz | tar xf - $ cd perl-5.8.0 $ sh ./Configure -des |
---|
: $ make : $ make test
Are you using GNU make or AIX' default make? GNU make /might/ help
-- H.Merijn Brand Amsterdam Perl Mongers (http://amsterdam.pm.org/) using perl-5.6.1\, 5.8.0 & 633 on HP-UX 10.20 & 11.00\, AIX 4.2\, AIX 4.3\, WinNT 4\, Win2K pro & WinCE 2.11. Smoking perl CORE: smokers@perl.org http://archives.develooper.com/daily-build@perl.org/ perl-qa@perl.org send smoke reports to: smokers-reports@perl.org\, QA: http://qa.perl.org
On Thu 16 Jan 2003 16:07\, "Grubb\, Richard L" \richard\.l\.grubb@​boeing\.com wrote:
Thanks.
Here is the maintenance level output:
All filesets for AIX43ML were found\. All filesets for 4\.3\.0\.0\_AIX\_ML were found\. All filesets for 4\.3\.1\.0\_AIX\_ML were found\. All filesets for 4\.3\.2\.0\_AIX\_ML were found\. All filesets for 4\.3\.3\.0\_AIX\_ML were found\. All filesets for 4330\-02\_AIX\_ML were found\. All filesets for 4320\-02\_AIX\_ML were found\. All filesets for 4330\-03\_AIX\_ML were found\. All filesets for 4330\-04\_AIX\_ML were found\. All filesets for 4330\-05\_AIX\_ML were found\. All filesets for 4330\-01\_AIX\_ML were found\. All filesets for 4330\-06\_AIX\_ML were found\. All filesets for 4330\-07\_AIX\_ML were found\. All filesets for 4330\-08\_AIX\_ML were found\.
So you are on ML-08
My make is Gnumake 3.79.1 (Built for powerpc-ibm-aix4.3.3.0)
Good!
Using the default values in Configure\, the make step then fails with this at the end (complete make output is attached):
I did not catch what C compiler you use.
# grep ^cc config.sh
Is there anything in README.aix that describes your C compiler?
make[1]: Leaving directory `/acct/rlg0301/PROGS/PERL/perl-5.8.0/x2p'
Making B \(dynamic\)
readdir(./../../../../../..): A file or directory in the path name does not exist. at ../../lib/File/Find.pm line$ Use of chdir('') or chdir(undef) as chdir() is deprecated at ../../lib/File/Find.pm line 716. readdir(./..): A file or directory in the path name does not exist. at ../../lib/ExtUtils/MakeMaker.pm line 231 Couldn't change to directory /acct/rlg0301/C: A file or directory in the path name does not exist. at Makefile.PL$ Running '../../miniperl "-I../../lib" ../../lib/ExtUtils/xsubpp -v 2>&1' exits with status 127 at ../../lib/ExtUt$ Running '../../miniperl ../../lib/ExtUtils/xsubpp temp000 2>&1' exits with status 16777215 at ../../lib/ExtUtils/$ Writing Makefile for B Warning: No Makefile! make[1]: Entering directory `/acct/rlg0301/PROGS/PERL/perl-5.8.0/ext/B' make[1]: *** No rule to make target `config'. Stop. make[1]: Leaving directory `/acct/rlg0301/PROGS/PERL/perl-5.8.0/ext/B' /acct/rlg0301/bin/make config failed\, continuing anyway... make[1]: Entering directory `/acct/rlg0301/PROGS/PERL/perl-5.8.0/ext/B' make[1]: *** No rule to make target `all'. Stop. make[1]: Leaving directory `/acct/rlg0301/PROGS/PERL/perl-5.8.0/ext/B' make: *** [lib/auto/B/B.so] Error 2
Using the first error message as my guide\, I looked at the man page for readdir. I don't know if the following is pertinent:
"Description
Attention​: Do not use the readdir subroutine in a multithreaded
environment. See the multithread alternative in the readdir_r subroutine article."
You are most likely not running a threaded configuration\, because that would have used 'cc_r' as compiler. If you *are* trying to build threaded perl with either xlc or vac\, you are in big trouble that configure still selected 'cc'
Going on\, I ran 'make minitest'\, and two tests failed\, both for the same reason.
t/io/open............Can't locate Errno.pm in @INC (@INC contains: ../lib) at io/open.t line 234. BEGIN failed--compilation aborted at io/open.t line 234. FAILED at test 0 t/op/magic...........Can't locate Errno.pm in @INC (@INC contains: ../lib) at op/magic.t line 299. BEGIN failed--compilation aborted. FAILED at test 38
I also ran make test\, which ended with this output:
Making Errno \(nonxs\)
Writing Makefile for Errno make[1]: Entering directory `/acct/rlg0301/PROGS/PERL/perl-5.8.0/ext/Errno' make[1]: Leaving directory `/acct/rlg0301/PROGS/PERL/perl-5.8.0/ext/Errno' make[1]: Entering directory `/acct/rlg0301/PROGS/PERL/perl-5.8.0/ext/Errno' ../../miniperl "-I../../lib" "-I../../lib" "-I../../lib" "-I../../lib" Errno_pm.PL Errno.pm cp Errno.pm ../../lib/Errno.pm make[1]: Leaving directory `/acct/rlg0301/PROGS/PERL/perl-5.8.0/ext/Errno'
Making B \(dynamic\)
readdir(./../../../../../..): A file or directory in the path name does not exist. at ../../lib/File/Find.pm line$ Use of chdir('') or chdir(undef) as chdir() is deprecated at ../../lib/File/Find.pm line 716. readdir(./..): A file or directory in the path name does not exist. at ../../lib/ExtUtils/MakeMaker.pm line 231 Couldn't change to directory /acct/rlg0301/C: A file or directory in the path name does not exist. at Makefile.PL$ Running '../../miniperl "-I../../lib" ../../lib/ExtUtils/xsubpp -v 2>&1' exits with status 127 at ../../lib/ExtUt$ Running '../../miniperl ../../lib/ExtUtils/xsubpp temp000 2>&1' exits with status 16777215 at ../../lib/ExtUtils/$ Writing Makefile for B Warning: No Makefile! make[1]: Entering directory `/acct/rlg0301/PROGS/PERL/perl-5.8.0/ext/B' make[1]: *** No rule to make target `config'. Stop. make[1]: Leaving directory `/acct/rlg0301/PROGS/PERL/perl-5.8.0/ext/B' /acct/rlg0301/bin/make config failed\, continuing anyway... make[1]: Entering directory `/acct/rlg0301/PROGS/PERL/perl-5.8.0/ext/B' make[1]: *** No rule to make target `all'. Stop. make[1]: Leaving directory `/acct/rlg0301/PROGS/PERL/perl-5.8.0/ext/B' make: *** [lib/auto/B/B.so] Error 2
I saved the entire output from "make minitest"\, and "make test" if anyone needs to see it.
Thanks.
-----Original Message----- From: H.Merijn Brand (via RT) [mailto:perlbug-followup@perl.org] Sent: Thursday\, January 16\, 2003 6:38 AM To: Grubb\, Richard L Subject: Re: [perl #19877] Problem Compiling extensions on AIX 4.3.3
[SNIP]
No\, it gives the subversion of BaseOperatingSystem.RunTimeEnvironment
You get the ML thusly:
i2:/data/update/index 103 # instfix -i | grep ML
[SNIP]
Try with the default first (don't install\, just look at what happens)
$ cd /blah $ gzip -d \</tmp/perl-5.8.0.tar.gz tar xf - $ cd perl-5.8.0 $ sh ./Configure -des : $ make : $ make test
Are you using GNU make or AIX' default make? GNU make /might/ help
-- H.Merijn Brand Amsterdam Perl Mongers (http://amsterdam.pm.org/) using perl-5.6.1\, 5.8.0 & 633 on HP-UX 10.20 & 11.00\, AIX 4.2\, AIX 4.3\, WinNT 4\, Win2K pro & WinCE 2.11. Smoking perl CORE: smokers@perl.org http://archives.develooper.com/daily-build@perl.org/ perl-qa@perl.org send smoke reports to: smokers-reports@perl.org\, QA: http://qa.perl.org
-- H.Merijn Brand Amsterdam Perl Mongers (http://amsterdam.pm.org/) using perl-5.6.1\, 5.8.0 & 633 on HP-UX 10.20 & 11.00\, AIX 4.2\, AIX 4.3\, WinNT 4\, Win2K pro & WinCE 2.11. Smoking perl CORE: smokers@perl.org http://archives.develooper.com/daily-build@perl.org/ perl-qa@perl.org send smoke reports to: smokers-reports@perl.org\, QA: http://qa.perl.org
On Fri 17 Jan 2003 15:43\, "Grubb\, Richard L" \richard\.l\.grubb@​boeing\.com wrote:
Oops. I use cc which is a tracked alias for /usr/bin/cc\, which is a symbolic link to /usr/ibmcxx/bin/xlc
Typing lslpp -l | fgrep 'xlC.C ' results in: xlC.C 3.1.4.7 COMMITTED C for AIX Compiler xlC.C 3.1.4.0 COMMITTED C for AIX Compiler
Please keep p5p in the Cc list. The archives are used as a reference when solving (backtracking) problems.
README.aix describes how to update xlC to 3.1.4.10 for free
A Mr. Oliver Boos has replied to me that he has had the same problem on a client's system. I didn't see where he sent the message to anyone but me\, so I will copy it here.
I've experienced the same problem at a customer site and managed to track it down to a problem in lib/Cwd.pm in the routine getcwd(). It obviously does not work when you are compiling perl in your home directory which is (at least for me) located on an automounted (NFS) file system. I've been unpacking perl5.8 in a JFS filesystem (/tmp/perl5.8.0) an ran configure/make/make test without any problem.
Perl 5.6 exhibits the same problem but the problem is not fatal for compilation as it shows up in testing only (test for lib/findbin fails). I suppose the code for lib/Cwd.pm is identical in both versions.
My filesystem is also automounted by NFS. I will look at lib/Cwd.pm. Any hints will be appreciated.
Thanks
-----Original Message----- From: H.Merijn Brand [mailto:h.m.brand@hccnet.nl] Sent: Thursday\, January 16\, 2003 11:48 AM To: Grubb\, Richard L Cc: Perl 5 Porters Subject: Re: [perl #19877] Problem Compiling extensions on AIX 4.3.3
On Thu 16 Jan 2003 16:07\, "Grubb\, Richard L" \richard\.l\.grubb@​boeing\.com wrote:
Using the default values in Configure\, the make step then fails with this at the end (complete make output is attached):
I did not catch what C compiler you use.
-- H.Merijn Brand Amsterdam Perl Mongers (http://amsterdam.pm.org/) using perl-5.6.1\, 5.8.0 & 633 on HP-UX 10.20 & 11.00\, AIX 4.2\, AIX 4.3\, WinNT 4\, Win2K pro & WinCE 2.11. Smoking perl CORE: smokers@perl.org http://archives.develooper.com/daily-build@perl.org/ perl-qa@perl.org send smoke reports to: smokers-reports@perl.org\, QA: http://qa.perl.org
On Fri 17 Jan 2003 19:17\, "Grubb\, Richard L" \richard\.l\.grubb@​boeing\.com wrote:
I would have included the p5p list in my reply\, but I wasn't sure why Mr. Boos hadn't included them\, and decided to reply directly to you.
I don't think I can update xlC since I am not root. However\, maybe I can make my own private copy and update it.
I don't think you can on AIX. Does `root' not want to cooperate? Again\, it's a *free* update. No costs involved.
Thanks
-----Original Message----- From: H.Merijn Brand (via RT) [mailto:perlbug-followup@perl.org] Sent: Friday\, January 17\, 2003 9:35 AM To: Grubb\, Richard L Subject: Re: [perl #19877] Problem Compiling extensions on AIX 4.3.3
On Fri 17 Jan 2003 15:43\, "Grubb\, Richard L" \richard\.l\.grubb@​boeing\.com wrote:
Oops. I use cc which is a tracked alias for /usr/bin/cc\, which is a symbolic link to /usr/ibmcxx/bin/xlc
Typing lslpp -l | fgrep 'xlC.C ' results in: xlC.C 3.1.4.7 COMMITTED C for AIX Compiler xlC.C 3.1.4.0 COMMITTED C for AIX Compiler
Please keep p5p in the Cc list. The archives are used as a reference when solving (backtracking) problems.
README.aix describes how to update xlC to 3.1.4.10 for free
-- H.Merijn Brand Amsterdam Perl Mongers (http://amsterdam.pm.org/) using perl-5.6.1\, 5.8.0 & 633 on HP-UX 10.20 & 11.00\, AIX 4.2\, AIX 4.3\, WinNT 4\, Win2K pro & WinCE 2.11. Smoking perl CORE: smokers@perl.org http://archives.develooper.com/daily-build@perl.org/ perl-qa@perl.org send smoke reports to: smokers-reports@perl.org\, QA: http://qa.perl.org
I have narrowed down my problem to the getcwd subroutine in Cwd.pm. I have attached a test script and its output that exhibits the problem. I cut out a portion of the Cwd.pm source code and put it into a test script because I couldn't figure out how to get the perl debugger to step very far into the Cwd.pm module when I included it through a "use Cwd;" statement in my test script. I also added some print statements to see what was going on in the code. My home directory is auto mounted via NFS and is called /acct/rlg0301. The _perl_abs_path subroutine works it way up to my main directory\, and then seems to go astray and keeps prepending /.. until it runs out of directories. There is probably a problem with lstat. But I am having trouble figuring out where lstat is implemented in Perl or miniperl.
I also subscribed to the p5p list. I am a structural engineer\, not a computer scientist. So I will need some help in fixing this problem in the most portable or "artistic" way. :-)
PS The subscription instructions in perl-5.8.0/Porting/pumpkin.pod seem to be out of date.
i have to build perl-5.8.0 on an nfs automounted disk\, and i find that it works on solaris\, linux\, OSF1\, and hpux\, but fails on aix.
it appears that Makefile.PL cannot be converted to makefile for a number of subdirs of perl-5.8.0/x2p.
cd perl-5.8.0 make . . . ../miniperl -I../lib find2perl.PL Extracting find2perl (with variable substitutions)
make[2]: Leaving directory `/idisk/bld/2003/aix32_share/ported/perl/perl-5.8.0/x 2p'
if i copy the source to /usr/mhinteg and configure and build there instead of the nfs autmounted disk\, the problem does not appear\, but i *must* build on the nfs automounted disk for production\, as i do for solaris\, hpux\, OSF1\, and linux.
MHINTEG@iaix3:/mhinteg/trees/tip/aix32_share/ported/perl/perl-5.8.0 76 % myconfig Summary of my perl5 (revision 5.0 version 8 subversion 0) configuration: Platform: osname=aix\, osvers=4.3.2.0\, archname=aix uname='aix iaix3 3 4 000646034c00 ' config_args='-des' hint=recommended\, useposix=true\, d_sigaction=define usethreads=undef use5005threads=undef useithreads=undef usemultiplicity=undef useperlio=define d_sfio=undef uselargefiles=define usesocks=undef use64bitint=undef use64bitall=undef uselongdouble=undef usemymalloc=n\, bincompat5005=undef Compiler: cc='cc'\, ccflags ='-D_ALL_SOURCE -D_ANSI_C_SOURCE -D_POSIX_SOURCE -qmaxmem=16384 -qnoansialias -DUSE_NATIVE_DLOPEN -I/usr/local/include -q32 -D_LARGE_FILES -qlonglong'\, optimize='-O'\, cppflags='-D_ALL_SOURCE -D_ANSI_C_SOURCE -D_POSIX_SOURCE -qmaxmem=16384 -qnoansialias -DUSE_NATIVE_DLOPEN -I/usr/local/include' ccversion='5.0.2.7'\, gccversion=''\, gccosandvers='' intsize=4\, longsize=4\, ptrsize=4\, doublesize=8\, byteorder=4321 d_longlong=define\, longlongsize=8\, d_longdbl=define\, longdblsize=8 ivtype='long'\, ivsize=4\, nvtype='double'\, nvsize=8\, Off_t='off_t'\, lseeksize=8 alignbytes=8\, prototype=define Linker and Libraries: ld='ld'\, ldflags =' -brtl -L/usr/local/lib -b32' libpth=/usr/local/lib /lib /usr/lib /usr/ccs/lib libs=-lbind -lnsl -ldbm -ldl -lld -lm -lc -lcrypt -lbsd -lPW perllibs=-lbind -lnsl -ldl -lld -lm -lc -lcrypt -lbsd -lPW libc=/lib/libc.a\, so=a\, useshrplib=false\, libperl=libperl.a gnulibc_version='' Dynamic Linking: dlsrc=dl_aix.xs\, dlext=so\, d_dlsymun=undef\, ccdlflags=' -bE:/usr/local/lib/perl5/5.8.0/aix/CORE/perl.exp' cccdlflags=' '\, lddlflags=' -bhalt:4 -bM:SRE -bI:$(PERL_INC)/perl.exp -bE:$(BASEEXT).exp -bnoentry -lc -L/usr/local/lib'
any suggestions you can provide would be greatly appreciated.
thanks regards\, -mrh
-- Michael R. Holmes michael.r.holmes@syntegra.com integration group email: ec-integ@syntegra.com Office: 651-415-4111 Room: 1s270 Digital Pager: 612-613-0742 Fax: 651-415-4183 Home Office: 651-291-9536 / 651-291-9534
Mr./Ms. Brand: I am including you in the "To:" list\, because you are listed as the author of Perl 5.8.0's README.aix file.
(Make your window wide for best viewing of long lines.)
When first attempting to build and test Perl 5.8.0 on AIX (4.2.1.0)\, I experienced repeated failures\, not always the same.
The solution turned out to be to use a local file-system rather than a cross-mounted file-system (which was from another AIX 4.2.1.0 system) for performing "sh Configure ..."\, "make"\, etc. After I tried this\, and found that it worked\, a co-worker said that it seemed familiar to him. I presume that this peculiarity is limited to AIX\, and possibly to older versions of AIX.
It might be helpful to mention this in the README.aix file.
(You might think that I would have started with a local file-system just for speed\, but file-systems cross-mounted from a file-server had more ample space.)
Here is the output of the "myconfig" sh script:
Summary of my perl5 (revision 5.0 version 8 subversion 0) configuration: Platform: osname=aix\, osvers=4.2.1.0\, archname=aix uname='aix whmbb010 2 4 000018908200 ' config_args='-de' hint=recommended\, useposix=true\, d_sigaction=define usethreads=undef use5005threads=undef useithreads=undef usemultiplicity=undef useperlio=define d_sfio=undef uselargefiles=define usesocks=undef use64bitint=undef use64bitall=undef uselongdouble=undef usemymalloc=n\, bincompat5005=undef Compiler: cc='cc'\, ccflags ='-D_ALL_SOURCE -D_ANSI_C_SOURCE -D_POSIX_SOURCE -qmaxmem=16384 -qnoansialias'\, optimize='-O'\, cppflags='-D_ALL_SOURCE -D_ANSI_C_SOURCE -D_POSIX_SOURCE -qmaxmem=16384 -qnoansialias' ccversion='3.1.4.0'\, gccversion=''\, gccosandvers='' intsize=4\, longsize=4\, ptrsize=4\, doublesize=8\, byteorder=4321 d_longlong=define\, longlongsize=8\, d_longdbl=define\, longdblsize=8 ivtype='long'\, ivsize=4\, nvtype='double'\, nvsize=8\, Off_t='off_t'\, lseeksize=4 alignbytes=8\, prototype=define Linker and Libraries: ld='ld'\, ldflags ='' libpth=/lib /usr/lib /usr/ccs/lib libs=-lnsl -ldbm -ldl -lld -lm -lc -lbsd -lPW perllibs=-lnsl -ldl -lld -lm -lc -lbsd -lPW libc=\, so=a\, useshrplib=false\, libperl=libperl.a gnulibc_version='' Dynamic Linking: dlsrc=dl_aix.xs\, dlext=so\, d_dlsymun=undef\, ccdlflags=' -bE:/usr/local/lib/perl5/5.8.0/aix/CORE/perl.exp' cccdlflags=' '\, lddlflags=' -bhalt:4 -bM:SRE -bI:$(PERL_INC)/perl.exp -bE:$(BASEEXT).exp -bnoentry -lc'
Below is a snippet of output from one failed "make"--this was the most common type of failure\, although the directory in which it was mistakenly looking to find a "C" subdirectory varied--sometimes it was "/" (root's home directory)\, sometimes it was "/usr/home/lwe" (my personal home directory):
cc -o a2p hash.o str.o util.o walk.o a2p.o -lnsl -ldbm -ldl -lld -lm -lc -lbsd -lPW ../miniperl -I../lib find2perl.PL Extracting find2perl (with variable substitutions)
Making B (dynamic) Couldn't change to directory /workcom1/lwe/perl/perl-5.8.0/C: A file or directory in the path name does not exist. at Makefile.PL line 18 Running '../../miniperl "-I../../lib" ../../lib/ExtUtils/xsubpp -v 2>&1' exits with status 127 at ../../lib/ExtUtils/MM_Unix.pm line 3826. Running '../../miniperl ../../lib/ExtUtils/xsubpp temp000 2>&1' exits with status 16777215 at ../../lib/ExtUtils/MM_Unix.pm line 3852. Writing Makefile for B Warning: No Makefile! make: 1254-002 Cannot find a rule to create target config from dependencies. Stop. make config failed\, continuing anyway... make: 1254-002 Cannot find a rule to create target all from dependencies. Stop. make: 1254-004 The error code from the last command is 2.
Stop. whmbb010 dbs_4 #
I found that it had dropped a "Makefile.PL" (or was it "Makefile.pl"?) file into "/" and "~" after such "make" failures. There were a couple of times that the "make" succeeded with the cross-mounted file-system\, but then "make test" failed: once it had only 98% success\, and the other time\, "make test" decided to rebuild the software before testing\, and the build failed.
I don't know if any of the details above are of any use\, but the main idea of using a local\, not cross-mounted\, file-system when installing on AIX may save some other people some time and frustration.
Thanks!
Larry Early lwe@nortelnetworks.com
Office (585) 654-2325 Nortel Networks ESN 432-2325 Site (585) 482-5000
Nortel Networks\, Network Information Services 97 Humboldt St. Rochester\, NY 14609-7493
Life is a comedy for those who think and a tragedy for those who feel. Horace Walpole
Here is an additional variation of the "make" symptom\, in case these details are of any value:
Making B (dynamic) readdir(./../../..): A file or directory in the path name does not exist. at ../../lib/File/Find.pm line 573 Use of chdir('') or chdir(undef) as chdir() is deprecated at ../../lib/File/Find.pm line 716. Couldn't change to directory /C: A file or directory in the path name does not exist. at Makefile.PL line 18 Running '../../miniperl "-I../../lib" ../../lib/ExtUtils/xsubpp -v 2>&1' exits with status 127 at ../../lib/ExtUtils/MM_Unix.pm line 3826. Running '../../miniperl ../../lib/ExtUtils/xsubpp temp000 2>&1' exits with status 16777215 at ../../lib/ExtUtils/MM_Unix.pm line 3852. Writing Makefile for B Warning: No Makefile! make: 1254-002 Cannot find a rule to create target config from dependencies. Stop. make config failed\, continuing anyway... make: 1254-002 Cannot find a rule to create target all from dependencies. Stop. make: 1254-004 The error code from the last command is 2.
Stop. whmbb010 dbs_4 #
Larry Early lwe@nortelnetworks.com
Office (585) 654-2325 Nortel Networks ESN 432-2325 Site (585) 482-5000
Nortel Networks\, Network Information Services 97 Humboldt St. Rochester\, NY 14609-7493
Life is a comedy for those who think and a tragedy for those who feel. Horace Walpole
-----Original Message----- From: perlbug-followup@perl.org [mailto:perlbug-followup@perl.org \mailto​:perlbug\-followup@​perl\.org ] Sent: Friday\, September 19\, 2003 2:17 PM To: Early\, Larry [HUMB:9682:EXCH] Subject: [perl #23874] AutoReply: problem (and solution) installing Perl 5.8.0 on AIX
Greetings\,
This message has been automatically generated in response to the creation of a trouble ticket regarding: "problem (and solution) installing Perl 5.8.0 on AIX".
There is no need to reply to this message right now. Your ticket has been assigned an ID of [perl #23874].
Please include the string:
[perl #23874]
in the subject line of all future correspondence about this issue. To do so\,
you may reply to this message (please delete unnecessary quotes)
Thank you\, perlbug-followup@perl.org
Return-Path: \lwe@​nortelnetworks\.com
Delivered-To: rt-perl5@netlabs.develooper.com
Received: (qmail 1671 invoked by uid 424); 19 Sep 2003 18:17:14 -0000
Received: from onion.develooper.com (HELO onion.perl.org) (63.251.223.166)
by x1.develooper.com (qpsmtpd/0.26) with SMTP; Fri\, 19 Sep 2003 11:17:10
-0700
Received: (qmail 20959 invoked by uid 1005); 19 Sep 2003 18:17:09 -0000
Delivered-To: perlmail-perlbug@onion.perl.org
Received: (qmail 20956 invoked by uid 76); 19 Sep 2003 18:17:09 -0000
Received: from qmailr@one.develooper.com (HELO ran-out.mx.develooper.com)
(64.81.84.115) by onion.perl.org (qpsmtpd/0.26) with SMTP; Fri\, 19 Sep 2003
11:17:09 -0700
Received: (qmail 15514 invoked by uid 225); 19 Sep 2003 18:17:07 -0000
Delivered-To: perlbug@perl.org
Received: (qmail 15509 invoked by uid 507); 19 Sep 2003 18:17:06 -0000
Received: from zrtps0kn.nortelnetworks.com (HELO
zrtps0kn.nortelnetworks.com) (47.140.192.55) by one.develooper.com
(qpsmtpd/0.27-dev) with ESMTP; Fri\, 19 Sep 2003 11:17:04 -0700
Received: from zrtpd0jn.us.nortel.com (zrtpd0jn.us.nortel.com
[47.140.202.35]) by zrtps0kn.nortelnetworks.com
(Switch-2.2.6/Switch-2.2.0) with ESMTP id h8JIGxs12168; Fri\, 19 Sep 2003
14:16:59 -0400 (EDT)
Received: by zrtpd0jn.us.nortel.com with Internet Mail Service (5.5.2653.19)
id \
Mr./Ms. Brand: I am including you in the "To:" list\, because you are listed as the author of Perl 5.8.0's README.aix file.
(Make your window wide for best viewing of long lines.)
When first attempting to build and test Perl 5.8.0 on AIX (4.2.1.0)\, I experienced repeated failures\, not always the same.
The solution turned out to be to use a local file-system rather than a cross-mounted file-system (which was from another AIX 4.2.1.0 system) for performing "sh Configure ..."\, "make"\, etc. After I tried this\, and found that it worked\, a co-worker said that it seemed familiar to him. I presume that this peculiarity is limited to AIX\, and possibly to older versions of AIX.
It might be helpful to mention this in the README.aix file.
(You might think that I would have started with a local file-system just for speed\, but file-systems cross-mounted from a file-server had more ample space.)
Here is the output of the "myconfig" sh script:
Summary of my perl5 (revision 5.0 version 8 subversion 0) configuration: Platform: osname=aix\, osvers=4.2.1.0\, archname=aix uname='aix whmbb010 2 4 000018908200 ' config_args='-de' hint=recommended\, useposix=true\, d_sigaction=define usethreads=undef use5005threads=undef useithreads=undef usemultiplicity=undef useperlio=define d_sfio=undef uselargefiles=define usesocks=undef use64bitint=undef use64bitall=undef uselongdouble=undef usemymalloc=n\, bincompat5005=undef Compiler: cc='cc'\, ccflags ='-D_ALL_SOURCE -D_ANSI_C_SOURCE -D_POSIX_SOURCE -qmaxmem=16384 -qnoansialias'\, optimize='-O'\, cppflags='-D_ALL_SOURCE -D_ANSI_C_SOURCE -D_POSIX_SOURCE -qmaxmem=16384 -qnoansialias' ccversion='3.1.4.0'\, gccversion=''\, gccosandvers='' intsize=4\, longsize=4\, ptrsize=4\, doublesize=8\, byteorder=4321 d_longlong=define\, longlongsize=8\, d_longdbl=define\, longdblsize=8 ivtype='long'\, ivsize=4\, nvtype='double'\, nvsize=8\, Off_t='off_t'\, lseeksize=4 alignbytes=8\, prototype=define Linker and Libraries: ld='ld'\, ldflags ='' libpth=/lib /usr/lib /usr/ccs/lib libs=-lnsl -ldbm -ldl -lld -lm -lc -lbsd -lPW perllibs=-lnsl -ldl -lld -lm -lc -lbsd -lPW libc=\, so=a\, useshrplib=false\, libperl=libperl.a gnulibc_version='' Dynamic Linking: dlsrc=dl_aix.xs\, dlext=so\, d_dlsymun=undef\, ccdlflags=' -bE:/usr/local/lib/perl5/5.8.0/aix/CORE/perl.exp' cccdlflags=' '\, lddlflags=' -bhalt:4 -bM:SRE -bI:$(PERL_INC)/perl.exp -bE:$(BASEEXT).exp -bnoentry -lc'
Below is a snippet of output from one failed "make"--this was the most common type of failure\, although the directory in which it was mistakenly looking to find a "C" subdirectory varied--sometimes it was "/" (root's home directory)\, sometimes it was "/usr/home/lwe" (my personal home directory):
cc -o a2p hash.o str.o util.o walk.o a2p.o -lnsl -ldbm -ldl -lld -lm -lc -lbsd -lPW ../miniperl -I../lib find2perl.PL Extracting find2perl (with variable substitutions)
Making B (dynamic) Couldn't change to directory /workcom1/lwe/perl/perl-5.8.0/C: A file or directory in the path name does not exist. at Makefile.PL line 18 Running '../../miniperl "-I../../lib" ../../lib/ExtUtils/xsubpp -v 2>&1' exits with status 127 at ../../lib/ExtUtils/MM_Unix.pm line 3826. Running '../../miniperl ../../lib/ExtUtils/xsubpp temp000 2>&1' exits with status 16777215 at ../../lib/ExtUtils/MM_Unix.pm line 3852. Writing Makefile for B Warning: No Makefile! make: 1254-002 Cannot find a rule to create target config from dependencies. Stop. make config failed\, continuing anyway... make: 1254-002 Cannot find a rule to create target all from dependencies. Stop. make: 1254-004 The error code from the last command is 2.
Stop. whmbb010 dbs_4 #
I found that it had dropped a "Makefile.PL" (or was it "Makefile.pl"?) file into "/" and "~" after such "make" failures. There were a couple of times that the "make" succeeded with the cross-mounted file-system\, but then "make test" failed: once it had only 98% success\, and the other time\, "make test" decided to rebuild the software before testing\, and the build failed.
I don't know if any of the details above are of any use\, but the main idea of using a local\, not cross-mounted\, file-system when installing on AIX may save some other people some time and frustration.
Thanks!
Larry Early lwe@nortelnetworks.com
Office (585) 654-2325 Nortel Networks ESN 432-2325 Site (585) 482-5000
Nortel Networks\, Network Information Services 97 Humboldt St. Rochester\, NY 14609-7493
Life is a comedy for those who think and a tragedy for those who feel. Horace Walpole
My home directory (/home/dawallis) is on an automounted NFS volume. Attempting to build perl 5.8.1 there works fine for Solaris\, but on AIX MakeMaker gets incorrect results when attempting to map @INC from relative path names to absolute paths. First indication of a problem is during 'make' when building the first extension (B):
readdir(./../../../..): no such file or directory at ../../lib/File/Find.pm line 579 chdir('') ... deprecated ... at ../../lib/File/Find.pm line 723 readdir(./..): no such ... at ../../lib/ExtUtils/MakeMaker.pm line 165 ...
When I put debugging print statements before and after the changes to @INC in MakeMaker (near 165) I see that it translates ../../lib incorrectly as /usr/lib instead of /home/dawallis/perl-5.8.1.aix/lib.
Switching to a directory in a local filesystem (/usr) on the same AIX (oslevel 4.3.2.0) system works\, and 'make test' approves of all test results.
David Wallis
This problem turns out to be the same as #19877.
David Wallis
This problem was also encountered by two others who bothered to report it: #22763 and #23874.
Could we please have a warning in README.aix until this gets fixed?
David Wallis
-----Original Message----- From: Wallis\, David Sent: Thursday\, November 06\, 2003 4:22 PM To: 'perlbug-followup@perl.org' Subject: RE: [perl #24430] perlbug AutoReply: Can't 'make' perl 5.8.1 on AIX using NFS file system
This problem turns out to be the same as #19877.
David Wallis
On Fri 07 Nov 2003 02:12\, "Wallis\, David" \David\_Wallis@​bmc\.com wrote:
This problem was also encountered by two others who bothered to report it: #22763 and #23874.
Could we please have a warning in README.aix until this gets fixed?
Patch welcome :)
David Wallis
-----Original Message----- From: Wallis\, David Sent: Thursday\, November 06\, 2003 4:22 PM To: 'perlbug-followup@perl.org' Subject: RE: [perl #24430] perlbug AutoReply: Can't 'make' perl 5.8.1 on AIX using NFS file system
This problem turns out to be the same as #19877.
David Wallis
-- H.Merijn Brand Amsterdam Perl Mongers (http://amsterdam.pm.org/) using perl-5.6.1\, 5.8.0\, & 5.9.x\, and 806 on HP-UX 10.20 & 11.00\, 11i\, AIX 4.3\, SuSE 8.2\, and Win2k. http://www.cmve.net/~merijn/ http://archives.develooper.com/daily-build@perl.org/ perl-qa@perl.org send smoke reports to: smokers-reports@perl.org\, QA: http://qa.perl.org
Body was too large for import. Click here for the attachment in RT
I've figured out part of the problem. The lib/Cwd.pm module uses opendir/readdir to determine the absolute location of "." and of various files. I'm building Perl in a location named /sites/apex_share/tools/perl.ibm.perl-5.8.5.wrk. Cwd reads . and then ./.. and then ./../.. and then ./../../.. and so on. When it gets to the point where it is trying to read the /sites directory it reads five names (5 calls to readdir) and each call returns the empty string (""). Which I'm thinking should never happen. These correspond to the five automount points that we have in /sites. /sites/apex_share is one of those automount points. So it appears that the builtin Perl readdir isn't working quite right on AIX 4.3.3 when reading the names of objects which are actually mountpoints. By moving my directory to a disk that is not automounted I can make the build work.
Gary
@mhx - Status changed from 'new' to 'resolved'
@mhx - Status changed from 'resolved' to 'open'
Hello\, there is no activity on this report since over 5 years. I think that this ticket should be closed.
Bye Rainer
Migrated from rt.perl.org#19877 (status was 'open')
Searchable as RT19877$