[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Re: [openrisc] or32 compile errors



Gili,

we moved to a new mainstream, or32-uclinux instead of old or32-rtems target.
For the new target we use ELF instead of COFF and also gcc-3.1 instead of
gcc-2.95.2. Since uClinux doesn't need newlib, we build uclibc instead. Now
to your problem. Reason why you get error message during configure is
because configure tries to build a simple test program as an executable. If
you compile and link it it manually, you will get an error message that
crt0.o is missing. You have two options:
1) You can build and install uclibc. Instructions are on openrisc web page
under or1k gnutoolchain. However there is a glitch at the moment which will
cause that after you install uclibc, you will have top provide __stdio_init
function. I think this can be simply a dummy function that actually don't do
anything. Since I'm not an expert, I will leave for experts to comment. At
leats one of the experts is on vacation until next week.
2) You can create your own crt0.o in install_path/or32-uclinux/lib (where
install_path could be /opt/or32-uclinux - note or32-uclinux needs to be
repeated twice !). Important is that you put _start function in your crt0.o.
You can try something like this:

void start() {}

or32-uclinux-gcc -c -o crt0.o crt0.c

I think _start is not used, but I'm not an expert. You can also put a call
to main in start. Not sure if it is important.

I tried to build or32-rtems, even thought ATS builds it, I had some problems
using it. Anyway you can give it a try. Ivan, do you know if or32-rtems can
be built OK? I tried both gcc 3.1 and gcc 2.95.2 and in one case I had an
issue with elf32-or32 format and in the other with binutils.  Can't remember
details right now.

regards,
Damjan

----- Original Message -----
From: "Marko Mlinar" <markom@opencores.org>
To: <openrisc@opencores.org>
Sent: Monday, August 05, 2002 11:18 AM
Subject: Re: Re: [openrisc] or32 compile errors


