Chapter 5.8 tcl error - multiple definition of 'fixstrtod'

Aaron Miller armantic101 at
Sun Jun 18 14:42:38 PDT 2006

I don't think this went though previously since I had not yet
confirmed my account. Sorry about that.

I think I have finally figured out the problem. Curious why I got LFS
was working, but not HLFS, I went though their build instructions real
quck to see what was different. I noticed that in that book there was
a link created cc-->gcc. Now I also noticed that there is no "gcc"
binary in my HLFS tools, but there is a "i686-tools-linux-gnu-gcc". Is
that what the "env CC=${target}-gcc" is for? Is it creating a
temporary link to my gcc  binary? If this is the case, I think there
might be a typo (I have been copping and pasting the commands).
Shouldn't CC=cc? I really have no idea, I just gave it a shot and it
seemed to work with this change. I am going to go back to the tcl step
and rebuild everything with this correction and see if it works out.

Thanks for your time!

PS: sorry for all the inbox clutter.

On 6/18/06, Aaron Miller <armantic101 at> wrote:
> Well it seems that I have run into similar problems for all three of
> test suite support applications. They were all complaining about being
> cross compiled in one way or another. None of them seem to like the
> "env CC=${target}-gcc" placed at the beginning of the ./configure
> line. Sorry for the newbish question, but could someone explain what
> this is for exactly? I was able to compile all three okay using the
> target I set up in the previous sections (i686-tools-linux-gnu) by
> using --target=${target}. As I have mentioned before, I am pretty new
> to Linux so I don't know if I'm going about this right. What will be
> the effect if I just drop off "env CC=${target}-gcc" for the rest of
> Chap 5? What exactly am I telling configure to do when I specify my
> own target? Can anyone recommend any reading about this target stuff
> that would make seance to a newbie?
> Thanks for the help!
> ...aaron
> On 6/18/06, Aaron Miller <armantic101 at> wrote:
> > Hello,
> >
> > First off, I had asked how to solve this error on the lfs mailing list
> > not realizing that there was a separate one for hlfs. Sorry if I
> > inconvenienced anyone.
> >
> > I think I have found a solution, but I am still pretty new to Linux so
> > I don't know if I did this right or not. I wanted to make sure I
> > didn't so something that will give me problems down the road. So far I
> > have done everything straight by the book. However, when I got to
> > compiling tcl in chapter 5.8 of  Hardened Linux From Scratch - Version
> > SVN-20060510 (GLibc), I got an error complaining about multiple
> > definitions of `fixstrtod'. I found the following solution written by
> > Eric Hassold:
> >
> > ----------------------------------------
> > Tcl configure script makes some pessimistic assumptions when
> > cross-compiling (when AC_TRY_RUN can't run). One of them is guessing
> > libc has no strtod when small test program can't be run. Some AC_TRY_RUN
> > should actually be replaced by AC_TRY_LINK to provide better estimate.
> >
> > Anyway, as a work-around, you may force configure detection, defining
> >    export ac_cv_func_strtod=yes
> > before running ./configure. You may also have to force
> >    export tcl_cv_strtod_buggy=1
> > so that Tcl will define its own fixstrtod() symbol, which will call
> > uclibc's strtod(). Works fine in our nightly built process, compiling
> > Tcl for arm-linux/uclibc.
> > ----------------------------------------
> >
> > TCL compiles fine after this but I wanted to make sure that a) this
> > error was not a sign that I did something wrong earlier on, and b)
> > Using this work around will not cause any other problems when I get to
> > the later chapters.
> >
> > Thanks for your time!
> > ...aaron
> >

More information about the hlfs-dev mailing list