Skip Menu |

This queue is for tickets about the Tk CPAN distribution.

Report information
The Basics
Id: 33190
Status: open
Priority: 0/
Queue: Tk

People
Owner: Nobody in particular
Requestors: persicom [...] cpan.org
Cc:
AdminCc:

Bug Information
Severity: Important
Broken in: 804.028
Fixed in: (no value)



Got all the way down to the point where the build tries to make libpng and failed with cd libpng && make libpng.a "CC=/opt/SUNWspro/bin/cc -KPIC" RANLIB=":" /opt/SUNWspro/bin/cc -KPIC -I/usr/local/include -Wall -O -c png.c cc: illegal option -Wall Now, I searched for -Wall option [23621] $ find . -type f | xargs grep -- -Wall and among other places, found it here: ./PNG/libpng/scripts/makefile.solaris:CFLAGS=-I$(ZLIBINC) -Wall -O \ where it's pretty much hardcoded. Now, the CC gets overriden, but CLFAGS does not. Is there an easy way to fix this? For now I'll just modify the makefile by hand.
Subject: Re: [rt.cpan.org #33190] Tk build Failure p 5.10, Sun
Date: 12 Feb 2008 22:29:47 +0100
To: bug-Tk [...] rt.cpan.org
From: Slaven Rezic <slaven [...] rezic.de>
"Matthew O. Persico via RT" <bug-Tk@rt.cpan.org> writes: Show quoted text
> Queue: Tk > Ticket <URL: http://rt.cpan.org/Ticket/Display.html?id=33190 > > > Got all the way down to the point where the build tries to make libpng > and failed with > > cd libpng && make libpng.a "CC=/opt/SUNWspro/bin/cc -KPIC" RANLIB=":" > /opt/SUNWspro/bin/cc -KPIC -I/usr/local/include -Wall -O -c png.c > cc: illegal option -Wall > > Now, I searched for -Wall option > > [23621] $ find . -type f | xargs grep -- -Wall > > and among other places, found it here: > > ./PNG/libpng/scripts/makefile.solaris:CFLAGS=-I$(ZLIBINC) -Wall -O \ > > where it's pretty much hardcoded. Now, the CC gets overriden, but CLFAGS > does not. Is there an easy way to fix this? For now I'll just modify the > makefile by hand. >
I wonder whether it's better to run libpng's configure. Can you try to change Makefile.PL in the PNG directory: there's a line if ($^O eq 'darwin' || $Config{'archname'} =~ m{^amd64-freebsd($|-.*)}) near the end of the file. Just replace the condition by if (1) and re-run the build. If this works then I need to probably put a $^O eq 'solaris' into the condition, or, maybe better, the some condition which detects Sun's C compiler. Is it possible through a variable in Config.pm? Regards, Slaven -- Slaven Rezic - slaven <at> rezic <dot> de tkrevdiff - graphical display of diffs between revisions (RCS, CVS or SVN) http://ptktools.sourceforge.net/#tkrevdiff
I started over with a fresh build. After un-tarring, instead of modifying PNG/libpng/Makefile.PL, I modified PNG/Makefile.libpng.maybe in the manner you suggested. It ran the ./configure as you intended. However, my problem is that I want to use Sun's compiler, but gcc is installed in /usr/local/bin, which I need on my PATH to complete my automted install. so that PNG is being built with gcc while the rest of Perl is built with Sun's compiler. Curious, however, how libjpeg does the right thing (see below); it check for gcc and finds /opt/SUNWspro/bin/cc. Maybe libpng's configure needs to mirror that. Building jpeg/libjpeg.a checking for gcc... /opt/SUNWspro/bin/cc checking whether the C compiler (/opt/SUNWspro/bin/cc -D_REENTRANT - I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 - KPIC -D_REENTRANT -I/usr/local/include -D_LARGEFILE_SOURCE - D_FILE_OFFSET_BITS=64 -L/usr/lib -L/usr/ccs/lib -L/opt/SUNWspro/prod/li b -L/usr/local/lib ) works... yes checking whether the C compiler (/opt/SUNWspro/bin/cc -D_REENTRANT - I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 - KPIC -D_REENTRANT -I/usr/local/include -D_LARGEFILE_SOURCE - D_FILE_OFFSET_BITS=64 -L/usr/lib -L/usr/ccs/lib -L/opt/SUNWspro/prod/li b -L/usr/local/lib ) is a cross-compiler... no Next, I went and ran the configure myself.
On Tue Feb 12 23:12:31 2008, PERSICOM wrote: Show quoted text
> I started over with a fresh build. After un-tarring, instead of > modifying PNG/libpng/Makefile.PL, I modified
PNG/Makefile.libpng.maybe Show quoted text
> in the manner you suggested. > > It ran the ./configure as you intended. However, my problem is that I > want to use Sun's compiler, but gcc is installed in /usr/local/bin, > which I need on my PATH to complete my automted install. so that PNG
is Show quoted text
> being built with gcc while the rest of Perl is built with Sun's > compiler. > > Curious, however, how libjpeg does the right thing (see below); it > check for gcc and finds /opt/SUNWspro/bin/cc. Maybe libpng's
configure Show quoted text
> needs to mirror that. > > Building jpeg/libjpeg.a > checking for gcc... /opt/SUNWspro/bin/cc > checking whether the C compiler (/opt/SUNWspro/bin/cc -D_REENTRANT - > I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 - > KPIC -D_REENTRANT -I/usr/local/include -D_LARGEFILE_SOURCE - > D_FILE_OFFSET_BITS=64 -L/usr/lib -L/usr/ccs/lib -
L/opt/SUNWspro/prod/li Show quoted text
> b -L/usr/local/lib ) works... yes > checking whether the C compiler (/opt/SUNWspro/bin/cc -D_REENTRANT - > I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 - > KPIC -D_REENTRANT -I/usr/local/include -D_LARGEFILE_SOURCE - > D_FILE_OFFSET_BITS=64 -L/usr/lib -L/usr/ccs/lib -
L/opt/SUNWspro/prod/li Show quoted text
> b -L/usr/local/lib ) is a cross-compiler... no > > Next, I went and ran the configure myself.
And it still found gcc not the Sun compiler. Anything else you want me to try?
On Tue Feb 12 23:13:30 2008, PERSICOM wrote: Show quoted text
> On Tue Feb 12 23:12:31 2008, PERSICOM wrote:
> > I started over with a fresh build. After un-tarring, instead of > > modifying PNG/libpng/Makefile.PL, I modified
> PNG/Makefile.libpng.maybe
> > in the manner you suggested. > > > > It ran the ./configure as you intended. However, my problem is that I > > want to use Sun's compiler, but gcc is installed in /usr/local/bin, > > which I need on my PATH to complete my automted install. so that PNG
> is
> > being built with gcc while the rest of Perl is built with Sun's > > compiler. > > > > Curious, however, how libjpeg does the right thing (see below); it > > check for gcc and finds /opt/SUNWspro/bin/cc. Maybe libpng's
> configure
> > needs to mirror that. > > > > Building jpeg/libjpeg.a > > checking for gcc... /opt/SUNWspro/bin/cc > > checking whether the C compiler (/opt/SUNWspro/bin/cc -D_REENTRANT - > > I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 - > > KPIC -D_REENTRANT -I/usr/local/include -D_LARGEFILE_SOURCE - > > D_FILE_OFFSET_BITS=64 -L/usr/lib -L/usr/ccs/lib -
> L/opt/SUNWspro/prod/li
> > b -L/usr/local/lib ) works... yes > > checking whether the C compiler (/opt/SUNWspro/bin/cc -D_REENTRANT - > > I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 - > > KPIC -D_REENTRANT -I/usr/local/include -D_LARGEFILE_SOURCE - > > D_FILE_OFFSET_BITS=64 -L/usr/lib -L/usr/ccs/lib -
> L/opt/SUNWspro/prod/li
> > b -L/usr/local/lib ) is a cross-compiler... no > > > > Next, I went and ran the configure myself.
> > And it still found gcc not the Sun compiler. > Anything else you want me to try?
What if you run configure with CC set in the environment? env CC=/opt/SUNWspro/bin/cc ./configure
Subject: Re: [rt.cpan.org #33190] Tk build Failure p 5.10, Sun
Date: Fri, 12 Sep 2008 18:15:13 -0400
To: Slaven_Rezic via RT <bug-Tk [...] rt.cpan.org>, <persicom [...] cpan.org>
From: "Matthew O. Persico" <matthew.persico [...] verizon.net>
Will try. Will advise. Show quoted text
> <URL: http://rt.cpan.org/Ticket/Display.html?id=33190 > > > On Tue Feb 12 23:13:30 2008, PERSICOM wrote:
>> On Tue Feb 12 23:12:31 2008, PERSICOM wrote:
>>> I started over with a fresh build. After un-tarring, instead of >>> modifying PNG/libpng/Makefile.PL, I modified >>>
>> PNG/Makefile.libpng.maybe
>>> in the manner you suggested. >>> >>> It ran the ./configure as you intended. However, my problem is >>> that I want to use Sun's compiler, but gcc is installed in >>> /usr/local/bin, which I need on my PATH to complete my automted >>> install. so that PNG >>>
>> is
>>> being built with gcc while the rest of Perl is built with Sun's >>> compiler. >>> >>> Curious, however, how libjpeg does the right thing (see below); >>> it check for gcc and finds /opt/SUNWspro/bin/cc. Maybe libpng's >>>
>> configure
>>> needs to mirror that. >>> >>> Building jpeg/libjpeg.a >>> checking for gcc... /opt/SUNWspro/bin/cc >>> checking whether the C compiler (/opt/SUNWspro/bin/cc - >>> D_REENTRANT - I/usr/local/include -D_LARGEFILE_SOURCE - >>> D_FILE_OFFSET_BITS=64 - KPIC -D_REENTRANT -I/usr/local/include - >>> D_LARGEFILE_SOURCE - D_FILE_OFFSET_BITS=64 -L/usr/lib - >>> L/usr/ccs/lib - >>>
>> L/opt/SUNWspro/prod/li
>>> b -L/usr/local/lib ) works... yes >>> checking whether the C compiler (/opt/SUNWspro/bin/cc - >>> D_REENTRANT - I/usr/local/include -D_LARGEFILE_SOURCE - >>> D_FILE_OFFSET_BITS=64 - KPIC -D_REENTRANT -I/usr/local/include - >>> D_LARGEFILE_SOURCE - D_FILE_OFFSET_BITS=64 -L/usr/lib - >>> L/usr/ccs/lib - >>>
>> L/opt/SUNWspro/prod/li
>>> b -L/usr/local/lib ) is a cross-compiler... no >>> >>> Next, I went and ran the configure myself. >>>
>> And it still found gcc not the Sun compiler. >> Anything else you want me to try? >>
> What if you run configure with CC set in the environment? > > env CC=/opt/SUNWspro/bin/cc ./configure
-- Matthew O. Persico
On Fri Sep 12 18:16:06 2008, matthew.persico@verizon.net wrote: Show quoted text
> Will try. Will advise.
You can also try Perl/Tk from the svn repository: https://svn.perl.org/modules/Tk/trunk The version there has a changed Makefile.libpng.maybe. Now it always uses configure on sun4-solaris and it seems to work on at least one Solaris system. Another possibility is to install libpng separately (is there a solaris package?). If /usr/lib/libpng exists, then Perl/Tk will use this one. Regards, Slaven Show quoted text
>
> > <URL: http://rt.cpan.org/Ticket/Display.html?id=33190 > > > > > On Tue Feb 12 23:13:30 2008, PERSICOM wrote:
> >> On Tue Feb 12 23:12:31 2008, PERSICOM wrote:
> >>> I started over with a fresh build. After un-tarring, instead of > >>> modifying PNG/libpng/Makefile.PL, I modified > >>>
> >> PNG/Makefile.libpng.maybe
> >>> in the manner you suggested. > >>> > >>> It ran the ./configure as you intended. However, my problem is > >>> that I want to use Sun's compiler, but gcc is installed in > >>> /usr/local/bin, which I need on my PATH to complete my automted > >>> install. so that PNG > >>>
> >> is
> >>> being built with gcc while the rest of Perl is built with Sun's > >>> compiler. > >>> > >>> Curious, however, how libjpeg does the right thing (see below); > >>> it check for gcc and finds /opt/SUNWspro/bin/cc. Maybe libpng's > >>>
> >> configure
> >>> needs to mirror that. > >>> > >>> Building jpeg/libjpeg.a > >>> checking for gcc... /opt/SUNWspro/bin/cc > >>> checking whether the C compiler (/opt/SUNWspro/bin/cc - > >>> D_REENTRANT - I/usr/local/include -D_LARGEFILE_SOURCE - > >>> D_FILE_OFFSET_BITS=64 - KPIC -D_REENTRANT -I/usr/local/include - > >>> D_LARGEFILE_SOURCE - D_FILE_OFFSET_BITS=64 -L/usr/lib - > >>> L/usr/ccs/lib - > >>>
> >> L/opt/SUNWspro/prod/li
> >>> b -L/usr/local/lib ) works... yes > >>> checking whether the C compiler (/opt/SUNWspro/bin/cc - > >>> D_REENTRANT - I/usr/local/include -D_LARGEFILE_SOURCE - > >>> D_FILE_OFFSET_BITS=64 - KPIC -D_REENTRANT -I/usr/local/include - > >>> D_LARGEFILE_SOURCE - D_FILE_OFFSET_BITS=64 -L/usr/lib - > >>> L/usr/ccs/lib - > >>>
> >> L/opt/SUNWspro/prod/li
> >>> b -L/usr/local/lib ) is a cross-compiler... no > >>> > >>> Next, I went and ran the configure myself. > >>>
> >> And it still found gcc not the Sun compiler. > >> Anything else you want me to try? > >>
> > What if you run configure with CC set in the environment? > > > > env CC=/opt/SUNWspro/bin/cc ./configure
> -- > Matthew O. Persico >