Loading ...
Sorry, an error occurred while loading the content.

Newbie question - GNU ARM

Expand Messages
  • Mark
    Hi All, I am new to ARM7 and Linux and have just loaded Ubuntu/Feisty onto a spare machine along with pre-compiled binaries for GNUARM
    Message 1 of 5 , Nov 20, 2007
    • 0 Attachment
      Hi All,

      I am new to ARM7 and Linux and have just loaded Ubuntu/Feisty onto a
      spare machine along with pre-compiled binaries for GNUARM
      http://www.gnuarm.com/bu-2.15_gcc-3.4.3-c-c++-java_nl-1.12.0_gi-
      6.1.tar.bz2

      I can compile little endian tasks in C and run them on a Winbond
      W90N740 target without any problems. However, when I attempt to use
      printf, LD throws up loads of unresolved link errors
      including "undefined reference to __ltdf2". A little digging reveals
      that these unresolved labels originate from libgcc.

      Sounds like I have done something daft installing GCC ARM - probably
      a path to the required library either in the make file or the LD
      script.

      At this point, a couple of questions:

      1) I am having difficulty locating the documentation that has
      (presumably) been loaded as part of GNU ARM 3.4.3, I still haven't
      really figured out the appropriate BASH command to read the
      appropriate files. I am sure the documentation will show me how to
      install things correctly...

      2) Probably also covered, but I will ask. The libraries appear to be
      all little endian, I had some most interesting error messages when I
      attempted to link to a big endian target :) This then begs the
      question about the contents of the libraries. I get the feeling that
      there are Thumb as well as Arm libraries included in this package.
      How do you select between them - is it a compiler switch or a
      different library that is included at link time ? Is little endian
      the standard for GCC pre-compiled binaries ?

      Finally many thanks to Simon and Hugo at Bluewater who have managed
      to convert an XH1151 into a very inexpensive development and
      educational platform. I continue to convert perfectly usable consumer
      electronics with sophisticated Ethernet switching into highly complex
      LED flashers, much to my wife's amusement...

      Comments, thoughts and observations please.

      Regards,

      Mark

      PS is there a more appropriate place to voice these questions ?

      PPS
      http://www.geocities.com/markaren10/AMP_uBase_Station/Experimental_AMP
      S_uBase_Station_2007-08-26.html
    • Simon Glass
      Hi Mark, Andre suggests linking with libgcc, i.e. use -lgcc. Regards, Simon ... -- ... Bluewater Systems Ltd - ARM Technology Solution Centre Simon Glass Ph:
      Message 2 of 5 , Nov 20, 2007
      • 0 Attachment
        Hi Mark,

        Andre suggests linking with libgcc, i.e. use -lgcc.

        Regards,
        Simon

        Mark wrote:
        >
        > Hi All,
        >
        > I am new to ARM7 and Linux and have just loaded Ubuntu/Feisty onto a
        > spare machine along with pre-compiled binaries for GNUARM
        > http://www.gnuarm.com/bu-2.15_gcc-3.4.3-c-c++-java_nl-1.12.0_gi-
        > <http://www.gnuarm.com/bu-2.15_gcc-3.4.3-c-c++-java_nl-1.12.0_gi->
        > 6.1.tar.bz2
        >
        > I can compile little endian tasks in C and run them on a Winbond
        > W90N740 target without any problems. However, when I attempt to use
        > printf, LD throws up loads of unresolved link errors
        > including "undefined reference to __ltdf2". A little digging reveals
        > that these unresolved labels originate from libgcc.
        >
        > Sounds like I have done something daft installing GCC ARM - probably
        > a path to the required library either in the make file or the LD
        > script.
        >
        > At this point, a couple of questions:
        >
        > 1) I am having difficulty locating the documentation that has
        > (presumably) been loaded as part of GNU ARM 3.4.3, I still haven't
        > really figured out the appropriate BASH command to read the
        > appropriate files. I am sure the documentation will show me how to
        > install things correctly...
        >
        > 2) Probably also covered, but I will ask. The libraries appear to be
        > all little endian, I had some most interesting error messages when I
        > attempted to link to a big endian target :) This then begs the
        > question about the contents of the libraries. I get the feeling that
        > there are Thumb as well as Arm libraries included in this package.
        > How do you select between them - is it a compiler switch or a
        > different library that is included at link time ? Is little endian
        > the standard for GCC pre-compiled binaries ?
        >
        > Finally many thanks to Simon and Hugo at Bluewater who have managed
        > to convert an XH1151 into a very inexpensive development and
        > educational platform. I continue to convert perfectly usable consumer
        > electronics with sophisticated Ethernet switching into highly complex
        > LED flashers, much to my wife's amusement...
        >
        > Comments, thoughts and observations please.
        >
        > Regards,
        >
        > Mark
        >
        > PS is there a more appropriate place to voice these questions ?
        >
        > PPS
        > http://www.geocities.com/markaren10/AMP_uBase_Station/Experimental_AMP
        > <http://www.geocities.com/markaren10/AMP_uBase_Station/Experimental_AMP>
        > S_uBase_Station_2007-08-26.html
        >
        >

        --
        ------------------------------------------------------------------------
        Bluewater Systems Ltd - ARM Technology Solution Centre

        Simon Glass

        Ph: +64 3 3779127 x201 Bluewater Systems Ltd
        Aus: 1800 148 751 Level 6, 119 Armagh St
        Fax: +64 3 3779135 PO Box 13889
        Web: http://www.bluewatersys.com Christchurch, New Zealand
      • Mark
        Hi Simon, Yup, already doing that. Thanks for checking. Regards, Mark ... onto a ... use ... reveals ... probably ... be ... when I ... that ... managed ...
        Message 3 of 5 , Nov 20, 2007
        • 0 Attachment
          Hi Simon,

          Yup, already doing that.

          Thanks for checking.

          Regards,

          Mark


          --- In arm-user@yahoogroups.com, Simon Glass <sglass@...> wrote:
          >
          > Hi Mark,
          >
          > Andre suggests linking with libgcc, i.e. use -lgcc.
          >
          > Regards,
          > Simon
          >
          > Mark wrote:
          > >
          > > Hi All,
          > >
          > > I am new to ARM7 and Linux and have just loaded Ubuntu/Feisty
          onto a
          > > spare machine along with pre-compiled binaries for GNUARM
          > > http://www.gnuarm.com/bu-2.15_gcc-3.4.3-c-c++-java_nl-1.12.0_gi-
          > > <http://www.gnuarm.com/bu-2.15_gcc-3.4.3-c-c++-java_nl-1.12.0_gi->
          > > 6.1.tar.bz2
          > >
          > > I can compile little endian tasks in C and run them on a Winbond
          > > W90N740 target without any problems. However, when I attempt to
          use
          > > printf, LD throws up loads of unresolved link errors
          > > including "undefined reference to __ltdf2". A little digging
          reveals
          > > that these unresolved labels originate from libgcc.
          > >
          > > Sounds like I have done something daft installing GCC ARM -
          probably
          > > a path to the required library either in the make file or the LD
          > > script.
          > >
          > > At this point, a couple of questions:
          > >
          > > 1) I am having difficulty locating the documentation that has
          > > (presumably) been loaded as part of GNU ARM 3.4.3, I still haven't
          > > really figured out the appropriate BASH command to read the
          > > appropriate files. I am sure the documentation will show me how to
          > > install things correctly...
          > >
          > > 2) Probably also covered, but I will ask. The libraries appear to
          be
          > > all little endian, I had some most interesting error messages
          when I
          > > attempted to link to a big endian target :) This then begs the
          > > question about the contents of the libraries. I get the feeling
          that
          > > there are Thumb as well as Arm libraries included in this package.
          > > How do you select between them - is it a compiler switch or a
          > > different library that is included at link time ? Is little endian
          > > the standard for GCC pre-compiled binaries ?
          > >
          > > Finally many thanks to Simon and Hugo at Bluewater who have
          managed
          > > to convert an XH1151 into a very inexpensive development and
          > > educational platform. I continue to convert perfectly usable
          consumer
          > > electronics with sophisticated Ethernet switching into highly
          complex
          > > LED flashers, much to my wife's amusement...
          > >
          > > Comments, thoughts and observations please.
          > >
          > > Regards,
          > >
          > > Mark
          > >
          > > PS is there a more appropriate place to voice these questions ?
          > >
          > > PPS
          > >
          http://www.geocities.com/markaren10/AMP_uBase_Station/Experimental_AMP
          > >
          <http://www.geocities.com/markaren10/AMP_uBase_Station/Experimental_AM
          P>
          > > S_uBase_Station_2007-08-26.html
          > >
          > >
          >
          > --
          > --------------------------------------------------------------------
          ----
          > Bluewater Systems Ltd - ARM Technology Solution Centre
          >
          > Simon Glass
          >
          > Ph: +64 3 3779127 x201 Bluewater Systems Ltd
          > Aus: 1800 148 751 Level 6, 119 Armagh St
          > Fax: +64 3 3779135 PO Box 13889
          > Web: http://www.bluewatersys.com Christchurch, New
          Zealand
          >
        • Simon Glass
          HI Mark, We might be able to help if you can supply source code and Makefile? Regards, Simon ... -- ... Bluewater Systems Ltd - ARM Technology Solution Centre
          Message 4 of 5 , Nov 21, 2007
          • 0 Attachment
            HI Mark,

            We might be able to help if you can supply source code and Makefile?

            Regards,
            Simon

            Mark wrote:
            >
            > Hi Simon,
            >
            > Yup, already doing that.
            >
            > Thanks for checking.
            >
            > Regards,
            >
            > Mark
            >
            > --- In arm-user@yahoogroups.com <mailto:arm-user%40yahoogroups.com>,
            > Simon Glass <sglass@...> wrote:
            > >
            > > Hi Mark,
            > >
            > > Andre suggests linking with libgcc, i.e. use -lgcc.
            > >
            > > Regards,
            > > Simon
            > >
            > > Mark wrote:
            > > >
            > > > Hi All,
            > > >
            > > > I am new to ARM7 and Linux and have just loaded Ubuntu/Feisty
            > onto a
            > > > spare machine along with pre-compiled binaries for GNUARM
            > > > http://www.gnuarm.com/bu-2.15_gcc-3.4.3-c-c++-java_nl-1.12.0_gi-
            > <http://www.gnuarm.com/bu-2.15_gcc-3.4.3-c-c++-java_nl-1.12.0_gi->
            > > > <http://www.gnuarm.com/bu-2.15_gcc-3.4.3-c-c++-java_nl-1.12.0_gi-
            > <http://www.gnuarm.com/bu-2.15_gcc-3.4.3-c-c++-java_nl-1.12.0_gi->>
            > > > 6.1.tar.bz2
            > > >
            > > > I can compile little endian tasks in C and run them on a Winbond
            > > > W90N740 target without any problems. However, when I attempt to
            > use
            > > > printf, LD throws up loads of unresolved link errors
            > > > including "undefined reference to __ltdf2". A little digging
            > reveals
            > > > that these unresolved labels originate from libgcc.
            > > >
            > > > Sounds like I have done something daft installing GCC ARM -
            > probably
            > > > a path to the required library either in the make file or the LD
            > > > script.
            > > >
            > > > At this point, a couple of questions:
            > > >
            > > > 1) I am having difficulty locating the documentation that has
            > > > (presumably) been loaded as part of GNU ARM 3.4.3, I still haven't
            > > > really figured out the appropriate BASH command to read the
            > > > appropriate files. I am sure the documentation will show me how to
            > > > install things correctly...
            > > >
            > > > 2) Probably also covered, but I will ask. The libraries appear to
            > be
            > > > all little endian, I had some most interesting error messages
            > when I
            > > > attempted to link to a big endian target :) This then begs the
            > > > question about the contents of the libraries. I get the feeling
            > that
            > > > there are Thumb as well as Arm libraries included in this package.
            > > > How do you select between them - is it a compiler switch or a
            > > > different library that is included at link time ? Is little endian
            > > > the standard for GCC pre-compiled binaries ?
            > > >
            > > > Finally many thanks to Simon and Hugo at Bluewater who have
            > managed
            > > > to convert an XH1151 into a very inexpensive development and
            > > > educational platform. I continue to convert perfectly usable
            > consumer
            > > > electronics with sophisticated Ethernet switching into highly
            > complex
            > > > LED flashers, much to my wife's amusement...
            > > >
            > > > Comments, thoughts and observations please.
            > > >
            > > > Regards,
            > > >
            > > > Mark
            > > >
            > > > PS is there a more appropriate place to voice these questions ?
            > > >
            > > > PPS
            > > >
            > http://www.geocities.com/markaren10/AMP_uBase_Station/Experimental_AMP
            > <http://www.geocities.com/markaren10/AMP_uBase_Station/Experimental_AMP>
            > > >
            > <http://www.geocities.com/markaren10/AMP_uBase_Station/Experimental_AM
            > <http://www.geocities.com/markaren10/AMP_uBase_Station/Experimental_AM>
            > P>
            > > > S_uBase_Station_2007-08-26.html
            > > >
            > > >
            > >
            > > --
            > > ----------------------------------------------------------
            > ----
            > > Bluewater Systems Ltd - ARM Technology Solution Centre
            > >
            > > Simon Glass
            > >
            > > Ph: +64 3 3779127 x201 Bluewater Systems Ltd
            > > Aus: 1800 148 751 Level 6, 119 Armagh St
            > > Fax: +64 3 3779135 PO Box 13889
            > > Web: http://www.bluewatersys.com <http://www.bluewatersys.com>
            > Christchurch, New
            > Zealand
            > >
            >
            >

            --
            ------------------------------------------------------------------------
            Bluewater Systems Ltd - ARM Technology Solution Centre

            Simon Glass

            Ph: +64 3 3779127 x201 Bluewater Systems Ltd
            Aus: 1800 148 751 Level 6, 119 Armagh St
            Fax: +64 3 3779135 PO Box 13889
            Web: http://www.bluewatersys.com Christchurch, New Zealand
          • Mark
            Hi Simon, Many thanks for the offer. I have managed to resolve the issue by explicitly pointing to gcclib.a in the linker control script. The ld option -lgcc
            Message 5 of 5 , Nov 21, 2007
            • 0 Attachment
              Hi Simon,

              Many thanks for the offer.

              I have managed to resolve the issue by explicitly pointing to
              gcclib.a in the linker control script.

              The ld option "-lgcc" is the correct switch, but I still haven't
              figured out which $ENVIRONMENT_VARIABLE is associated with it.

              Any insight appreciated.

              Regards,

              Mark

              --- In arm-user@yahoogroups.com, Simon Glass <sglass@...> wrote:
              >
              > HI Mark,
              >
              > We might be able to help if you can supply source code and Makefile?
              >
              > Regards,
              > Simon
              >
              > Mark wrote:
              > >
              > > Hi Simon,
              > >
              > > Yup, already doing that.
              > >
              > > Thanks for checking.
              > >
              > > Regards,
              > >
              > > Mark
              > >
              > > --- In arm-user@yahoogroups.com <mailto:arm-user%
              40yahoogroups.com>,
              > > Simon Glass <sglass@> wrote:
              > > >
              > > > Hi Mark,
              > > >
              > > > Andre suggests linking with libgcc, i.e. use -lgcc.
              > > >
              > > > Regards,
              > > > Simon
              > > >
              > > > Mark wrote:
              > > > >
              > > > > Hi All,
              > > > >
              > > > > I am new to ARM7 and Linux and have just loaded Ubuntu/Feisty
              > > onto a
              > > > > spare machine along with pre-compiled binaries for GNUARM
              > > > > http://www.gnuarm.com/bu-2.15_gcc-3.4.3-c-c++-java_nl-
              1.12.0_gi-
              > > <http://www.gnuarm.com/bu-2.15_gcc-3.4.3-c-c++-java_nl-1.12.0_gi->
              > > > > <http://www.gnuarm.com/bu-2.15_gcc-3.4.3-c-c++-java_nl-
              1.12.0_gi-
              > > <http://www.gnuarm.com/bu-2.15_gcc-3.4.3-c-c++-java_nl-1.12.0_gi-
              >>
              > > > > 6.1.tar.bz2
              > > > >
              > > > > I can compile little endian tasks in C and run them on a
              Winbond
              > > > > W90N740 target without any problems. However, when I attempt
              to
              > > use
              > > > > printf, LD throws up loads of unresolved link errors
              > > > > including "undefined reference to __ltdf2". A little digging
              > > reveals
              > > > > that these unresolved labels originate from libgcc.
              > > > >
              > > > > Sounds like I have done something daft installing GCC ARM -
              > > probably
              > > > > a path to the required library either in the make file or the
              LD
              > > > > script.
              > > > >
              > > > > At this point, a couple of questions:
              > > > >
              > > > > 1) I am having difficulty locating the documentation that has
              > > > > (presumably) been loaded as part of GNU ARM 3.4.3, I still
              haven't
              > > > > really figured out the appropriate BASH command to read the
              > > > > appropriate files. I am sure the documentation will show me
              how to
              > > > > install things correctly...
              > > > >
              > > > > 2) Probably also covered, but I will ask. The libraries
              appear to
              > > be
              > > > > all little endian, I had some most interesting error messages
              > > when I
              > > > > attempted to link to a big endian target :) This then begs the
              > > > > question about the contents of the libraries. I get the
              feeling
              > > that
              > > > > there are Thumb as well as Arm libraries included in this
              package.
              > > > > How do you select between them - is it a compiler switch or a
              > > > > different library that is included at link time ? Is little
              endian
              > > > > the standard for GCC pre-compiled binaries ?
              > > > >
              > > > > Finally many thanks to Simon and Hugo at Bluewater who have
              > > managed
              > > > > to convert an XH1151 into a very inexpensive development and
              > > > > educational platform. I continue to convert perfectly usable
              > > consumer
              > > > > electronics with sophisticated Ethernet switching into highly
              > > complex
              > > > > LED flashers, much to my wife's amusement...
              > > > >
              > > > > Comments, thoughts and observations please.
              > > > >
              > > > > Regards,
              > > > >
              > > > > Mark
              > > > >
              > > > > PS is there a more appropriate place to voice these
              questions ?
              > > > >
              > > > > PPS
              > > > >
              > >
              http://www.geocities.com/markaren10/AMP_uBase_Station/Experimental_AMP
              > >
              <http://www.geocities.com/markaren10/AMP_uBase_Station/Experimental_AM
              P>
              > > > >
              > >
              <http://www.geocities.com/markaren10/AMP_uBase_Station/Experimental_AM
              > >
              <http://www.geocities.com/markaren10/AMP_uBase_Station/Experimental_AM
              >
              > > P>
              > > > > S_uBase_Station_2007-08-26.html
              > > > >
              > > > >
              > > >
              > > > --
              > > > ----------------------------------------------------------
              > > ----
              > > > Bluewater Systems Ltd - ARM Technology Solution Centre
              > > >
              > > > Simon Glass
              > > >
              > > > Ph: +64 3 3779127 x201 Bluewater Systems Ltd
              > > > Aus: 1800 148 751 Level 6, 119 Armagh St
              > > > Fax: +64 3 3779135 PO Box 13889
              > > > Web: http://www.bluewatersys.com <http://www.bluewatersys.com>
              > > Christchurch, New
              > > Zealand
              > > >
              > >
              > >
              >
              > --
              > --------------------------------------------------------------------
              ----
              > Bluewater Systems Ltd - ARM Technology Solution Centre
              >
              > Simon Glass
              >
              > Ph: +64 3 3779127 x201 Bluewater Systems Ltd
              > Aus: 1800 148 751 Level 6, 119 Armagh St
              > Fax: +64 3 3779135 PO Box 13889
              > Web: http://www.bluewatersys.com Christchurch, New
              Zealand
              >
            Your message has been successfully submitted and would be delivered to recipients shortly.