2010/4/7 Schwab,Wilhelm K <bschwab@anest.ufl.edu>:
Nicolas,
I tried, and it has not been smooth. Â What exactly do you mean by the library path? Â Perhaps the easiest way to answer my question is to tell me which libraries should be found there. Â Will the vm no longer use absolute paths in #moduleName?
Not smooth is not very informative... I mean the library path to your own .so you want to call with FFI I don't know if providing the absolute path as module name still work... Not sure at all. See http://www.squeakvm.org/cgi-bin/viewcvs.cgi/trunk/platforms/unix/vm/sqUnixEx... In ioLoadModule, these lines indicate where your .so was searched for in previous version, but it is now obsolete (see the #if 1 , #else directive): if (( handle= tryLoading( "./", pluginName)) || (handle= tryLoadingPath("SQUEAK_PLUGIN_PATH", pluginName)) || (handle= tryLoading( VM_LIBDIR"/", pluginName)) || (handle= tryLoadingPath("LD_LIBRARY_PATH", pluginName)) || (handle= tryLoading( "", pluginName)) # if defined(VM_X11DIR) || (handle= tryLoading(VM_X11DIR"/", pluginName)) # endif ) return handle; Current version only tries: /* try loading {pluginPaths}/MODULE_PREFIX<name>MODULE_SUFFIX */ then: /* try dlopen()ing LIBRARY_PREFIX<name>LIBRARY_SUFFIX searching only the default locations modulo LD_LIBRARY_PATH et al */ I don't know where is defined the extern char *squeakPlugins; For the macros, it has to be some cmake thing: http://www.squeakvm.org/cgi-bin/viewcvs.cgi/trunk/platforms/unix/vm/config.c... SET (CMAKE_SHARED_MODULE_PREFIX "so.") SET (CMAKE_SHARED_MODULE_SUFFIX "") so no chance to find your own lib with first alternative. For the second one, too late for me to track down, beside, I don't want to learn anything more about cmake ;). Good luck Nicolas
I moved on to the RC3 one-click image and am trying to figure out how to point its vm at my image - can't hurt.
Bill
-----Original Message----- From: pharo-project-bounces@lists.gforge.inria.fr [mailto:pharo-project-bounces@lists.gforge.inria.fr] On Behalf Of Nicolas Cellier Sent: Tuesday, April 06, 2010 5:07 PM To: Pharo-project@lists.gforge.inria.fr Subject: Re: [Pharo-project] FFI+Linux+double return value
2010/4/6 Schwab,Wilhelm K <bschwab@anest.ufl.edu>:
Hello all,
I built (I think) a 2151 vm, but I can't run it. Â It keeps complaining that it can't find the X11 display driver. Â What am I missing about the command line options? Â I generally try to use
 /full-path-to-vm/squeakvm options /full-path-to-image
Help??
Bill
Unless you add some specific home made plugin, you should better use latest squeak vm, after setting the LD_LIBRARY_PATH to point to your library path. Did you try ?
Nicolas
-----Original Message----- From: pharo-project-bounces@lists.gforge.inria.fr [mailto:pharo-project-bounces@lists.gforge.inria.fr] On Behalf Of Schwab,Wilhelm K Sent: Tuesday, April 06, 2010 3:05 PM To: Pharo-project@lists.gforge.inria.fr; The general-purpose Squeak developers list Subject: Re: [Pharo-project] FFI+Linux+double return value
Nicolas,
I am running this on Ubuntu (9.10) and have been using the Pharo 0.15.2f vm. Â I just tried a Squeak vm (3.11-3) and could not get it to load my library. Â I have been using an absolute path the the .so; could that be the problem with the Squeak vm??
There has been a lot of discussion of the Pharo Linux vm lately, with some links and corrections, so I'll have to look around a little.
You asked if I can check the vm sources; the concern is whether or not I will have anything to add :) Â Is there something specific you want me to do?
Bill
-----Original Message----- From: pharo-project-bounces@lists.gforge.inria.fr [mailto:pharo-project-bounces@lists.gforge.inria.fr] On Behalf Of Schwab,Wilhelm K Sent: Tuesday, April 06, 2010 1:46 PM To: Pharo-project@lists.gforge.inria.fr; The general-purpose Squeak developers list Subject: [Pharo-project] FFI+Linux+double return value
Hello all,
I had some strange results with double return values and boiled it down to a C function
Double AnyDouble() { Â Â Â Â return 1.0; }
called via
 anyDouble  < cdecl: double 'AnyDouble' () >
and driven by
| out | out := Array writeStream. 100 timesRepeat:[ Â out nextPut:Library default anyDouble ]. out contents.
The results are not good. Â It works for the first three elements, after which it produces NaN. Â The real problem appears to be comparison of floats being broken after that point, as evidenced by a walkback that arises when trying to inspect the resulting collection - exploring it works.
I need to try this on the latest image/vm, but wanted to start gathering opinions. Â Any ideas?
Bill
_______________________________________________ Pharo-project mailing list Pharo-project@lists.gforge.inria.fr http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
_______________________________________________ Pharo-project mailing list Pharo-project@lists.gforge.inria.fr http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
_______________________________________________ Pharo-project mailing list Pharo-project@lists.gforge.inria.fr http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
_______________________________________________ Pharo-project mailing list Pharo-project@lists.gforge.inria.fr http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
_______________________________________________ Pharo-project mailing list Pharo-project@lists.gforge.inria.fr http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project