OESF Portables Forum
Everything Else => General Support and Discussion => Zaurus General Forums => Archived Forums => Software => Topic started by: tovarish on January 12, 2005, 08:39:32 am
-
Hi,
I have compiled a newer version of clisp and the latest version of maxima and it runs great. the trouble is it wont install verywell with the /opt/QtPalmtop prefix, so i have prefixed it to /usr/local/maxima. it could work with /opt/QtPalmtop but some tweaking needs to be done in the maxima script wrapper.
if you want to install it in a card then /usr/local/maxima just has to be symlinked to the directory in the card
now the problem, it is 10MB in size and i don't have anywhere to host it, help would be appreciated. need also a bit of testing (maxima users)
thanks
tovarish
-
I will be hosting the file here (http://www.ma.utexas.edu/users/voloch/Exe/maxima.tar.gz)
please test it.
Felipe
-
I have tried this but am getting setfault.
Just running the following command to start lisp segfaults:
$ ./lisp-run -M lispinit.mem
Before segfaulting the following error message appears:
./lisp.run: Symbol `PC' has different size in shared object, consider re-linking
This is on zaurus sl860 and Cacko 1.22 (latest Cacko ROM).
I installed to my SD card and made the symlink /usr/local/maxima as specified in instructions so I have no idea what the problem may be (I don't think it has anything to do with symlink since running the above command just to start list segfaults).
-
use the maxima wrapper script to start maxima. it is there in
/usr/local/maxima/bin/maxima
it uses the lisp.run binary in the distribution itself. I dont see any reason lisp.run should segfault. it runs on my cacko 1.22 sl860.
there could be two problems. the readline that i have installed may be different from yours. the other could be that with ncurses.
the command you used was tyo start lisp and not maxima.
"/lisp.run: Symbol `PC' has different size in shared object, consider re-linking"
i get this message too but it doesnt hamper working of maxima. i will check the dependncies when i get home.
tovarish
-
use the maxima wrapper script to start maxima. it is there in
/usr/local/maxima/bin/maxima
it uses the lisp.run binary in the distribution itself. I dont see any reason lisp.run should segfault. it runs on my cacko 1.22 sl860.
there could be two problems. the readline that i have installed may be different from yours. the other could be that with ncurses.
the command you used was tyo start lisp and not maxima.
"/lisp.run: Symbol `PC' has different size in shared object, consider re-linking"
i get this message too but it doesnt hamper working of maxima. i will check the dependncies when i get home.
tovarish
Thanks for your reply.
I did first start maxima wrapper but after that segfaulted I decided to see whether lisp itself would start. But that segfaulted using the command from my previous message. I also think the problem is probably ncurses or readline but have no idea why I should have different version(s) from you since we are both on Cacko 1.22 and sl860. For what is worth, I installed all my packages from cacko feed.
Here are my readline and ncurses versions:
bash():zaurus:/usr/lib# ls -l libncurses.so*
lrwxrwxrwx 1 root root 15 Jan 2 04:11 libncurses.so -> libncurses.so.5*
lrwxrwxrwx 1 root qpe 26 Jan 13 16:40 libncurses.so.4 -> /usr/lib/libncurses.so.5.4*
lrwxrwxrwx 1 root root 17 Jan 2 04:11 libncurses.so.5 -> libncurses.so.5.4*
lrwxrwxrwx 1 root root 30 Jan 2 04:11 libncurses.so.5.4 -> /usr/lib.rom/libncurses.so.5.4*
bash():zaurus:/usr/lib# ls -l libreadline.so*
lrwxrwxrwx 1 root root 16 Jan 2 04:11 libreadline.so -> libreadline.so.5*
lrwxrwxrwx 1 root root 29 Jan 2 04:11 libreadline.so.4 -> /usr/lib.rom/libreadline.so.4*
lrwxrwxrwx 1 root root 18 Jan 2 04:11 libreadline.so.5 -> libreadline.so.5.0*
lrwxrwxrwx 1 root root 31 Jan 2 04:11 libreadline.so.5.0 -> /usr/lib.rom/libreadline.so.5.0*
-
ok here goes some testing
first i would like you to try to run lisp.run and Ctrl-d
[/usr/local/maxima/lib/maxima/5.9.1/binary-clisp $]./lisp.run
./lisp.run: Symbol `PC' has different size in shared object, consider re-linking
i i i i i i i ooooo o ooooooo ooooo ooooo
I I I I I I I 8 8 8 8 8 o 8 8
I \ `+' / I 8 8 8 8 8 8
\ `-+-' / 8 8 8 ooooo 8oooo
`-__|__-' 8 8 8 8 8
| 8 o 8 8 o 8 8
------+------ ooooo 8oooooo ooo8ooo ooooo 8
Copyright © Bruno Haible, Michael Stoll 1992, 1993
Copyright © Bruno Haible, Marcus Daniels 1994-1997
Copyright © Bruno Haible, Pierpaolo Bernardi, Sam Steingold 1998
Copyright © Bruno Haible, Sam Steingold 1999-2002
WARNING: No initialization file specified.
Please try: ./lisp.run -M lispinit.mem
WARNING: No installation directory specified.
Please try: ./lisp.run -B /usr/local/lib/clisp
>
Bye.
next run ldd ./lisp.run. this gives the following results for me
[/usr/local/maxima/lib/maxima/5.9.1/binary-clisp $]ldd ./lisp.run
libncurses.so.5 => /home/QtPalmtop/lib/libncurses.so.5 (0x40022000)
libdl.so.2 => /lib/libdl.so.2 (0x4006e000)
libc.so.6 => /lib/libc.so.6 (0x40079000)
/lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x40000000)
and finally the filesizes of the depended shared libraries
[/usr/local/maxima/lib/maxima/5.9.1/binary-clisp $]ls -al /home/QtPalmtop/lib/libncurses.so.5
lrwxrwxrwx 1 root root 17 Jan 2 12:16 /home/QtPalmtop/lib/libncurses.so.5 -> libncurses.so.5.0
[/usr/local/maxima/lib/maxima/5.9.1/binary-clisp $]ls -al /home/QtPalmtop/lib/libncurses.so.5.0
-rw-r--r-- 1 root root 263720 Jan 22 2002 /home/QtPalmtop/lib/libncurses.so.5.0
[/usr/local/maxima/lib/maxima/5.9.1/binary-clisp $]ls -al /lib/libdl.so.2
lrwxrwxrwx 1 root root 14 Dec 21 20:34 /lib/libdl.so.2 -> libdl-2.2.2.so
[/usr/local/maxima/lib/maxima/5.9.1/binary-clisp $]ls -al /lib/libdl-2.2.2.so
-rwxr-xr-x 1 root root 10176 Feb 26 2004 /lib/libdl-2.2.2.so
[/usr/local/maxima/lib/maxima/5.9.1/binary-clisp $]ls -al /lib/libc.so.6
lrwxrwxrwx 1 root root 13 Dec 21 20:34 /lib/libc.so.6 -> libc-2.2.2.so
[/usr/local/maxima/lib/maxima/5.9.1/binary-clisp $]ls -al /lib/libc-2.2.2.so
-rwxr-xr-x 1 root root 1152468 Feb 26 2004 /lib/libc-2.2.2.so
[/usr/local/maxima/lib/maxima/5.9.1/binary-clisp $]ls -al /lib/ld-linux.so.2
lrwxrwxrwx 1 root root 11 Dec 21 20:34 /lib/ld-linux.so.2 -> ld-2.2.2.so
[/usr/local/maxima/lib/maxima/5.9.1/binary-clisp $]ls -al /lib/ld-2.2.2.so
-rwxr-xr-x 1 root root 105908 Feb 26 2004 /lib/ld-2.2.2.so
If these filesizes match then i am stumped. if not there is still hope for you . This is certainly the case as your libncurses is different from mine (5.4 vs 5.0). I have attached my libncurses below
tovarish
-
Thanks again for help. I am now stumped as well. ldd command as well as all the file sizes (after I installed your ncurses ipk) exactly match your output. But when I run ./lisp.run I still get a segmentation fault (message gets printed after lisp screen is printed and I get kicked out to bash (I don't see the core file but that is probaly another issue). In other words, I don't get the chance to type ctrl-d as you suggested as app segfaults without wanting to interact with me.
I do have one more question - did you set up a swap file on your machine? I don't really have much space left for installing packages and was reluctant to set one up until now but maybe it''s time to try that.
-
i have a 32 mb swap file on my sd card. maybe it will help. maybe a 1 gig sd card will help
ldd shows what libs the binary will use, if all the libs match (and the os and the hardware) then there is no reason why there should be a segfault.
strangely when maxima is being run my swapfile usage is only 1802 kb and ram usage is 25957 kb so swapfile may not be the answer but then i don't preload any apps. i wish others would try it too for more feedback
another suggestion my TERM is set to xterm-new so try
export TERM=xterm-new
different terminal settings could cause segfaults.
-
Sigh. I tried everything I can think of (swap file, turning off preloads of apps, different xterm setting but no matter what it segfaults). I'll probably regroup and try this again after I flash cacko next time (I anticipate I will do this when Maslovsky releases stripped down version which is what I'm really looking forward too).
I also agree, it would be nice if few others would try this package.
One suggestion to you would be to submit the package to Cacko team for inclusion into their feed. If you give them source and instructions for compiling another benefit may be that we get maxima ipk that links against all the same libs cacko uses for all other packages (ie. maybe ncurses 5.4 etc).
Thanks again for all your suggestions and help.
-
i have already submitted to the cacko team, they have lots of apps to test so it will be a while b4 it appears on their feed.
its too bad that the only other person who tried maxima couldnt get it to work
tovarish
-
Ok, just for kicks I put Maxima on my machine and ran it.
It starts up fine, or I guess it seems to.
Only problem is, I don't know what it is supposed to do.
I'm willing to test it though. Once I get to a (%i1) prompt, what would be something useful to put in it to test it out?
Ok, I found some info on the net. Here is what I got:
$ ./maxima
/home/zaurus/Documents/maxima
i i i i i i i ooooo o ooooooo ooooo ooooo
I I I I I I I 8 8 8 8 8 o 8 8
I \ `+' / I 8 8 8 8 8 8
\ `-+-' / 8 8 8 ooooo 8oooo
`-__|__-' 8 8 8 8 8
| 8 o 8 8 o 8 8
------+------ ooooo 8oooooo ooo8ooo ooooo 8
Copyright © Bruno Haible, Michael Stoll 1992, 1993
Copyright © Bruno Haible, Marcus Daniels 1994-1997
Copyright © Bruno Haible, Pierpaolo Bernardi, Sam Steingold 1998
Copyright © Bruno Haible, Sam Steingold 1999-2003
--------------------------------------------------------------
Maxima 5.9.1 http://maxima.sourceforge.net (http://maxima.sourceforge.net)
Using Lisp CLISP 2.29 (released 2002-07-25)
Distributed under the GNU Public License. See the file COPYING.
Dedicated to the memory of William Schelter.
This is a development version of Maxima. The function bug_report()
provides bug reporting information.
(%i1) integrate(1/(1+x^4),x);
2 x + SQRT(2)
2 2 ATAN(-------------)
LOG(x + SQRT(2) x + 1) LOG(x - SQRT(2) x + 1) SQRT(2)
(%o1) ----------------------- - ----------------------- + -------------------
4 SQRT(2) 4 SQRT(2) 2 SQRT(2)
2 x - SQRT(2)
ATAN(-------------)
SQRT(2)
+ -------------------
2 SQRT(2)
(%i2)
The cut and paste messed up the logo and the spacing of the answer. It looks better on the Z, I just didn't want to do a graphical screen shot.
Looks good though. I'm not a math buff (I got the example from a screen shot), but this looks cool & useful.
Let me know if you want me to run any other tests.
-
yeah if you are a math buff then you could try
2^50000;
its a good calculator
tovarish
-
tovarish,
i am glad to report success running 5.9.1 on my sl-6000l with stock sharp rom. Didn't have to do anything special, other than install the libncurses ipk you posted earlier.
I can remember running maxima 10-15 years ago -- on a $20K Sun workstation.
It is quite impressive to have it on the Z.
Good job!!!
-
I will try to play with it after 2/8. Have Maxima running would be very useful for me to do derivertives and symbolic integration. I can forget about carrying my TI-89 around. good resources of how to make the most out of maxima would be greatly appreciated.
-
Take a look on the website:
http://maxima.sourceforge.net/ (http://maxima.sourceforge.net/)
There are docs on the site.
-
yes thats the best place to look for maxima info. download the docs as a plucker document to have it in your Z all the time. I am trying to get plotting to work in conjunction with gnuplot + qtplot but they use wish(tcl) a lot an probably I need to port this to the Z.
you could also set the terminal to ps and then use a ps viewer to view the results.
tovarish
tovarish
-
Thanks. I was able to get the Maxima software to run on my Zaurus SL-C760 with the Sharp ROM.
I also get the message about the PC symbol, but I am still able to use Maxima.
For the benefit of people who are less familiar with Linux, I used Cygwin on my Windows computer to extract the archived Maxima files:
gzip -d /cygdrive/c/maxima.tar.gz
tar xvf /cygdrive/c/maxima.tar
I installed the maxima directory on my SD card:
/mnt/card/maxima
You would replace, "/mnt/card", with, "/mnt/cf", if you have the maxima directory on your compact flash card.
I then created a symbolic link to that directory:
su root
cd /usr/local
ln -s /mnt/card/maxima .
exit
You can add the following line to your .bashrc file:
export PATH=$PATH:/usr/local/maxima/bin
You can do that with a text editor or by typing at the command line:
echo "export PATH=$PATH:/usr/local/maxima/bin" >> .bashrc
The next time that you exit and return to the Terminal application, just type, "maxima", to start the program.
The easiest Maxima documentation to use on the Zaurus is the HTML documentation:
/usr/local/maxima/share/maxima/5.9.1/doc/html/maxima_toc.html
Just create a bookmark to that file, and you can view the Maxima documentation in your web browser, such as NetFront or Opera. You can also free up some disk space by deleting the documentation that is in the formats that you cannot read or do not use on the Zaurus in the doc directory.
-
oh you dont have to go through all that trouble now, stupkid has an ipk available in the cacko feeds
tovarish
-
as promised, tested it today. worked great on 6k. thx