I look at it some time ago, and had some problems with pointer errors.<br><br>I decided to use an JSON gw instead.<br><br>If any interrest Ill be happy to share!<br> kr<br> Tommy<br><br><div class="gmail_quote">On Wed, Mar 31, 2010 at 3:23 PM, DmitriKo <span dir="ltr">&lt;<a href="mailto:dmitrikozhevin@gmail.com">dmitrikozhevin@gmail.com</a>&gt;</span> wrote:<br>
<blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">Hey, Kenny.<br>
<br>
I offer to stop wasting your time on that cool by marginal solution.<br>
<br>
Please use old good tools for inter program communication.<br>
<br>
$ perl <a href="http://test.pm" target="_blank">test.pm</a> | python test.py<br>
<br>
as example where output from <a href="http://test.pm" target="_blank">test.pm</a> come to sys.stdin in python test.py<br>
<br>
use json, xml, text ... with easy.<br>
<br>
--<br>
DmitriKo<br>
<div><div></div><div class="h5"><br>
On Wed, Mar 31, 2010 at 4:01 PM, Kenny &lt;<a href="mailto:zhaowenliangpolyu@gmail.com">zhaowenliangpolyu@gmail.com</a>&gt; wrote:<br>
&gt; Dear all,<br>
&gt;<br>
&gt; I have a question about pyperl.<br>
&gt;<br>
&gt; there is a perl module <a href="http://test.pm" target="_blank">test.pm</a>:<br>
&gt; #! /usr/bin/perl<br>
&gt; package tset<br>
&gt; sub Cal {<br>
&gt; my ($v1,$v2)=@_;<br>
&gt; my $result=$v1+$v2;<br>
&gt; }<br>
&gt; print &quot;this is a test \n&quot;;<br>
&gt; 1;<br>
&gt;<br>
&gt; And there is a python file that calls the module above,<br>
&gt; import perl<br>
&gt; perl.require(&quot;test&quot;);<br>
&gt; #perl.call(&quot;Usage&quot;,&quot;<a href="http://test1.pl" target="_blank">test1.pl</a>&quot;)<br>
&gt; #perl.call(&quot;test::Usage&quot;, &quot;1&quot;)<br>
&gt; b=perl.call(&quot;test::Cal&quot;, 1, 1)<br>
&gt; print b<br>
&gt;<br>
&gt; when run, I got a error message shown below: (can anyone tell me the reason?<br>
&gt; many thanks)<br>
&gt; ##################################error message####################<br>
&gt; kenny@kenny-laptop:~/Desktop$ python test.py<br>
&gt; it is a test<br>
&gt; 2<br>
&gt; *** glibc detected *** python: free(): invalid pointer: 0xb7d7b1a0 ***<br>
&gt; ======= Backtrace: =========<br>
&gt; /lib/tls/i686/cmov/libc.so.6[0xb7e02a85]<br>
&gt; /lib/tls/i686/cmov/libc.so.6(cfree+0x90)[0xb7e064f0]<br>
&gt; /usr/lib/python2.5/site-packages/perl2.so[0xb7cc772d]<br>
&gt; python[0x80855a9]<br>
&gt; python(PyDict_SetItem+0x6e)[0x8086f8e]<br>
&gt; python(_PyModule_Clear+0x158)[0x8088bf8]<br>
&gt; python(PyImport_Cleanup+0x152)[0x80de3d2]<br>
&gt; python(Py_Finalize+0xbf)[0x80ea41f]<br>
&gt; python(Py_Main+0x468)[0x8058d68]<br>
&gt; python(main+0x22)[0x80587f2]<br>
&gt; /lib/tls/i686/cmov/libc.so.6(__libc_start_main+0xe0)[0xb7dad450]<br>
&gt; python[0x8058761]<br>
&gt; ======= Memory map: ========<br>
&gt; 08048000-08140000 r-xp 00000000 08:05 2613978    /usr/bin/python2.5<br>
&gt; 08140000-08165000 rw-p 000f7000 08:05 2613978    /usr/bin/python2.5<br>
&gt; 08165000-08284000 rw-p 08165000 00:00 0          [heap]<br>
&gt; b7900000-b7921000 rw-p b7900000 00:00 0<br>
&gt; b7921000-b7a00000 ---p b7921000 00:00 0<br>
&gt; b7a44000-b7a4e000 r-xp 00000000 08:05 1409036    /lib/libgcc_s.so.1<br>
&gt; b7a4e000-b7a4f000 rw-p 0000a000 08:05 1409036    /lib/libgcc_s.so.1<br>
&gt; b7a5b000-b7a68000 r-xp 00000000 08:05 3008570<br>
&gt; /usr/local/lib/perl/5.8.8/auto/Python/Object/Object.so<br>
&gt; b7a68000-b7a69000 rw-p 0000c000 08:05 3008570<br>
&gt; /usr/local/lib/perl/5.8.8/auto/Python/Object/Object.so<br>
&gt; b7a69000-b7a8a000 rw-p b7a69000 00:00 0<br>
&gt; b7a8a000-b7b6b000 r--p 00000000 08:05 2638705<br>
&gt; /usr/lib/locale/en_US.utf8/LC_COLLATE<br>
&gt; b7b6b000-b7b74000 r-xp 00000000 08:05 1426495<br>
&gt; /lib/tls/i686/cmov/<a href="http://libcrypt-2.7.so" target="_blank">libcrypt-2.7.so</a><br>
&gt; b7b74000-b7b76000 rw-p 00008000 08:05 1426495<br>
&gt; /lib/tls/i686/cmov/<a href="http://libcrypt-2.7.so" target="_blank">libcrypt-2.7.so</a><br>
&gt; b7b76000-b7b9d000 rw-p b7b76000 00:00 0<br>
&gt; b7b9d000-b7cb8000 r-xp 00000000 08:05 2613267    /usr/lib/libperl.so.5.8.8<br>
&gt; b7cb8000-b7cbd000 rw-p 0011a000 08:05 2613267    /usr/lib/libperl.so.5.8.8<br>
&gt; b7cbd000-b7cbf000 rw-p b7cbd000 00:00 0<br>
&gt; b7cbf000-b7ccb000 r-xp 00000000 08:05 705539<br>
&gt; /usr/lib/python2.5/site-packages/perl2.so<br>
&gt; b7ccb000-b7ccc000 rw-p 0000b000 08:05 705539<br>
&gt; /usr/lib/python2.5/site-packages/perl2.so<br>
&gt; b7ccc000-b7ccd000 r-xp 00000000 08:05 705537<br>
&gt; /usr/lib/python2.5/site-packages/perl.so<br>
&gt; b7ccd000-b7cce000 rw-p 00000000 08:05 705537<br>
&gt; /usr/lib/python2.5/site-packages/perl.so<br>
&gt; b7cce000-b7cd5000 r--s 00000000 08:05 2622378<br>
&gt; /usr/lib/gconv/gconv-modules.cache<br>
&gt; b7cd5000-b7d14000 r--p 00000000 08:05 2638706<br>
&gt; /usr/lib/locale/en_US.utf8/LC_CTYPE<br>
&gt; b7d14000-b7d97000 rw-p b7d14000 00:00 0<br>
&gt; b7d97000-b7ee0000 r-xp 00000000 08:05 1426493<br>
&gt; /lib/tls/i686/cmov/<a href="http://libc-2.7.so" target="_blank">libc-2.7.so</a><br>
&gt; b7ee0000-b7ee1000 r--p 00149000 08:05 1426493<br>
&gt; /lib/tls/i686/cmov/<a href="http://libc-2.7.so" target="_blank">libc-2.7.so</a><br>
&gt; b7ee1000-b7ee3000 rw-p 0014a000 08:05 1426493<br>
&gt; /lib/tls/i686/cmov/<a href="http://libc-2.7.so" target="_blank">libc-2.7.so</a><br>
&gt; b7ee3000-b7ee6000 rw-p b7ee3000 00:00 0<br>
&gt; b7ee6000-b7f09000 r-xp 00000000 08:05 1426497<br>
&gt; /lib/tls/i686/cmov/<a href="http://libm-2.7.so" target="_blank">libm-2.7.so</a><br>
&gt; b7f09000-b7f0b000 rw-p 00023000 08:05 1426497<br>
&gt; /lib/tls/i686/cmov/<a href="http://libm-2.7.so" target="_blank">libm-2.7.so</a><br>
&gt; b7f0b000-b7f0d000 r-xp 00000000 08:05 1426512<br>
&gt; /lib/tls/i686/cmov/<a href="http://libutil-2.7.so" target="_blank">libutil-2.7.so</a><br>
&gt; b7f0d000-b7f0f000 rw-p 00001000 08:05 1426512<br>
&gt; /lib/tls/i686/cmov/<a href="http://libutil-2.7.so" target="_blank">libutil-2.7.so</a><br>
&gt; b7f0f000-b7f10000 rw-p b7f0f000 00:00 0<br>
&gt; b7f10000-b7f12000 r-xp 00000000 08:05 1426496<br>
&gt; /lib/tls/i686/cmov/<a href="http://libdl-2.7.so" target="_blank">libdl-2.7.so</a><br>
&gt; b7f12000-b7f14000 rw-p 00001000 08:05 1426496<br>
&gt; /lib/tls/i686/cmov/<a href="http://libdl-2.7.so" target="_blank">libdl-2.7.so</a><br>
&gt; b7f14000-b7f28000 r-xp 00000000 08:05 1426507<br>
&gt; /lib/tls/i686/cmov/<a href="http://libpthread-2.7.so" target="_blank">libpthread-2.7.so</a><br>
&gt; b7f28000-b7f2a000 rw-p 00013000 08:05 1426507<br>
&gt; /lib/tls/i686/cmov/<a href="http://libpthread-2.7.so" target="_blank">libpthread-2.7.so</a><br>
&gt; b7f2a000-b7f2c000 rw-p b7f2a000 00:00 0<br>
&gt; b7f2d000-b7f2e000 rw-p b7f2d000 00:00 0<br>
&gt; b7f2e000-b7f2f000 r--p 00000000 08:05 2638723<br>
&gt; /usr/lib/locale/en_US.utf8/LC_NUMERIC<br>
&gt; b7f2f000-b7f30000 r--p 00000000 08:05 2637982<br>
&gt; /usr/lib/locale/en_US.utf8/LC_TIME<br>
&gt; b7f30000-b7f31000 r--p 00000000 08:05 2637983<br>
&gt; /usr/lib/locale/en_US.utf8/LC_MONETARY<br>
&gt; b7f31000-b7f32000 r--p 00000000 08:05 2646018<br>
&gt; /usr/lib/locale/en_US.utf8/LC_MESSAGES/SYS_LC_MESSAGES<br>
&gt; b7f32000-b7f33000 r--p 00000000 08:05 2638724<br>
&gt; /usr/lib/locale/en_US.utf8/LC_PAPER<br>
&gt; b7f33000-b7f34000 r--p 00000000 08:05 2638722<br>
&gt; /usr/lib/locale/en_US.utf8/LC_NAME<br>
&gt; b7f34000-b7f35000 r--p 00000000 08:05 2637984<br>
&gt; /usr/lib/locale/en_US.utf8/LC_ADDRESS<br>
&gt; b7f35000-b7f36000 r--p 00000000 08:05 2637985<br>
&gt; /usr/lib/locale/en_US.utf8/LC_TELEPHONE<br>
&gt; b7f36000-b7f37000 r--p 00000000 08:05 2637986<br>
&gt; /usr/lib/locale/en_US.utf8/LC_MEASUREMENT<br>
&gt; b7f37000-b7f38000 r--p 00000000 08:05 2637987<br>
&gt; /usr/lib/locale/en_US.utf8/LC_IDENTIFICATION<br>
&gt; b7f38000-b7f3a000 rw-p b7f38000 00:00 0<br>
&gt; b7f3a000-b7f3b000 r-xp b7f3a000 00:00 0          [vdso]<br>
&gt; b7f3b000-b7f55000 r-xp 00000000 08:05 1409643    /lib/<a href="http://ld-2.7.so" target="_blank">ld-2.7.so</a><br>
&gt; b7f55000-b7f57000 rw-p 00019000 08:05 1409643    /lib/<a href="http://ld-2.7.so" target="_blank">ld-2.7.so</a><br>
&gt; bfb9e000-bfbb3000 rw-p bffeb000 00:00 0          [stack]<br>
&gt; Aborted<br>
&gt;<br>
&gt; --<br>
&gt; Best regards,<br>
&gt;<br>
&gt; Kenny<br>
&gt;<br>
</div></div>&gt; _______________________________________________<br>
&gt; Zope-perl maillist  -  <a href="mailto:Zope-perl@zope.org">Zope-perl@zope.org</a><br>
&gt; <a href="https://mail.zope.org/mailman/listinfo/zope-perl" target="_blank">https://mail.zope.org/mailman/listinfo/zope-perl</a><br>
&gt;<br>
&gt;<br>
_______________________________________________<br>
Zope-perl maillist  -  <a href="mailto:Zope-perl@zope.org">Zope-perl@zope.org</a><br>
<a href="https://mail.zope.org/mailman/listinfo/zope-perl" target="_blank">https://mail.zope.org/mailman/listinfo/zope-perl</a><br>
</blockquote></div><br><br clear="all"><br>-- <br>Tommy Ditlev Henriksen<br>email: <a href="mailto:tommyditlev@gmail.com">tommyditlev@gmail.com</a><br>