>
> What happens if you try to compile an simple example manually, e.g.
> or32-rtems-gcc basic.S -o basic
> and
> or32-rtems-gcc exit.c -o exit
> note that these executables won't work with or1ksim correctly, since they
are
> not linked properly.
>
> Marko
>
> On Sunday 04 August 2002 10:51, Gil Gamliel \(h\) wrote:
> > Damjan Hello,
> > hereunder my transcript , I think i have problems with my header files
as
> > you mentioned
> > but how to fix the problem?
> >
> > Regards Gili
> > ********************** log *******************
> >
> > Script started on Sun Aug  4 10:38:36 2002
> > ]0;root@localhost:/home/g/oc/or1k/b-testbench[root@localhost
b-testbench]#
> > ../or1ksim/testbench/configure --target=or32-rtems
> > creating cache ./config.cache
> > checking host system type... i686-pc-linux-gnu
> > checking for a BSD compatible install... /usr/bin/install -c
> > checking whether build environment is sane... yes
> > checking whether make sets ${MAKE}... yes
> > checking for working aclocal... found
> > checking for working autoconf... found
> > checking for working automake... found
> > checking for working autoheader... found
> > checking for working makeinfo... found
> > checking whether make sets ${MAKE}... (cached) yes
> > checking for a BSD compatible install... /usr/bin/install -c
> > checking build system type... i686-pc-linux-gnu
> > checking for or32-rtems-gcc... or32-rtems-gcc
> > checking for or32-rtems-ranlib... or32-rtems-ranlib
> > checking for or32-rtems-ld... or32-rtems-ld
> > checking for or32-rtems-sim... or32-rtems-sim
> > checking for gcc... (cached) or32-rtems-gcc
> > checking whether the C compiler (or32-rtems-gcc  ) works... no
> > configure: error: installation or configuration problem: C compiler
cannot
> > create executables.
> > ]0;root@localhost:/home/g/oc/or1k/b-testbench[root@localhost
b-testbench]#
> > exit
> > exit
> >
> > Script done on Sun Aug  4 10:39:20 2002
> >
> > ******************** End log *****************
> >
> >
> > -----Original Message-----
> > From: owner-openrisc@opencores.org
> > [mailto:owner-openrisc@opencores.org]On Behalf Of Damjan Lampret
> > Sent: Friday, August 02, 2002 4:36 PM
> > To: openrisc@opencores.org
> > Subject: Re: Re: [openrisc] or32 compile errors
> >
> >
> > BTW I'm just modifying ATS so some of the build logs might look a bit
weird
> > at the moment. Normal ATS run is in the middle of the night (CET) when
it
> > is expected that most of the daily cvs checkins are done.
> >
> > regards,
> > Damjan
> >
> > ----- Original Message -----
> > From: "Damjan Lampret" <lampret@opencores.org>
> > To: <openrisc@opencores.org>
> > Sent: Friday, August 02, 2002 4:28 PM
> > Subject: Re: Re: [openrisc] or32 compile errors
> >
> > > Hi Gili,
> > >
> > > it is very difficult for linux kernel itself to cause problems. More
> >
> > likely
> >
> > > is that your header files that come with your linux kernel/distibution
> >
> > cause
> >
> > > problems. I think kernel 2.4.18-3 is quite standard and well tested
and I
> > > *think* I have also configured/built or1ksim on systems with this
kernel,
> > > w/o any problems.
> > > Can you send transcript of what happens. I suggest you remove build
> > > directories (did you build in build directories, separate from source
> > > directories ?). Then create new build directory, start the following
> >
> > command
> >
> > > 'script log', do build procedure. When it fails, do 'exit' so that
script
> > > log is finished and send the log file to this list. Also if you
suspect
> >
> > your
> >
> > > problems might originate from your or1k toolchain, build or1k
toolchain
> > > as well. FYI, you need or1k toolchain to build or1ksim/testbench (just
in
> >
> > case
> >
> > > you are trying to build them with your host tools - testbench
obviously
> > > can't be built with host tools).
> > >
> > > Also have a look at this: http://www.opencores.org/projects/or1k/ats
> > > Also GDB builds fine if you check the logs, it is just listed on the
web
> > > incorrectly. or1ksim testbench make check will be added to ATS in a
few
> >
> > days
> >
> > > hopefully. Linux kernel is 2.4.18-3custom.
> > >
> > > regards,
> > > Damjan
> > >
> > > ----- Original Message -----
> > > From: "Gil Gamliel (h)" <giliga@zahav.net.il>
> > > To: <openrisc@opencores.org>
> > > Sent: Friday, August 02, 2002 5:07 PM
> > > Subject: Re: Re: [openrisc] or32 compile errors
> > >
> > > > Hello All,
> > > >
> > > > I have the same problem  with the same transcript  Jeff had , and
my
> > >
> > > system
> > >
> > > > is  red hat 7.3 with kernel 2.4.18-3
> > > > What seems to be the problem ? is it the kernel too ?
> > > > Could someone with the same system try to configure the testbench?
> > > >
> > > > Regards,
> > > > Gili
> > > >
> > > >
> > > > ----- Original Message -----
> > > > From: "Jeff Hanoch" <jeff@l... >
> > > > To: <openrisc@o... >
> > > > Date: Sun, 14 Apr 2002 23:08:23 -0500
> > > > Subject: Re: Re: [openrisc] or32 compile errors
> > > >
> > > > > Hi Damjan,
> > > > >
> > > > > I must apologize.  I was running kernel 2.4.9-31mppe on a RedHat
> > > > > 7.2 system
> > > > > when the testbenches failed before.  This kernel was running so
> > > > > that I could
> > > > > run a PPTP-VPN server.  When I rebooted to a "normal" 2.4.9-31
> > > > > kernel, and
> > > > > rebuilt the toolchain, I was able to get the same results as you.
> > > > > Apparently something about that kernel patch was causing problems
> > > > > somehow.
> > > > > Thanks for the pointing me to the kernel.
> > > > >
> > > > > Regards,
> > > > > Jeff
> > > > >
> > > > > ----- Original Message -----
> > > > > From: "Damjan Lampret" <lampret@o... >
> > > > > To: <openrisc@o... >
> > > > > Sent: Saturday, April 13, 2002 10:09 AM
> > > > > Subject: Re: Re: [openrisc] or32 compile errors
> > > > >
> > > > > > Hi Jeff,
> > > > > >
> > > > > > I did the same yesterday and configure went smoothly (however
> > > > >
> > > > > two of the
> > > > > 19 tests failed, but this is another story). My system is Debian
> > > > > GNU/Linux
> > > > > 2.2 with kernel 2.4.3.
> > > > >
> > > > > > regards,
> > > > > > Damjan
> > > > > >
> > > > > > On 13 Apr 2002 08:06 CET you wrote:
> > > > > > > A little more information on that last message:
> > > > > > >
> > > > > > > I renamed my or1k directory and then checked out a brand
> > > > >
> > > > > new fresh copy
> > > > > of
> > > > >
> > > > > > > the or1k tree from CVS.  I built all the tools in the
> > > > >
> > > > > order shown on the
> > > > > web
> > > > >
> > > > > > > site regarding the GNU toolchain.  The tool installs went
> > > > >
> > > > > smoothly.  I
> > > > > also
> > > > >
> > > > > > > added the /opt/or32-rtems/bin to my path.  I then
> > > > >
> > > > > compiled and installed
> > > > > the
> > > > >
> > > > > > > or1ksim simulator as follows:
> > > > > > >
> > > > > > > ./configure --target=or32-rtems --prefix=/opt/or32-rtems
> > > > >
> > > > > && make all
> > > > > install
> > > > >
> > > > > > > This also worked without any problems.  Then I wanted to
> > > > >
> > > > > try the
> > > > >
> > > > > > > testbenches, so I cd'd into the testbench directory and
> > > > >
> > > > > typed the
> > > > >
> > > > > following:
> > > > > > > ./configure --target=or32-rtems
> > > > > > >
> > > > > > > I get the error show below in the previous message.  I am
> > > > >
> > > > > hoping
> > > > > something
> > > > >
> > > > > > > has changed in the recent past because I ran this command
> > > > >
> > > > > on a different
> > > > >
> > > > > > > system which has an older version of the or1ksim
> > > > >
> > > > > (probably a month old)
> > > > > and
> > > > >
> > > > > > > it works correctly.  Or maybe I am doing this wrong.  Any
> > > > >
> > > > > suggestions
> > > > > would
> > > > >
> > > > > > > be appreciated.
> > > > > > >
> > > > > > > Thanks,
> > > > > > > Jeff
> > > > > > >
> > > > > > > ----- Original Message -----
> > > > > > > From: "Jeff Hanoch" <jeff@l... >
> > > > > > > To: <openrisc@o... >
> > > > > > > Sent: Friday, April 12, 2002 11:02 PM
> > > > > > > Subject: Re: [openrisc] or32 compile errors
> > > > > > >
> > > > > > > > Marko,
> > > > > > > >
> > > > > > > > I went back to look at the tests in the
> > > > >
> > > > > or1ksim/testbench directory.
> > > > > I
> > > > >
> > > > > > > > cannot get the ./configure --target=or32-rtems to
> > > > >
> > > > > work.  Could you or
> > > > >
> > > > > > > > someone try this to see if they are having the same
> > > > >
> > > > > problem.  Here's
> > > > > my
> > > > >
> > > > > > > > transcript:
> > > > > > > >
> > > > > > > > [jeff@control testbench]$ ./configure
> > > > >
> > > > > --target=or32-rtems
> > > > >
> > > > > > > > loading cache ./config.cache
> > > > > > > > checking host system type... i686-pc-linux-gnu
> > > > > > > > checking for a BSD compatible install...
> > > > >
> > > > > /usr/bin/install -c
> > > > >
> > > > > > > > checking whether build environment is sane... yes
> > > > > > > > checking whether make sets ${MAKE}... yes
> > > > > > > > checking for working aclocal... found
> > > > > > > > checking for working autoconf... found
> > > > > > > > checking for working automake... found
> > > > > > > > checking for working autoheader... found
> > > > > > > > checking for working makeinfo... found
> > > > > > > > checking whether make sets ${MAKE}... (cached) yes
> > > > > > > > checking for a BSD compatible install...
> > > > >
> > > > > /usr/bin/install -c
> > > > >
> > > > > > > > checking build system type... i686-pc-linux-gnu
> > > > > > > > checking for or32-rtems-gcc... or32-rtems-gcc
> > > > > > > > checking for or32-rtems-ranlib... or32-rtems-ranlib
> > > > > > > > checking for or32-rtems-ld... or32-rtems-ld
> > > > > > > > checking for or32-rtems-sim... or32-rtems-sim
> > > > > > > > checking for gcc... (cached) or32-rtems-gcc
> > > > > > > > checking whether the C compiler (or32-rtems-gcc  )
> > > > >
> > > > > works... no
> > > > >
> > > > > > > > configure: error: installation or configuration
> > > > >
> > > > > problem: C compiler
> > > > > cannot
> > > > >
> > > > > > > > create executables.
> > > > > > > > [jeff@control testbench]$
> > > > > > > >
> > > > > > > > thanks,
> > > > > > > > Jeff
> > > > > > > >
> > > > > > > > ----- Original Message -----
> > > > > > > > From: "Marko Mlinar" <markom@o... >
> > > > > > > > To: <openrisc@o... >
> > > > > > > > Sent: Tuesday, April 09, 2002 12:53 AM
> > > > > > > > Subject: Re: [openrisc] or32 compile errors
> > > > > > > >
> > > > > > > > > > Ok, I put your code into a file called
> > > > >
> > > > > sample1.c.  I compiled it
> > > > > as
> > > > >
> > > > > > > > > > follows.  It compiled cleanly.
> > > > > > > > > >
> > > > > > > > > > [jeff@asic1 jeff]$ or32-rtems-gcc -g -o
> > > > >
> > > > > sample1.or32 sample1.c
> > > > >
> > > > > > > > > You should specify -nostdlib option, to tell
> > > > >
> > > > > the gcc that you are
> > > > > not
> > > > >
> > > > > > > > > compiling
> > > > > > > > > for rtems. Also some linking script -T options
> > > > >
> > > > > should be also
> > > > > supplied
> > > > >
> > > > > > > > (look
> > > > > > > >
> > > > > > > > > into ld documentation, e.g. 'info ld' or take a
> > > > >
> > > > > look into
> > > > >
> > > > > > > > or1ksim/testbench
> > > > > > > >
> > > > > > > > > how
> > > > > > > > > tests are compiled. You can also run configure
> > > > >
> > > > > and make there, and
> > > > > run
> > > > >
> > > > > > > > those
> > > > > > > >
> > > > > > > > > tests with the DDD.
> > > > > > > > >
> > > > > > > > > > The simulator spewed some MEMWRITE and
> > > > >
> > > > > MEMREAD statements.
> > > > >
> > > > > > > > > yes, this is due to the wrong linking. You
> > > > >
> > > > > should also place your
> > > > >
> > > > > > > > > memories --
> > > > > > > > > set your .cfg file according to the link file.
> > > > > > > > >
> > > > > > > > > > I am unable to interupt the debugger.  The
> > > > >
> > > > > machine code window
> > > > > says
> > > > >
> > > > > > > "No
> > > > > > >
> > > > > > > > > > Code."  I have to kill the debugger and
> > > > >
> > > > > restart it to get the gdb
> > > > >
> > > > > > > > > > command line back.  Any suggestions as to
> > > > >
> > > > > what I am doing wrong?
> > > > >
> > > > > > > > > > Thanks for any advice
> > > > > > > > > > Jeff
> > > > > > > > >
> > > > > > > > > no problem, the rest looks ok. I hope it will
> > > > >
> > > > > work now.
> > > > >
> > > > > > > > > Marko
> > >
> > > --
> > > To unsubscribe from openrisc mailing list please visit
> >
> > http://www.opencores.org/mailinglists.shtml
>
> --
> To unsubscribe from openrisc mailing list please visit
http://www.opencores.org/mailinglists.shtml
>

--
To unsubscribe from openrisc mailing list please visit http://www.opencores.org/mailinglists.shtml