<html><head><meta http-equiv="content-type" content="text/html; charset=utf-8"></head><body dir="auto"><div></div><div>Hello,</div><div><br></div><div>You are using the release source tar ball? Please try the git repo's master branch as much has changed with R since then. </div><div><br>On Apr 10, 2016, at 7:56 PM, Mathew Guilfoyle <<a href="mailto:mrguilfoyle@gmail.com">mrguilfoyle@gmail.com</a>> wrote:<br><br></div><blockquote type="cite"><div>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">Richard<div class=""><br class=""></div><div class="">It seems it must be something specific to my setup. I ran your example and get the same hard abort in Rstudio. Running the example in R.app I get the same error but a somewhat more graceful crash with the following error message:</div><div class=""><br class=""></div><div class=""><div class=""><font face="Menlo" class="">gaussian$AddCommand( 'sitkStartEvent', f1 )</font></div><div class=""><font face="Menlo" class=""><br class=""></font></div><div class=""><font face="Menlo" color="#ff2600" class=""> *** caught segfault ***</font></div><div class=""><font face="Menlo" color="#ff2600" class="">address 0x7ff511000080, cause 'memory not mapped'</font></div><div class=""><font face="Menlo" color="#ff2600" class=""><br class=""></font></div><div class=""><font face="Menlo" color="#ff2600" class="">Traceback:</font></div><div class=""><font face="Menlo" color="#ff2600" class=""> 1: .Call("R_swig_ProcessObject_AddCommand", self, event, cmd, as.logical(.copy), PACKAGE = "SimpleITK")</font></div><div class=""><font face="Menlo" color="#ff2600" class=""> 2: f(x, ...)</font></div><div class=""><font face="Menlo" color="#ff2600" class=""> 3: gaussian$AddCommand("sitkStartEvent", f1)</font></div><div class=""><font face="Menlo" color="#ff2600" class=""><br class=""></font></div><div class=""><font face="Menlo" color="#ff2600" class="">Possible actions:</font></div><div class=""><font face="Menlo" color="#ff2600" class="">1: abort (with core dump, if enabled)</font></div><div class=""><font face="Menlo" color="#ff2600" class="">2: normal R exit</font></div><div class=""><font face="Menlo" color="#ff2600" class="">3: exit R without saving workspace</font></div><div class=""><font face="Menlo" color="#ff2600" class="">4: exit R saving workspace</font></div><div class=""><br class=""></div><div class="">I have tried the version of SimpleITK built without the version of SWIG you patched to correct the character argument error, again I get the same behaviour. </div><div class=""><br class=""></div><div class="">Bradley - I’m using the latest SimpleITK 0.9 source compiled using the super build on OS X 10.11. I’ve done the build with the supplied SWIG and with a version patched by Richard and available here: <a href="https://github.com/richardbeare/swig.git" class="">https://github.com/richardbeare/swig.git</a>. I’m funning R 3.2.4 in Rstudio IDE.</div><div class=""><br class=""></div><div class=""><br class=""></div><div class=""><br class=""></div><div><blockquote type="cite" class=""><div class="">On 10 Apr 2016, at 23:17, Bradley Lowekamp <<a href="mailto:brad@lowekamp.net" class="">brad@lowekamp.net</a>> wrote:</div><br class="Apple-interchange-newline"><div class=""><div class="">Hello,<br class=""><br class="">I would like to know your environment. <br class=""><br class="">What version of SimpleITK? R? OS? Compiler? Did you use simpleITK's super build? If not what version of SWIG?<br class=""><br class="">Thanks<br class=""><br class=""><blockquote type="cite" class="">On Apr 10, 2016, at 9:46 AM, Mathew Guilfoyle <<a href="mailto:mrguilfoyle@gmail.com" class="">mrguilfoyle@gmail.com</a>> wrote:<br class=""><br class="">Richard<br class=""><br class="">Thanks for the reply. I hadn't appreciated that function being passed in the registration example was a closure. However, in the FiterProgressReporting example it is not a closure. <br class=""><br class="">I have modified my code to be a closure but still get a crash/abort; I have also run the code in the examples themselves verbatim and get the same problem.<br class=""><br class="">Any further ideas on how to get this working?<br class=""><br class="">Cheers <br class=""><br class=""><br class=""><blockquote type="cite" class="">On 10 Apr 2016, at 02:10, Mathew Guilfoyle <<a href="mailto:mrguilfoyle@gmail.com" class="">mrguilfoyle@gmail.com</a>> wrote:<br class=""><br class="">There seems to be a problem with using the $AddCommand function to ImageRegistrationMethod objects in the R wrapping to SimpleITK.<br class=""><br class="">Using R 3.2.4 on OS X 10.11<br class=""><br class="">Example:<br class=""><br class="">f <- function(x){print(x$GetMetricValue())}<br class=""><br class="">registration = ImageRegistrationMethod()<br class=""><br class="">registration$AddCommand(‘sitkIterationEvent’, f(registration))<br class=""><br class="">This last line causes R to abort/hard crash (no error message). This behaviour is irrespective of which event type I use or the function passed as the second argument (e.g. even something simple like print(‘Hello’))<br class=""><br class="">The AddCommand method is inherited from the SimpleITK ProcessObject type. Digging around in the SimpleITK.R file I can see that the ProcessObject$AddCommand method expects a second argument of type ‘_p_itk__simple__Command’.<br class=""><br class="">There is a ‘Command’ method that generates a new object of type ‘_p_itk__simple__Command’. If I pass this resulting object as the second argument to registration$AddCommand then I do not get an error. However, there doesn’t seem to be any way to point the ‘_p_itk__simple__Command’ object to my function or otherwise convert my function to a ‘_p_itk__simple__Command’ type.<br class=""><br class="">The $AddCommand method is used in a couple of example scripts on the SimpleITK site (using it for monitoring a registration and a filter e.g. <a href="https://github.com/SimpleITK/SimpleITK/blob/master/Examples/FilterProgressReporting.R" class="">https://github.com/SimpleITK/SimpleITK/blob/master/Examples/FilterProgressReporting.R</a>) so I don’t know if it was working previously and a bug has been introduced more recently? (the example scripts cause the same error when I run them now)<br class=""></blockquote><br class="">_____________________________________<br class="">Powered by <a href="http://www.kitware.com" class="">www.kitware.com</a><br class=""><br class="">Visit other Kitware open-source projects at<br class=""><a href="http://www.kitware.com/opensource/opensource.html" class="">http://www.kitware.com/opensource/opensource.html</a><br class=""><br class="">Kitware offers ITK Training Courses, for more information visit:<br class=""><a href="http://www.kitware.com/products/protraining.php">http://www.kitware.com/products/protraining.php</a><br class=""><br class="">Please keep messages on-topic and check the ITK FAQ at:<br class=""><a href="http://www.itk.org/Wiki/ITK_FAQ">http://www.itk.org/Wiki/ITK_FAQ</a><br class=""><br class="">Follow this link to subscribe/unsubscribe:<br class=""><a href="http://public.kitware.com/mailman/listinfo/insight-users">http://public.kitware.com/mailman/listinfo/insight-users</a><br class=""></blockquote></div></div></blockquote></div><br class=""></div></div></blockquote><blockquote type="cite"><div><span>_____________________________________</span><br><span>Powered by <a href="http://www.kitware.com">www.kitware.com</a></span><br><span></span><br><span>Visit other Kitware open-source projects at</span><br><span><a href="http://www.kitware.com/opensource/opensource.html">http://www.kitware.com/opensource/opensource.html</a></span><br><span></span><br><span>Kitware offers ITK Training Courses, for more information visit:</span><br><span><a href="http://www.kitware.com/products/protraining.php">http://www.kitware.com/products/protraining.php</a></span><br><span></span><br><span>Please keep messages on-topic and check the ITK FAQ at:</span><br><span><a href="http://www.itk.org/Wiki/ITK_FAQ">http://www.itk.org/Wiki/ITK_FAQ</a></span><br><span></span><br><span>Follow this link to subscribe/unsubscribe:</span><br><span><a href="http://public.kitware.com/mailman/listinfo/insight-users">http://public.kitware.com/mailman/listinfo/insight-users</a></span><br></div></blockquote></body></html>