2015-05-06 9:57 GMT+02:00 Usman Bhatti <usman.bhatti@gmail.com>:
On Tue, May 5, 2015 at 7:54 PM, Thierry Goubier <thierry.goubier@gmail.com
wrote:
Le 05/05/2015 18:28, Usman Bhatti a écrit :
I succeeded to do it by encapsulating the C routine as a DLL and doing an FFI call from my image (as suggested by Guille).
I also tried to perform the nativeboost call by creating my structures in Pharo. The function in Windows that can be used to retrieve mac address in Windows: GetAdaptersInfo < https://msdn.microsoft.com/en-us/library/windows/desktop/aa365917%28v=vs.85%...> that accepts a PIP_ADAPTER_INFO < https://msdn.microsoft.com/en-us/library/windows/desktop/aa366062(v=vs.85).a...> structure. I subclassed NBExternalStructure to define this struct and the other used by it in the image but my NB call returned with 87 code (Invalid parameter) and it was impossible to debug. However, I would like to make this thing work to understand what went wrong.
With ProcessWrapper, I could not load the classes essential for making the plugin work.
ProcessWrapper is loaded with GitFileTree in Pharo3 and Pharo4.
Can you detail what doesn't work?
When doing:
Gofer it url: 'http://www.smalltalkhub.com/mc/hernan/ProcessWrapper/main'; package: 'ProcessWrapper-Core'; package: 'ProcessWrapper-Plugin'; package: 'ProcessWrapper-Tests'; load.
Plugin classes couldn't be loaded because they require SmartSyntaxInterpreterPlugin class. I found a few posts mentioning that the class should be present in the VMMaker but I didn't dig further.
Ok. Metacello new configuration: 'ProcessWrapper'; repository: 'http://smalltalkhub.com/mc/Pharo/MetaRepoForPhar40/Main'; load Is what I use. As far as I can see, ProcessWrapper-Plugin has little use; it contains only primitives which are in ProcessWrapper-Core. The plugin is automatically downloaded when you use the configuration, which means your Gofer script doesn't work. The configuration in the Meta repository is one version late compared to the Smalltalkhub repository configuration. Hernan, should I update the configuration in the Meta repository? Regards, Thierry
regards.
Thierry
HTH,
Usman
On Mon, May 4, 2015 at 2:54 PM, Ben Coman <btc@openinworld.com <mailto:btc@openinworld.com>> wrote:
As a complete newb to VM building I found this fairly straight forward (on a Mac btw). https://github.com/pharo-project/pharo-vm cheers -ben
On Mon, May 4, 2015 at 5:28 PM, Usman Bhatti <usman.bhatti@gmail.com <mailto:usman.bhatti@gmail.com>> wrote:
On Sun, May 3, 2015 at 4:22 PM, Pierce Ng <pierce@samadhiweb.com <mailto:pierce@samadhiweb.com>> wrote:
On Sat, May 02, 2015 at 03:55:47PM +0200, Usman Bhatti wrote: > 1/ OSProcess: I tried (PipeableOSProcess command: 'ipconfig /all') output.
I have used http://www.smalltalkhub.com/#!/~hernan/ProcessWrapper successfully back when I was on Windows using some now-ancient version of Pharo.
I had initially discarded the idea of using this project because it required a plugin and the information of the plugin was outdated on squeaksource. However, having evaluated superficially the complexity of doing it with nativeboost (because too many external c struct involved in the call), I would like to see if I am better off using this wrapper.
I loaded it with:
Gofer it url: ' http://www.smalltalkhub.com/mc/hernan/ProcessWrapper/main'; package: 'ProcessWrapper-Core'; package: 'ProcessWrapper-Plugin'; package: 'ProcessWrapper-Tests'; load.
But the plugins wont load because it requires the class SmartSyntaxInterpreterPlugin and apparently this file is a part of the VMMaker. Is there any recent config for VMMaker in Pharo because this one looks outdated:
http://pharo.gemtalksystems.com/book/Virtual-Machine/Building/VMMakerTool/
Pierce