Stop in /usr/ports/lang/gcc43

b. f. bf1783 at googlemail.com
Sun Jun 14 05:17:14 UTC 2009


>I am trying to upgrade Ruby, and build Firefox 3.0.11, and they both
>want to build gcc43 because of gfortran.  Really?  Firefox needs
>gfortran to build?  I bet not.

I bet not, too. I took a cursory look through my ports tree, and the
recent changes, and I can't see how such a dependency was introduced.
I think something is wrong with your system.  Of course, if you were
using www/firefox3-devel on FreeBSD 6.x, that's another matter -- there,
you could get the dependency chain:

audio/pulseaudio --> audio/libsamplerate --> math/fftw3 ,

the last of which had a new Fortran dependency introduced recently.
But ruby?  I can't think of how this happened.  I don't see any recent change
to firefox3 or nspr that could have led to this.


>Anyway, when they try and build gcc43 (of May 31st) on my system, I
>get into an infinite loop by the pkg system saying that gcc43 requires
>gfortran to build, that gfortran is not present... the script finally
>dies.

>This happens even if I simply do this:

	cd /usr/ports/lang/gcc43
	make

>It dies there too.  So now I cannot upgrade firefox, noway, nohow.

Some care is taken to avoid introducing circular dependencies in Ports, so this
shouldn't happen.  It sounds to me as if you have mistakenly introduced a
USE_FORTRAN=yes into your build environment somehow.

What does:    "env | grep FORTRAN"   and "grep -e 'FORTRAN' /etc/make.conf"
give you?  How about "make -C /usr/ports/lang/gcc43 -V USE_FORTRAN" ?
Normally, they should all be empty.




>Interestingly enough I have gcc44 (with gfortran44!) on the system but
>these dependencies do not consider that a substitute.

If USE_FORTRAN=yes, the Ports build infrastructure will only try
to find gfortran43. See /usr/ports/Mk/bsd.gcc.mk


>I have cvsup'd the ports trees, done portsdb -uF, pkgdb -F, and
>portupgrade -ar a billion times.  It does not help.  Everything was
>fine yesterday, Jun 12th for me.  The change came in with Firefox
>3.0.11 and some /usr/ports/devel/nspr package that Firefox needs.

>Something is messed up in the dependencies.

Indeed.  If you hadn't reported the problem with a simple 'make', but only
when using portupgrade, I would have suspected a corrupt pkgdb, in which
case I would have recommended rebuilding it with pkgdb -L.  But something
else seems to be wrong here.  Maybe the information in /var/db/pkg is
bad? You might try removing your ports tree, and then using a completely fresh
tree obtained from a tarball or from portsnap, with a new INDEX.  If this
doesn't work, you could try removing and then rebuilding all of your ports.
But check to see that you don't have a stray USE_FORTRAN in your
environment, first.
And when you do builds, run "make clean" or "portsclean -C" first, so
that you're
not restarting a stale build.

b.


More information about the freebsd-ports mailing list