Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.lang.forth > #26070 > unrolled thread

Beaglebone Black

Started by"Alex McDonald" <blog@rivadpm.com>
First post2013-09-29 11:34 +0100
Last post2013-10-04 01:10 -0700
Articles 6 — 4 participants

Back to article view | Back to comp.lang.forth


Contents

  Beaglebone Black "Alex McDonald" <blog@rivadpm.com> - 2013-09-29 11:34 +0100
    Re: Beaglebone Black Paul Rubin <no.email@nospam.invalid> - 2013-09-29 06:23 -0700
      Re: Beaglebone Black "Alex McDonald" <blog@rivadpm.com> - 2013-09-29 21:30 +0100
        Re: Beaglebone Black "Alex McDonald" <blog@rivadpm.com> - 2013-09-29 23:15 +0100
          Re: Beaglebone Black Bernd Paysan <bernd.paysan@gmx.de> - 2013-10-01 23:55 +0200
            Re: Beaglebone Black Alex McDonald <blog@rivadpm.com> - 2013-10-04 01:10 -0700

#26070 — Beaglebone Black

From"Alex McDonald" <blog@rivadpm.com>
Date2013-09-29 11:34 +0100
SubjectBeaglebone Black
Message-ID<l28vnp$j5o$1@dont-email.me>
For a project related to car telemetry I've bought a Beaglebone Black.
This is a very interesting board, but it lacks (in the Angstrom distro at
least) a gforth. I searched clf and found a post by Bernd some time ago
about it;

<quote>
There's an example how to get Gforth working on an embedded processor
using cross compiling.  It's for ARM and the beagle board, you can find
it under gforth/arch/arm/beagle.  The cross compilation auto-config
stuff is found in config.sh (assign the variables), and there are some C
programs for serial line interfaces and such.  Of course, all that needs
to be changed for any embedded MIPS architecture, but the infrastructure
is there. 
</quote>

Since I haven't installed gforth anywhere on anything, can anyone take me
through an idiot's guide to installing?

The interesting thing about this board are the 2 auxilliary 32bit
processors (PRUSS) that can be used to offload time critical processes.
Given the application I have for this card (for instance, data logging &
ignition control at up to 20K RPM on multi- cylinder engines) they look
really useful. They're only supported by a TI assembler currently, but a
Forth looks quite possible.

Thanks in advance.

[toc] | [next] | [standalone]


#26071

FromPaul Rubin <no.email@nospam.invalid>
Date2013-09-29 06:23 -0700
Message-ID<7x7gdzep82.fsf@ruckus.brouhaha.com>
In reply to#26070
"Alex McDonald" <blog@rivadpm.com> writes:
> There's an example how to get Gforth working on an embedded processor
> using cross compiling. 

The BBB runs GCC just fine.  It's probably simplest to install GCC and
then compile gforth locally, rather than mess with cross compilation.

[toc] | [prev] | [next] | [standalone]


#26072

From"Alex McDonald" <blog@rivadpm.com>
Date2013-09-29 21:30 +0100
Message-ID<l2a2kb$lk4$1@dont-email.me>
In reply to#26071
on 29/09/2013 14:23:25, Paul Rubin wrote:
> "Alex McDonald" <blog@rivadpm.com> writes:
>> There's an example how to get Gforth working on an embedded processor
>> using cross compiling.
> 
> The BBB runs GCC just fine. It's probably simplest to install GCC and
> then compile gforth locally, rather than mess with cross compilation.
> 

That doesn't work; I get errors caused by there being no gforth on the
distriubution to do the build.
http://lists.gnu.org/archive/html/gforth/2012-06/msg00006.html

I'll see if I can find a working Ubuntu distro on my laptop...

The BBB is really easy to access just with a bare board and a USB cable;
VNC works a treat.

[toc] | [prev] | [next] | [standalone]


#26073

From"Alex McDonald" <blog@rivadpm.com>
Date2013-09-29 23:15 +0100
Message-ID<l2a8qr$ljj$1@dont-email.me>
In reply to#26072
on 29/09/2013 21:30:05, "Alex McDonald" wrote:
> on 29/09/2013 14:23:25, Paul Rubin wrote:
>> "Alex McDonald" <blog@rivadpm.com> writes:
>>> There's an example how to get Gforth working on an embedded processor
>>> using cross compiling.
>>
>> The BBB runs GCC just fine. It's probably simplest to install GCC and
>> then compile gforth locally, rather than mess with cross compilation.
>>
> 
> That doesn't work; I get errors caused by there being no gforth on the
> distriubution to do the build.
> http://lists.gnu.org/archive/html/gforth/2012-06/msg00006.html
> 
> I'll see if I can find a working Ubuntu distro on my laptop...
> 
> The BBB is really easy to access just with a bare board and a USB
> cable; VNC works a treat.
> 

OK, found an Ubuntu and

sudo apt-get install libtool libltdl-dev libffi-dev autoconf m4 gforth 
mkdir gforth
cd gforth
sudo wget
http://git.savannah.gnu.org/cgit/gforth.git/snapshot/gforth-0-7-2.tar.gz
tar -xzvf gforth-0-7-2.tar.gz cd gforth-0-7-2
sudo ./BUILD-FROM-SCRATCH --build=arm
sudo make dist

