NOTE: system is ~x86 after upgrading to portage-2.0.49_pre18, several ebuilds are failing with the same python errors while emerging: -------------- begin dump --------------------------- root@gator root # emerge vim Calculating dependencies ...done! >>> emerge (1 of 1) app-editors/vim-6.2-r2 to / Traceback (most recent call last): File "/usr/bin/emerge", line 2065, in ? mydepgraph.merge(mydepgraph.altlist()) File "/usr/bin/emerge", line 1289, in merge retval=portage.doebuild(y,"merge",myroot,edebug) File "/usr/lib/python2.2/site-packages/portage.py", line 1735, in doebuild if not fetch(fetchme, listonly, fetchonly): File "/usr/lib/python2.2/site-packages/portage.py", line 1160, in fetch shuffle(thirdpartymirrors[mirrorname]) File "/usr/lib/python2.2/random.py", line 373, in shuffle j = int(random() * (i+1)) OverflowError: float too large to convert --------------- end dump -------------------------- this happens for: vim, ati-drivers, tcp-wrappers, and possibly others. I may be wrong, but judging from the errors, the issue is somewhere within emerge code and can possible result in failure of other ebuilds.
I managed to work around the problem by going to: /usr/lib/python2.2/random.py, line 373 and changing: j = int(random() * (i+1)) to: j = int(_floor(random() * (i+1))) This prevents the overflow exception from happening and now emerge and all ebuilds are working fine. However, it's an ugly hack, and I can't tell whether it's a python library bug or is it something else... regards, -bart
You have -march=pentium4 in your cflags. It breaks floating point operations. Either add -mno-sse2 to your cflags, or set your arch at pentium3.
if you're using gcc-3.2.3, then review Bug 14069 ... basically, re-emerge glibc if you have those modf bugs ...
I do have -mno-sse2 on my CFLAGS ... I'm gonna re emerge glibc, thanks
The check in current portage versions should take care of this.