Help - Search - Members - Calendar
Full Version: Octave 2.1.57 - currently testing compatibility
OESF Forums > General Forums > General Support and Discussion > Software
lardman
http://sgp.zaurii.net/binaries/octave_2.1....rm4_libc2.2.ipk

This may fall over on a StrongArm machine (5500/5000D) with a SIGILL error. If so please let me know. Actually I've not tested this version on anything yet, so if it works then please let me know (just the machine and libc version).

Edit: It works fine, but you'll need some other odds and sods. See my post below for a full list of dependencies.

Also note that this is the full package. If you want to save space then you can delete the info and man files and also the rather large *.a static libs (I presume they are there so that you can make your own apps with Octave functionality) which are buried in /usr/local/libexec or somewhere like that). If you want to delete the doc files somewhere under /usr/local/share/ then there's a pdb document created from the Octave manual which should be smaller. Equally you could just remove part of the stuff in 'doc' as you see fit


Thanks,


Simon
datajerk
Can you post your build instructions?
zxerx
Tested on an SL-C760 running pdaXrom 1.0.5 with libc 2.2.5.

Complained about libreadline. Ok, I installed readline.

Also complained about libg2c. I tried to get this library from debian.org, but theirs is compiled for libc 2.3.
lardman
@zxerx: libg2c should be in the pdaXrom feed, or perhaps I had to copy it from the toolchain myself (in any case it's there somewhere).

In any case I'll post an ipk of it later on.

@datajerk:

Very simple actually: ./configure --host=arm-linux

The configure proces may fall over with various warnings, I just edited the configure script, but if I had to do this more often I'd take a look to see what the offending variables were and pass them (after the --host=arm-linux bit). The build process may also fail (but I can't remember) as it needs to run something it creates - just copy the command line to another window (minus the arm-linux- prefix), run it to create whatever it needs and then start make in the main window again.


This is not good though for 5500/5000D users as I presume libg2c may have been compiled as ARM5.

As an aside, anyone know how to statically link libg2c?


Cheers,


Si
lardman
libg2c looks okay (thus far).

Here's a link to an ipk: http://sgp.zaurii.net/binaries/libg2c_0.0.0_arm.ipk

Works fine on my 5500 with OZ 3.3.6pre1 (libc2.3, ARM4 processor), therefore I'll stick my neck out and say it'll work on anything.

Dependencies are (sorry I didn't put them in the ipk, but even making an ipk is good going for me ;-)), off the top of my head:

libncurses.so.5.2+
libreadline.so.4.x
libg2c.so.0.0.0

less (not required, but will make your life easier)
gnuplot (not required but then you'll be able to do plots)

Enjoy!


Si
Zazz
QUOTE
As an aside, anyone know how to statically link libg2c?


link with gcc instead of g77 and add the following to the LDFLAGS:

-lfrtbegin -Wl,-Bstatic -lg2c -Wl,-Bdynamic -lm
lardman
The linking's not up to me unfortunately, the Octave configure script has decided. I presume the linking was performed by gcc in any case. I've noted your LDFLAGS and I could pass this to the configure script.

I understand what you're trying to do with this, but isn't -B the switch which tells GCC where to try to find the compilers etc?

Actually I didn't mean to ask this question (I misread the lib name and though it was libgcc).

Thanks anyway,


Si
datajerk
What did you end up using for g77?

Thanks.
lardman
I compiled the pdaXrom toolchain with --with-languages='C,C++,F77' (I think that's the right command, anyway it worked :-))

Si
datajerk
Thanks, next questions, where is the toolchain source? My end goal is to build an xscale optimized version of octave. Thanks, again.
lardman
I can do that for you tomorrow if you want, in fact I may have one lying around at home somewhere. I've spent the past week trying not to produce ARM5 code with the pdaXrom toolchain :-). How much faster is ARM5 code than ARM4 code? It is a real pain having to support two different dialects so I've decided to stick with ARM4 unless someone can prove to me that ARM5 is significantly faster.

I grabbed the pdaXrom SDK, altered the Makefile to include the appropriate languages and then left it to run. I may have the instructions somewhere but you might get more answers and quicker if you go to #cacko.


Si
lardman
http://sgp.zaurii.net/octave-2.1.57_arm5__..._binary_only.gz

cd to /usr/local/bin (or /mnt/xxx/usr/local/bin) and gunzip it.
It's just called octave (so it will overwrite - or you might have to remove - the symlink to the existing binary which is called octave-2.1.57)

I'd be interested to hear the results of a speed comparison.


Si

Edit: This file has been deleted, see below for a new one
datajerk
I have a benchmark ready to run, however I cannot get octave to run on Cacko 1.21 on my c860.

It first fails with libreadline, so I build and installed it myself, then it fails with g2c, got that from your site, next stdc++, took that from pdaxrom sdk, now I get the message /lib/libc.so.6 'GLIBC_2.2.3' not found. I suspect stdc.

This isn't the first time I have had problems running pdaxrom binaries. I end up building the binaries myself for X/qt.
lardman
Oh, I see.

I wonder if someone using another of the libc2.2 based ROMs (OZ<=3.3.5, Sharp ROMs, Other Cacko ROMs, Tkc, etc.) could try the package and see whether it works. I've only tried it on 3.3.6pre1 which is of course using libc 2.3. I had forgotten that there are also differences between the libc subversions, though I'm surprised it breaks so easily.

In any case I just tried running the arm5 binary I posted and I get a BUS ERROR for some reason (possibly from mixing dialect types between the C/C++ and FORTAN code). I'll rebuild the package tomorrow and try again (I know it does work, but obviously not the one I found).


Si
lardman
Okay here's another try at an ARM5 version of Octave, just the binary again (extract it in /usr/local/bin - or wherever your symlinks point to as it's rather large): http://sgp.zaurii.net/octave_arm5.gz


Si
datajerk
Could your add -static to your LDFLAGS and rebuild both ARM4 and ARM5?
zxerx
QUOTE
Okay here's another try at an ARM5 version of Octave


Tried this on Cacko QT 1.21. It's running libc 2.2.2 and your binary wants 2.2.3 sad.gif
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Invision Power Board © 2001-2014 Invision Power Services, Inc.