Then copied gforth/gforth-0-7-2.tar.gz to the BBB.

There I did 

mkdir gforth
cd gforth
tar -xzvf gforth-0-7-2.tar.gz
/configure
make

At this point, I get the error;

for i in cstr.fs unix/socket.fs; do ./gforth -e "s\"
`pwd`/lib/gforth/0.7.2/libcc- named/\" libcc-named-dir-v 2! libcc-path
clear-path libcc-named-dir libcc-path also-path :noname 2drop s\"
/usr/local/lib/gforth/0.7.2/libcc-named/\" ; is replace-rpath" ./$i -e
bye; done
/usr/lib/gcc/arm-angstrom-linux-gnueabi/4.7.3/../../../../arm-angstrom-linux-
gnueabi/bin/ld: cannot find -lgcc_s
collect2: error: ld returned 1 exit status

in file included from *OS command line*:-1
cstr.fs:23: libtool link failed
>>>end-c-library<<<
Backtrace:
$B697AB0C throw
$B699C640 c(abort")
$B699CB60 compile-wrapper-function1

/usr/lib/gcc/arm-angstrom-linux-gnueabi/4.7.3/../../../../arm-angstrom-linux-
gnueabi/bin/ld: cannot find -lgcc_s
collect2: error: ld returned 1 exit status

in file included from *OS command line*:-1
unix/socket.fs:48: libtool link failed
>>>end-c-library<<<
Backtrace:
$B6995B0C throw
$B69B7640 c(abort")
$B69B7B60 compile-wrapper-function1
make: *** [build-libcc-named] Error 1


However, I do end up with a working gforth executable.

make install

generates this;

if test -n "libtool"; then for i in cstr.fs unix/socket.fs; do \
libtool tool --silent --mode=install /usr/bin/install -c
lib/gforth/0.7.2/libcc- named/`basename $i .fs`.la
/usr/local/lib/gforth/0.7.2/libcc-named/`basename $i .fs`.la; \
	done; fi
libtool: install: `lib/gforth/0.7.2/libcc-named/cstr.la' is not a valid
libtool archive libtool: install: Try `libtool --help --mode=install' for
more information. libtool: install:
`lib/gforth/0.7.2/libcc-named/socket.la' is not a valid libtool archive
libtool: install: Try `libtool --help --mode=install' for more
information. make: *** [install] Error 1

Something to do with sockets.fs?

[toc] | [prev] | [next] | [standalone]


#26087

FromBernd Paysan <bernd.paysan@gmx.de>
Date2013-10-01 23:55 +0200
Message-ID<l2fgcv$pni$1@online.de>
In reply to#26073
Alex McDonald wrote
> At this point, I get the error;
> 
> for i in cstr.fs unix/socket.fs; do ./gforth -e "s\"
> `pwd`/lib/gforth/0.7.2/libcc- named/\" libcc-named-dir-v 2! libcc-path
> clear-path libcc-named-dir libcc-path also-path :noname 2drop s\"
> /usr/local/lib/gforth/0.7.2/libcc-named/\" ; is replace-rpath" ./$i -e
> bye; done
> /usr/lib/gcc/arm-angstrom-linux-gnueabi/4.7.3/../../../../arm-angstrom-
linux-
> gnueabi/bin/ld: cannot find -lgcc_s
> collect2: error: ld returned 1 exit status
> 
> in file included from *OS command line*:-1
> cstr.fs:23: libtool link failed
>>>>end-c-library<<<
> Backtrace:
> $B697AB0C throw
> $B699C640 c(abort")
> $B699CB60 compile-wrapper-function1
> 
> /usr/lib/gcc/arm-angstrom-linux-gnueabi/4.7.3/../../../../arm-angstrom-
linux-
> gnueabi/bin/ld: cannot find -lgcc_s
> collect2: error: ld returned 1 exit status
> 
> Something to do with sockets.fs?

No, something to do with libgcc_s.so.  You might need to try this or 
something like that:

sudo ln -s /lib/libgcc_s.so.1 /lib/libgcc_s.so

-- 
Bernd Paysan
"If you want it done right, you have to do it yourself"
http://bernd-paysan.de/

[toc] | [prev] | [next] | [standalone]


#26110

FromAlex McDonald <blog@rivadpm.com>
Date2013-10-04 01:10 -0700
Message-ID<63c5d303-eae1-45f7-9602-77e69f04af06@googlegroups.com>
In reply to#26087
On Tuesday, 1 October 2013 22:55:42 UTC+1, Bernd Paysan  wrote:

> 
> 
> 
> No, something to do with libgcc_s.so.  You might need to try this or 
> something like that:
> 
> sudo ln -s /lib/libgcc_s.so.1 /lib/libgcc_s.so
> 

Hmm. Didn't work. I had a libgcc_s.so that appeared to be a truncated file; deleted that and softlinked to libgcc_s.so.1, but I still get the same error om make.

I'm going to copy the ubuntu build.  

[toc] | [prev] | [standalone]


Back to top | Article view | comp.lang.forth


csiph-web