sed -n -e "s/CAMLprim value \([a-z0-9_][a-z0-9_]*\).*/\1/p" \ alloc.c array.c compare.c extern.c floats.c gc_ctrl.c hash.c intern.c interp.c ints.c io.c lexing.c md5.c meta.c obj.c parsing.c signals.c str.c sys.c terminfo.c callback.c weak.c finalise.c stacks.c dynlink.c > primitives (echo '#include "mlvalues.h"'; \ echo '#include "prims.h"'; \ sed -e 's/.*/extern value &();/' primitives; \ echo 'c_primitive builtin_cprim[] = {'; \ sed -e 's/.*/ &,/' primitives; \ echo ' 0 };'; \ echo 'char * names_of_builtin_cprim[] = {'; \ sed -e 's/.*/ "&",/' primitives; \ echo ' 0 };') > prims.c gcc -O -fno-defer-pop -Wall -Wno-unused -D_FILE_OFFSET_BITS=64 -D_REENTRANT -c -o prims.o prims.c gcc -fno-defer-pop -Wall -Wno-unused -D_FILE_OFFSET_BITS=64 -D_REENTRANT -Wl,-E -o ocamlrun \ prims.o libcamlrun.a -lm -ldl -lcurses -lpthread prims.o(.data+0x0): undefined reference to `alloc_d' prims.o(.data+0x4): undefined reference to `arra' prims.o(.data+0x8): undefined reference to `arra' prims.o(.data+0xc): undefined reference to `arra' prims.o(.data+0x10): undefined reference to `arra' prims.o(.data+0x14): undefined reference to `arra' prims.o(.data+0x18): more undefined references to `arra' follow prims.o(.data+0x30): undefined reference to `make_' prims.o(.data+0x34): undefined reference to `make_arra' prims.o(.data+0x3c): undefined reference to `eq' prims.o(.data+0x40): undefined reference to `no' prims.o(.data+0x44): undefined reference to `less' prims.o(.data+0x48): undefined reference to `lesseq' prims.o(.data+0x4c): undefined reference to `grea' prims.o(.data+0x50): undefined reference to `grea' prims.o(.data+0x54): undefined reference to `o' prims.o(.data+0x58): undefined reference to `o' prims.o(.data+0x5c): undefined reference to `o' prims.o(.data+0x60): undefined reference to `forma' prims.o(.data+0x64): undefined reference to `floa' prims.o(.data+0x68): undefined reference to `in' prims.o(.data+0x6c): undefined reference to `floa' prims.o(.data+0x70): undefined reference to `neg_floa' prims.o(.data+0x74): undefined reference to `abs_floa' prims.o(.data+0x78): undefined reference to `add_floa' prims.o(.data+0x7c): undefined reference to `s' prims.o(.data+0x80): undefined reference to `m' prims.o(.data+0x84): undefined reference to `di' prims.o(.data+0x88): undefined reference to `e' prims.o(.data+0x8c): undefined reference to `floor_floa' prims.o(.data+0x90): undefined reference to `fmod_floa' prims.o(.data+0x94): undefined reference to `fre' prims.o(.data+0x98): undefined reference to `lde' prims.o(.data+0x9c): undefined reference to `log_floa' prims.o(.data+0xa0): undefined reference to `log10_floa' prims.o(.data+0xa4): undefined reference to `modf_floa' prims.o(.data+0xa8): undefined reference to `sqr' prims.o(.data+0xac): undefined reference to `po' prims.o(.data+0xb0): undefined reference to `sin_floa' prims.o(.data+0xb4): undefined reference to `sinh_floa' prims.o(.data+0xb8): undefined reference to `cos_floa' prims.o(.data+0xbc): undefined reference to `cosh_floa' prims.o(.data+0xc0): undefined reference to `asin_floa' prims.o(.data+0xc4): undefined reference to `acos_floa' prims.o(.data+0xc8): undefined reference to `a' prims.o(.data+0xcc): undefined reference to `a' prims.o(.data+0xd0): undefined reference to `ceil_floa' prims.o(.data+0xd4): undefined reference to `eq_floa' prims.o(.data+0xd8): undefined reference to `neq_floa' prims.o(.data+0xdc): undefined reference to `le_floa' prims.o(.data+0xe0): undefined reference to `l' prims.o(.data+0xe4): undefined reference to `ge_floa' prims.o(.data+0xe8): undefined reference to `g' prims.o(.data+0xec): undefined reference to `floa' prims.o(.data+0xf0): undefined reference to `classif' prims.o(.data+0xf4): undefined reference to `gc_s' prims.o(.data+0xf8): undefined reference to `gc_co' prims.o(.data+0xfc): undefined reference to `gc_ge' prims.o(.data+0x100): undefined reference to `gc_se' prims.o(.data+0x10c): undefined reference to `gc_f' prims.o(.data+0x114): undefined reference to `gc_compac' prims.o(.data+0x118): undefined reference to `hash_' prims.o(.data+0x11c): undefined reference to `inp' prims.o(.data+0x120): undefined reference to `inp' prims.o(.data+0x124): undefined reference to `marshal_da' prims.o(.data+0x128): undefined reference to `in' prims.o(.data+0x12c): undefined reference to `forma' prims.o(.data+0x130): undefined reference to `in' prims.o(.data+0x134): undefined reference to `in' prims.o(.data+0x138): undefined reference to `in' prims.o(.data+0x13c): undefined reference to `in' prims.o(.data+0x140): undefined reference to `in' prims.o(.data+0x144): more undefined references to `in' follow prims.o(.data+0x1d8): undefined reference to `na' prims.o(.data+0x1dc): undefined reference to `na' prims.o(.data+0x1e0): undefined reference to `na' prims.o(.data+0x1e4): undefined reference to `na' prims.o(.data+0x1e8): undefined reference to `na' prims.o(.data+0x1ec): more undefined references to `na' follow prims.o(.data+0x228): undefined reference to `caml_open_descrip' prims.o(.data+0x22c): undefined reference to `caml_open_descrip' prims.o(.data+0x230): undefined reference to `caml_o' prims.o(.data+0x234): undefined reference to `channel_descrip' prims.o(.data+0x244): undefined reference to `caml_se' prims.o(.data+0x248): undefined reference to `caml_fl' prims.o(.data+0x24c): undefined reference to `caml_fl' prims.o(.data+0x250): undefined reference to `caml_o' prims.o(.data+0x254): undefined reference to `caml_o' prims.o(.data+0x258): undefined reference to `caml_o' prims.o(.data+0x25c): undefined reference to `caml_o' prims.o(.data+0x260): undefined reference to `caml_seek_o' prims.o(.data+0x264): undefined reference to `caml_seek_o' prims.o(.data+0x268): undefined reference to `caml_pos_o' prims.o(.data+0x26c): undefined reference to `caml_pos_o' prims.o(.data+0x270): undefined reference to `caml_inp' prims.o(.data+0x274): undefined reference to `caml_inp' prims.o(.data+0x278): undefined reference to `caml_inp' prims.o(.data+0x28c): undefined reference to `caml_inp' prims.o(.data+0x290): undefined reference to `le' prims.o(.data+0x294): undefined reference to `md5_s' prims.o(.data+0x29c): undefined reference to `ge' prims.o(.data+0x2a0): undefined reference to `reif' prims.o(.data+0x2a8): undefined reference to `ge' prims.o(.data+0x2ac): undefined reference to `in' prims.o(.data+0x2b0): undefined reference to `s' prims.o(.data+0x2b4): undefined reference to `s' prims.o(.data+0x2b8): undefined reference to `s' prims.o(.data+0x2c0): undefined reference to `obj_' prims.o(.data+0x2c4): undefined reference to `obj_se' prims.o(.data+0x2cc): undefined reference to `obj_d' prims.o(.data+0x2d0): undefined reference to `obj_' prims.o(.data+0x2d8): undefined reference to `ins' prims.o(.data+0x2dc): undefined reference to `ml_s' prims.o(.data+0x2e0): undefined reference to `crea' prims.o(.data+0x2e4): undefined reference to `s' prims.o(.data+0x2e8): undefined reference to `s' prims.o(.data+0x2ec): undefined reference to `s' prims.o(.data+0x2f0): undefined reference to `s' prims.o(.data+0x2f4): undefined reference to `bli' prims.o(.data+0x2f8): undefined reference to `fill_s' prims.o(.data+0x2fc): undefined reference to `is_prin' prims.o(.data+0x300): undefined reference to `bi' prims.o(.data+0x304): undefined reference to `s' prims.o(.data+0x308): undefined reference to `s' prims.o(.data+0x30c): undefined reference to `s' prims.o(.data+0x310): undefined reference to `s' prims.o(.data+0x314): undefined reference to `s' prims.o(.data+0x318): more undefined references to `s' follow prims.o(.data+0x33c): undefined reference to `regis' prims.o(.data+0x340): undefined reference to `final_regis' prims.o(.data+0x344): undefined reference to `ens' prims.o(.data+0x348): undefined reference to `d' prims.o(.data+0x34c): undefined reference to `d' prims.o(.data+0x350): undefined reference to `d' prims.o(.data+0x354): undefined reference to `d' prims.o(.data+0x358): undefined reference to `d' collect2: ld returned 1 exit status make[1]: *** [ocamlrun] Error 1 make[1]: Leaving directory `/var/tmp/portage/ocaml-3.06/work/ocaml-3.06/byterun' make: *** [coldstart] Error 2 !!! ERROR: dev-lang/ocaml-3.06 failed. !!! Function src_compile, Line 34, Exitcode 2 !!! (no error message) Reproducible: Always Steps to Reproduce: 1.emerge ocalm Actual Results: failed to compile Expected Results: should compile Portage 2.0.47-r10 (default-x86-1.4, gcc-3.2.2, glibc-2.3.2-r1) ================================================================= System uname: 2.5.67 i686 AMD Duron(tm) processor GENTOO_MIRRORS="ftp://ftp.gentoo.linux.no/pub/gentoo http://www.ibiblio.org/pub/Linux/distributions/gentoo" CONFIG_PROTECT="/etc /var/qmail/control /usr/kde/2/share/config /usr/kde/3/share/config /usr/X11R6/lib/X11/xkb /usr/kde/3.1/share/config /usr/share/config" CONFIG_PROTECT_MASK="/etc/gconf /etc/env.d" PORTDIR="/usr/portage" DISTDIR="/usr/portage/distfiles" PKGDIR="/usr/portage/packages" PORTAGE_TMPDIR="/var/tmp" PORTDIR_OVERLAY="" USE="x86 oss apm avi crypt cups encode gif jpeg kde libg++ mikmod mpeg nls pdflib png quicktime truetype xml2 xmms xv zlib gtkhtml gdbm berkdb slang readline arts bonobo guile X sdl gpm tcpd pam libwww ssl python imlib oggvorbis gtk qt motif opengl -svga -spell 3dnow apache2 cdr cjk dvd esd flash gnome gtk2 imap ipv6 java lcms ldap maildir mbox mmx mozilla mysql ncurses perl postgres ruby samba sasl sse tcltk tetex tiff" COMPILER="gcc3" CHOST="i686-pc-linux-gnu" CFLAGS="-march=athlon-xp -O2 -pipe -fomit-frame-pointer -frerun-cse-after-loop -frerun-loop-opt -fexpensive-optimizations -fPIC" CXXFLAGS="-march=athlon-xp -O2 -pipe -fomit-frame-pointer -frerun-cse-after-loop -frerun-loop-opt -fexpensive-optimizations -fPIC -Wno-deprecated" ACCEPT_KEYWORDS="x86 ~x86" MAKEOPTS="-j2" AUTOCLEAN="yes" SYNC="rsync://rsync.gentoo.org/gentoo-portage" FEATURES="sandbox ccache"
Hi Veiko. Thanks for a report. However I am not able to reproduce your problem. I tried rebuilding the package with your C[XX]FLAGS, but this worked ok as well (as the original testing and apparently testing by users, as it is in the stable profile already). Few suggestions you can try: 1. error message makes me suspect the -pipe option, try removing it. 2. -frerun-cse-after-loop -frerun-loop-opt loop unrolling options often can be cause of a problem, even though these two are relatively "mild". Try removing these two options. Actually for that matter try rebuilding it with only "-march -O2" or, if this doesn't help, just the -O or even -O0. 3. I see you use ccache. Any chance you tried to build ocaml twice and interrupted the first build? Or something else happened that could make ccache malfunction? Anyway you can try clearing the ccache cache and remerging the package (and combining this with reduced C[XX]FLAGS). Also: I see you are using experimental kernel. Though this is less likely, but still may be a cause of failure. Also, I see you have the duron processor. Is this athlon-xp compatible model? (see, I am already in the area of wild guesses). Please let me know how it goes.. George
1) about cflags - tried even with -march=i686 only, no luck. 2)i dont use ccache, its commented out in make.conf, i have never ever emrged ccache and i have no idea, why emerge info shows it. 3) it failed on 2.4.20 too. 4) yes, duron 1,1G is the same as athlon-xp, the only difference is smaller L2 cache. as I need ocalm for mldonkey its not big problem as i can download statically compiled mldonkey, but it would be nice to get ocalm compiling.
Hi Veiko. Well, I am not really sure what to say. I have no trouble emerging ocaml here :/. There is a known problem related to tk-8.4, however from your error message it doesn't look like it's related (and anyway the problem arises if you try to emerge lablgl afterwards). Anyway I just updated the ebuild to incorporate the patch, you might want to try new revision.. George
now i get this: make[2]: Entering directory `/var/tmp/portage/ocaml-3.06-r1/work/ocaml-3.06/otherlibs/labltk/labltk' cd ..; ../../boot/ocamlrun compiler/tkcompiler -outdir labltk (echo 'open StdLabels'; \ echo 'open Widget'; \ echo 'open Protocol'; \ echo 'open Support'; \ echo 'open Textvariable'; \ cat ../builtin/report.ml; \ cat ../builtin/builtin_*.ml; \ cat _tkgen.ml; \ echo ; \ echo ; \ echo 'module Tkintf = struct'; \ cat ../builtin/builtini_*.ml; \ cat _tkigen.ml; \ echo 'end (* module Tkintf *)'; \ echo ; \ echo ; \ echo 'open Tkintf' ;\ echo ; \ echo ; \ cat ../builtin/builtinf_*.ml; \ cat _tkfgen.ml; \ echo ; \ ) > _tk.ml ../../../boot/ocamlrun ../compiler/pp < _tk.ml > tk.ml rm -f _tk.ml ../../../boot/ocamlrun ../../../tools/ocamldep -I ../support [a-z]*.mli [a-z]*.ml > .depend make[2]: Leaving directory `/var/tmp/portage/ocaml-3.06-r1/work/ocaml-3.06/otherlibs/labltk/labltk' cd labltk; make make[2]: Entering directory `/var/tmp/portage/ocaml-3.06-r1/work/ocaml-3.06/otherlibs/labltk/labltk' ../../../ocamlcomp.sh -c -warn-error A -I ../support tk.ml ../../../ocamlcomp.sh -c -warn-error A -I ../support place.mli ../../../ocamlcomp.sh -c -warn-error A -I ../support place.ml ../../../ocamlcomp.sh -c -warn-error A -I ../support wm.ml I/O error: wm.cmi: No such file or directory make[2]: *** [wm.cmo] Error 2 make[2]: Leaving directory `/var/tmp/portage/ocaml-3.06-r1/work/ocaml-3.06/otherlibs/labltk/labltk' make[1]: *** [all] Error 2 make[1]: Leaving directory `/var/tmp/portage/ocaml-3.06-r1/work/ocaml-3.06/otherlibs/labltk' make: *** [otherlibraries] Error 2 !!! ERROR: dev-lang/ocaml-3.06-r1 failed. !!! Function src_compile, Line 36, Exitcode 2 !!! (no error message) Portage 2.0.48 (default-x86-1.4, gcc-3.3, glibc-2.3.2-r1) ================================================================= System uname: 2.5.69 i686 AMD Duron(tm) processor GENTOO_MIRRORS="ftp://ftp.gentoo.linux.no/pub/gentoo http://www.ibiblio.org/pub/Linux/distributions/gentoo" CONFIG_PROTECT="/etc /var/qmail/control /usr/kde/2/share/config /usr/kde/3/share/config /usr/X11R6/lib/X11/xkb /usr/kde/3.1/share/config /usr/share/config" CONFIG_PROTECT_MASK="/etc/gconf /etc/env.d" PORTDIR="/usr/portage" DISTDIR="/usr/portage/distfiles" PKGDIR="/usr/portage/packages" PORTAGE_TMPDIR="/var/tmp" PORTDIR_OVERLAY="" USE="x86 oss apm avi crypt cups encode gif jpeg kde libg++ mikmod mpeg nls pdflib png quicktime truetype xml2 xmms xv zlib gtkhtml gdbm berkdb slang readline arts bonobo guile X sdl gpm tcpd pam libwww ssl python imlib oggvorbis gnome gtk qt motif opengl -svga -spell -ldap 3dnow apache2 cdr cjk dvd esd flash gphoto2 imap java lcms maildir mbox mmx mozilla mysql ncurses perl postgres ruby samba sasl sse tcltk tetex tiff usb" COMPILER="gcc3" CHOST="i686-pc-linux-gnu" CFLAGS="-march=athlon-xp -O3 -pipe -mfpmath=sse,387 -mmmx -msse -m3dnow" CXXFLAGS="-march=athlon-xp -O3 -pipe -mfpmath=sse,387 -mmmx -msse -m3dnow -Wno-deprecated" ACCEPT_KEYWORDS="x86 ~x86" MAKEOPTS="-j2" AUTOCLEAN="yes" SYNC="rsync://rsync.gentoo.org/gentoo-portage" FEATURES="sandbox ccache"
*** This bug has been marked as a duplicate of 17051 ***