This is the mail archive of the ecos-discuss@sources.redhat.com mailing list for the eCos project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

Re: Can I build ARM eCos and i386 eCos on the same machine?


>>>>> "David" == David Geng <deli.geng@ncl.ac.uk> writes:

    David> I have built ARM version of eCos successifuly on my
    David> machine. Moreover, when I try to build i386 version eCos,
    David> some error occur.

    David> The configureation finished normally. But the make of
    David> binutils and gcc produce following message. Should I also
    David> use snapshot of binutils and gcc?

If I understand the message correctly, this is actually about building
toolchains for both ARM and x86 rather than building eCos itself.

Looking at the first make.out fragment I see the following:

    > gcc -g -O2 -W -Wall -o objdump.exe objdump.o prdbg.o rddbg.o debug.o stabs.o
    > ieee.o rdcoff.o bucomm.o version.o filemode.o ../opcodes/.libs/libopcodes.a
    > ../bfd/.libs/libbfd.a ../libiberty/libiberty.a ./../intl/libintl.a
    > ../opcodes/.libs/libopcodes.a(disassemble.o): In function `disassembler':
    > /src/binutils/binutils-2.10/opcodes/disassemble.c:94: undefined reference to
    > `print_insn_little_arm'
    > /src/binutils/binutils-2.10/opcodes/disassemble.c:92: undefined reference to
    > `print_insn_big_arm'
    > ../opcodes/.libs/libopcodes.a(disassemble.o): In function
    > `disassembler_usage':
    > /src/binutils/binutils-2.10/opcodes/disassemble.c:273: undefined reference
    > to `print_arm_disassembler_options'

So assuming this is an attempt to build an x86 toolchain, there is
serious confusion because some bits of the previous ARM build have
managed to creep in. After that everything will get very confused.

It should be possible to use a single set of sources to build both ARM
and x86 toolchains from a single set of sources. However you need to
keep the build trees completely separate: create one directory for the
ARM build tree and run "configure/make/make install" in that three;
then create another directory for the x86 build tree, and run
configure etc. in that directory.

Personally I also always use completely separate install trees for
separate builds, i.e. I would use different --prefix arguments when
configuring for ARM and when configuring for x86. I believe that in
theory the install trees should be able to co-exist, but IMO keeping
separate install trees makes things easier to administer. The cost is
that you need more directories in your search PATH.

Bart Veer // eCos net maintainer

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]