|
From: Eric T. <eti...@MI...> - 2011-05-24 04:56:30
|
Hi all,
I've managed to get matlisp working on windows, but I also need to get
it working on a linux distro as well. Specifically I'm working on Ubuntu
10.04 with allegro CL 8.1 (64-bit if that matters).
I got the latest version of matlisp from git and followed the
instructions in the INSTALL file. I noticed some bugs while compiling,
though. The makefile attempted to install LAPACK before BLAS and it
(understandably) got unhappy about that. I fixed that, then I noticed
that the file libmatlisp.so wasn't actually generated so I had to change
lazy-loader.lisp to load libblas.so, liblapack.so, libdfftpack.so, and
libtoms715.so.
After making those changes, I loaded start.lisp from Allegro. There were
some compile warnings, but nothing looked too major. I was then able to
make matrices using MAKE-REAL-MATRIX, but whenever any code tried to use
a Fortran function an error was signaled. The following error was given
when I tried to evaluate (eye 2):
Attempt to do an array operation on #12\? which is not an array.
[Condition of type TYPE-ERROR]
Restarts:
0: [RETRY] Retry SLIME REPL evaluation request.
1: [*ABORT] Return to SLIME's top level.
2: [ABORT] Abort entirely from this (lisp) process.
Backtrace:
0: (ERROR TYPE-ERROR :DATUM #12\? :EXPECTED-TYPE ARRAY ...)
1: (BLAS::FORTRAN-DCOPY 2 #(1.0d0) 0 #(0.0d0 0.0d0 0.0d0 0.0d0) 3)
2: (DCOPY 2 #(1.0d0) 0 #(0.0d0 0.0d0 0.0d0 0.0d0) 3)
3: (EYE 2)
4: (EVAL (EYE 2))
--more--
Similar errors happen whenever I try to use a fortran function. This
doesn't happen on Windows (32- or 64-bit). Anyone have any
ideas/suggestions of what to do to get this to work on Ubuntu?
Cheers,
-Eric
|
|
From: Raymond T. <toy...@gm...> - 2011-05-24 15:20:18
|
>>>>> "Eric" == Eric Timmons <eti...@MI...> writes:
Eric> Hi all,
Eric> I've managed to get matlisp working on windows, but I also need to get
That's fantastic! I've never personally done that and wasn't really
expecting the current version to build on windows. Did you need to do
anything special? If so, can you provide some hints on how to do
that? Or better yet, if you have a sourceforge account, edit the trac
page for matlisp at http://sourceforge.net/apps/trac/matlisp.
Eric> it working on a linux distro as well. Specifically I'm working on Ubuntu
Eric> 10.04 with allegro CL 8.1 (64-bit if that matters).
IIRC, the free Allegro limits are too low to build matlisp. Are you
using the full version?
Eric> I got the latest version of matlisp from git and followed the
Eric> instructions in the INSTALL file. I noticed some bugs while compiling,
Eric> though. The makefile attempted to install LAPACK before BLAS and it
Eric> (understandably) got unhappy about that. I fixed that, then I noticed
I'll look into that and fix it soon.
Eric> that the file libmatlisp.so wasn't actually generated so I had to change
Eric> lazy-loader.lisp to load libblas.so, liblapack.so, libdfftpack.so, and
Eric> libtoms715.so.
Yes, that's correct. I don't have a way to test with acl, so that
part no longer works with acl. The new structure doesn't generate
libmatlisp.so anymore; you loaded the correct files.
Patches would be most appreciated for this.
Eric> After making those changes, I loaded start.lisp from Allegro. There were
Eric> some compile warnings, but nothing looked too major. I was then able to
Eric> make matrices using MAKE-REAL-MATRIX, but whenever any code tried to use
Eric> a Fortran function an error was signaled. The following error was given
Eric> when I tried to evaluate (eye 2):
Ah, this might be an issue the FFI. That may have been messed up. I
think acl has a fortran option for the ffi which we may (or may not)
be using correctly.
This will require some investigation.
Ray
|
|
From: Eric T. <eti...@MI...> - 2011-05-25 23:13:52
|
I can definitely write something up on how to install on Windows. My solution was a little hackish so expect to see something once I've gone back to try and make it better. I am using the full version of Allegro 8.1 on both the Windows and Ubuntu machines. -Eric On 5/24/2011 11:06 AM, Raymond Toy wrote: >>>>>> "Eric" == Eric Timmons<eti...@MI...> writes: > > Eric> Hi all, > Eric> I've managed to get matlisp working on windows, but I also need to get > > That's fantastic! I've never personally done that and wasn't really > expecting the current version to build on windows. Did you need to do > anything special? If so, can you provide some hints on how to do > that? Or better yet, if you have a sourceforge account, edit the trac > page for matlisp at http://sourceforge.net/apps/trac/matlisp. > > Eric> it working on a linux distro as well. Specifically I'm working on Ubuntu > Eric> 10.04 with allegro CL 8.1 (64-bit if that matters). > > IIRC, the free Allegro limits are too low to build matlisp. Are you > using the full version? > > Eric> I got the latest version of matlisp from git and followed the > Eric> instructions in the INSTALL file. I noticed some bugs while compiling, > Eric> though. The makefile attempted to install LAPACK before BLAS and it > Eric> (understandably) got unhappy about that. I fixed that, then I noticed > > I'll look into that and fix it soon. > > Eric> that the file libmatlisp.so wasn't actually generated so I had to change > Eric> lazy-loader.lisp to load libblas.so, liblapack.so, libdfftpack.so, and > Eric> libtoms715.so. > > Yes, that's correct. I don't have a way to test with acl, so that > part no longer works with acl. The new structure doesn't generate > libmatlisp.so anymore; you loaded the correct files. > > Patches would be most appreciated for this. > > Eric> After making those changes, I loaded start.lisp from Allegro. There were > Eric> some compile warnings, but nothing looked too major. I was then able to > Eric> make matrices using MAKE-REAL-MATRIX, but whenever any code tried to use > Eric> a Fortran function an error was signaled. The following error was given > Eric> when I tried to evaluate (eye 2): > > Ah, this might be an issue the FFI. That may have been messed up. I > think acl has a fortran option for the ffi which we may (or may not) > be using correctly. > > This will require some investigation. > > Ray > > > ------------------------------------------------------------------------------ > vRanger cuts backup time in half-while increasing security. > With the market-leading solution for virtual backup and recovery, > you get blazing-fast, flexible, and affordable data protection. > Download your free trial now. > http://p.sf.net/sfu/quest-d2dcopy1 > _______________________________________________ > Matlisp-users mailing list > Mat...@li... > https://lists.sourceforge.net/lists/listinfo/matlisp-users |
|
From: Raymond T. <toy...@gm...> - 2011-05-26 14:30:44
|
>>>>> "Eric" == Eric Timmons <eti...@MI...> writes:
Eric> I can definitely write something up on how to install on Windows. My
Eric> solution was a little hackish so expect to see something once I've gone
Eric> back to try and make it better.
That would be great!
Eric> I am using the full version of Allegro 8.1 on both the Windows and
Eric> Ubuntu machines.
Can you send me a patch for lazy-loader.lisp.in to support Allegro? I
have an idea of what it should be, but I'd like to compare it with
what you did.
Ray
|
|
From: Eric T. <eti...@MI...> - 2011-05-27 20:07:08
Attachments:
0002-lazy-loader.lisp.in-for-Allegro.patch
|
Here's the patch for the version of lazy-loader I'm currently using. You can see a bit of the hackishness I mentioned earlier for the stuff dealing with Windows. I'm not too familiar with using linkers and the one I used (from MinGW) produced a DLL without absolute pathnames to some of the dependencies, hence the need to actually chdir into the folder with the dll I'm trying to load. That's what I'm going to hopefully fix before writing the info on installing on Windows. I didn't have to put any extra arguments into the load function for either Ubuntu or Windows. Perhaps that's where some of my problems come from. -Eric On 5/26/2011 10:30 AM, Raymond Toy wrote: >>>>>> "Eric" == Eric Timmons<eti...@MI...> writes: > > Eric> I can definitely write something up on how to install on Windows. My > Eric> solution was a little hackish so expect to see something once I've gone > Eric> back to try and make it better. > > That would be great! > > Eric> I am using the full version of Allegro 8.1 on both the Windows and > Eric> Ubuntu machines. > > Can you send me a patch for lazy-loader.lisp.in to support Allegro? I > have an idea of what it should be, but I'd like to compare it with > what you did. > > Ray > > > ------------------------------------------------------------------------------ > vRanger cuts backup time in half-while increasing security. > With the market-leading solution for virtual backup and recovery, > you get blazing-fast, flexible, and affordable data protection. > Download your free trial now. > http://p.sf.net/sfu/quest-d2dcopy1 > _______________________________________________ > Matlisp-users mailing list > Mat...@li... > https://lists.sourceforge.net/lists/listinfo/matlisp-users |
|
From: Raymond T. <toy...@gm...> - 2011-06-08 17:53:01
|
On 5/27/11 4:06 PM, Eric Timmons wrote: > Here's the patch for the version of lazy-loader I'm currently using. > You can see a bit of the hackishness I mentioned earlier for the stuff > dealing with Windows. I'm not too familiar with using linkers and the > one I used (from MinGW) produced a DLL without absolute pathnames to > some of the dependencies, hence the need to actually chdir into the > folder with the dll I'm trying to load. That's what I'm going to > hopefully fix before writing the info on installing on Windows. > > I didn't have to put any extra arguments into the load function for > either Ubuntu or Windows. Perhaps that's where some of my problems > come from. (Sorry for the delay.) I've committed your patch as is. I can't test it out, but I hope you can verify that it works still. Could you tell me what the value of share_ext is? That would allow some simplification of code to let configure tell us what extension to use. Ray |