Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 19686 - compilation of ocalm-3.06 failed
Summary: compilation of ocalm-3.06 failed
Status: RESOLVED DUPLICATE of bug 17051
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: New packages (show other bugs)
Hardware: x86 Linux
: High normal (vote)
Assignee: George Shapovalov (RETIRED)
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2003-04-20 14:45 UTC by Veiko Kukk
Modified: 2005-07-17 13:06 UTC (History)
0 users

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Veiko Kukk 2003-04-20 14:45:44 UTC
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"
Comment 1 George Shapovalov (RETIRED) gentoo-dev 2003-04-24 01:07:28 UTC
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
Comment 2 Veiko Kukk 2003-04-24 10:33:00 UTC
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.
Comment 3 George Shapovalov (RETIRED) gentoo-dev 2003-05-02 04:37:35 UTC
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
Comment 4 Veiko Kukk 2003-05-21 08:53:47 UTC
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"
Comment 5 SpanKY gentoo-dev 2003-08-22 12:15:57 UTC

*** This bug has been marked as a duplicate of 17051 ***