Unable to compile anything from ports

Mel fbsd.questions at rachie.is-a-geek.net
Sat Feb 23 19:41:52 UTC 2008

On Saturday 23 February 2008 20:11:18 Jasvinder S. Bahra wrote:
> > It has a Via CPU?
> > Comment that option and try again.
> Mel,
> It does indeed have a Via cpu.  The box is running on a "VIA EPIA EK
> 8000EG" motherboard (which has a CPU integrated into it). If I run "cat
> /var/log/dmesg.today | grep CPU", I get...
> CPU: VIA C3 Nehemiah+RNG+AES (800.03-MHz 686-class CPU)
> Regardless, I commented out all three settings in /etc/make.conf (CPUTYPE,
> CFLAGS and COPTFLAGS), and tried the 'make install clean' routine again.
> Unfortunately, Portupgrade, Aide and ISC-DHCP3-Server still fail, though at
> a different point...
> ===== Portupgrade ======================================
> config.status: creating Makefile
> ===>  Building for ruby-,1
> cc -O2 -fno-strict-aliasing -pipe    -fPIC  -DRUBY_EXPORT -I. -I. -c
> array.c array.c: In function `rb_ary_modify':
> array.c:72: internal compiler error: Illegal instruction: 4
> Please submit a full bug report,
> with preprocessed source if appropriate.
> See <URL:http://gcc.gnu.org/bugs.html> for instructions.
> *** Error code 1

This clearly points at a compiler bug, with the VIA cpu, but since 
world/kernel build cleanly and anything else bugs out quite early, I would 
suspect an optimization bug.
Could you set the following in /etc/make.conf:
CFLAGS=-pipe -O0 # capital O, number zero

As a shortcut, you could go to the ruby workdir:
cd `make -f /usr/ports/lang/ruby18/Makefile -V WRKSRC`

then type:
cc -pipe -O0 -fPIC -DRUBY_EXPORT -I. -c array.c

Then again, it could be the compiler you built yourself is broken. Easy to 
test if you can rebuild world again now.

More information about the freebsd-questions mailing list