I run into the same problems building 5.16.0 whether I run from perlbrew or
rpmbuild.
I'm sorta wondering how perl is built for the distribution if I am having such a
hard time rebuilding it or building it on a suse system.
This points to a problem I mentioned a few years back with the build system.
If something only builds on a remote build system -- you end up with a proprietary
build system that can't easily be reproduced to rebuild products.
The whole idea of open source was to be able to fix things in it that were broken
by building your own. If I can't do that -- easily -- on my own system, I'm
beginning to wonder how well that fits the definition of 'open source'.
Right now, I have 2 main failure modes depending on how I build.
If I build from a fresh login -- a default config:
sh Configure -de
make
make test
That doesn't work -- Configure gets confused and drops in 'null' for programs
(like make, rm, and maybe a few others).
If I build from env -i (shell-dash/sh/bash) --
Configure will build, but the C compiler (cc or gcc) is broken:
make
`sh cflags "optimize='-O2'" perlmini.o` -DPERL_IS_MINIPERL
-DPERL_EXTERNAL_GLOB perlmini.c
CCCMD = gcc -DPERL_CORE -c -fno-strict-aliasing -pipe
-fstack-protector -I/usr/local/include -D_LARGEFILE_SOURCE
-D_FILE_OFFSET_BITS=64 -std=c89 -O2 -Wall -ansi -W -Wextra
-Wdeclaration-after-statement -Wendif-labels -Wc++-compat -Wwrite-strings
gcc: error trying to exec 'cc1': execvp: No such file or directory
cat >lin.c
#include
main() {
printf ("Hello World\n");
}
$ gcc lin.c
gcc: error trying to exec 'cc1': execvp: No such file or directory
$ set
IFS='
'
LINENO=''
OLDPWD='/home/tools/perl'
OPTIND='1'
PATH='/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin'
PPID='27167'
PS1='$ '
PS2='> '
PS4='+ '
PWD='/home/tools/perl/perl-5.16.0'
_='lin.c'
My path looks normal -- so what's the problem -- why can't I run the C compiler?
Who knows why a normal login run of configure ends up with this:
End of configuration questions.
Stripping down executable paths...
Creating config.sh...
./Configure: line 22748: -f: command not found
./Configure: line 23838: -f: command not found
./Configure: line 23844: -f: command not found
Doing variable substitutions on .SH files...
Extracting config.h (with variable substitutions)
Extracting cflags (with variable substitutions)
Not re-extracting config.h
Extracting makedepend (with variable substitutions)
Extracting Makefile (with variable substitutions)
./Makefile.SH: line 1600: -f: command not found
Extracting myconfig (with variable substitutions)
Extracting pod/Makefile (with variable substitutions)
Extracting Policy.sh (with variable substitutions)
./Policy_sh.SH: line 147: -d: command not found
./Policy_sh.SH: line 174: -d: command not found
Extracting runtests (with variable substitutions)
Extracting utils/Makefile (with variable substitutions)
Extracting x2p/cflags (with variable substitutions)
Extracting x2p/Makefile (with variable substitutions)
Run depend now? [y]
./Configure: line 23924: depend: command not found
./Configure: line 23937: -f: command not found
./Configure: line 23947: -f: command not found
./Configure: line 23953: -f: command not found
./Configure: line 23954: -rf: command not found
I asked on the perl list, and they are confounded.
FWIW,,, zypper ve, shows all dependencies are verified -- that my
system is 'coherent'...
So won't this build? (Have had problems rebuilding samba as well, so
I don't think it is just perl).
Building 5.14.2 --- fails in a different but consistent way -- one of the
files processed when building a ".xs" file from a .c file puts a bogus
"#line file" line in that is missing the line number....
Ideas? Time to get a new distro?....(that would suck!)....
--
To unsubscribe, e-mail: opensuse+unsubscribe@opensuse.org
To contact the owner, e-mail: opensuse+owner@opensuse.org