Joe, thanks. Your suggestion seems to work.
However JGets seems to not exist.How do I then get the variable, once assigned?
I tried to search through the .so/.dll for "get" functions:

nm -g libj.so | grep Get
Although jdll.ijs seems to contain jget, when I tried to call this (in Python)  
 I get " undefined symbol: jget" (with variations on upper and lower cases)




and couldn't find a function that seemed to get the variables.Also I'm having 
trouble finding libj.dll
> Date: Fri, 18 Jul 2014 10:36:06 -0400
> From: [email protected]
> To: [email protected]
> Subject: Re: [Jprogramming] Calling j.dll from python
> 
> JInit() returns the instance that you need to invoke against
> 
> see addons/general/misc/jdll.ijs
> 
> jdo is defined as:
> 
> jdo=: 3 : 0
> 
> (libj,' JDo i x *c') cd pJ, boxopen y
> 
> )
> 
> 
> so I suspect you need to be passing that pointer address with python too...
> 
> 
> jt =  j.JInit()
> 
> j.JDo(jt, "x =: 3")
> 
> 
> [untested]
> 
> 
> 
> 
> 
> 
> On Fri, Jul 18, 2014 at 10:33 AM, Thomas Costigliola <[email protected]>
> wrote:
> 
> > Bill, Jon, sorry if that suggestion did not apply. I remembered it was a
> > common pitfall when calling from C. Maybe that is not the case now.
> >
> >
> > On Fri, Jul 18, 2014 at 10:29 AM, Jon Hough <[email protected]> wrote:
> >
> > > My previous email was regarding Windows (7 with J801)
> > > I just tried to do the same in Ubuntu (J801)
> > > cdll.LoadLibrary("j801/bin/libj.so")
> > >  j = CDLL("j801/bin/libj.so")>>> j.JInit()158010848
> > > No idea what the above output means. Is that the pointer address of
> > > something?
> > > And then:
> > > >>> j.JDo("x =: 3")Segmentation fault (core dumped)
> > > And Python (2.7) crashed.
> > >
> > > > Date: Fri, 18 Jul 2014 22:09:28 +0800
> > > > From: [email protected]
> > > > To: [email protected]
> > > > Subject: Re: [Jprogramming] Calling j.dll from python
> > > >
> > > > From which resource did you learn that(not python)? It should be very
> > out
> > > > dated.
> > > > On Jul 18, 2014 6:00 PM, "Jon Hough" <[email protected]> wrote:
> > > >
> > > > > I am trying to call jdll.JDo from python but I get the error message,
> > > > > access violation.
> > > > >
> > > > > Here is my python.
> > > > >
> > > > > Cdll.LoadLibrary(path to j.dll)
> > > > > J =CDLL(path to j.dll)
> > > > >
> > > > > J.JDo("x =: i. 3")
> > > > >
> > > > > This gives am error. In fact any string gives the error.
> > > > >
> > > > > J.JGet doesnt seem to give errors, but since I cannot set any j
> > > variables,
> > > > > it is not easy to test.
> > > > >
> > > > >
> > ----------------------------------------------------------------------
> > > > > For information about J forums see
> > http://www.jsoftware.com/forums.htm
> > > > >
> > > > ----------------------------------------------------------------------
> > > > For information about J forums see http://www.jsoftware.com/forums.htm
> > >
> > > ----------------------------------------------------------------------
> > > For information about J forums see http://www.jsoftware.com/forums.htm
> > >
> > ----------------------------------------------------------------------
> > For information about J forums see http://www.jsoftware.com/forums.htm
> >
> ----------------------------------------------------------------------
> For information about J forums see http://www.jsoftware.com/forums.htm
                                          
----------------------------------------------------------------------
For information about J forums see http://www.jsoftware.com/forums.htm

Reply via email to