On 12 April 2010 19:34, Andrew Dalke <da...@dalkescientific.com> wrote:
> On Apr 12, 2010, at 3:04 AM, Geoffrey Hutchison wrote:
>> You don't mention what version of OB you're using, but imply it's not the 
>> latest development code. I'd highly suggest using SVN trunk.
>
> That fails to work, in a much worse way than before.
>
> After working with Noel to update the build instructions for
> working out of SVN, and upgrading my copy of SWIG to 1.3.40
> I got everything built and installed. It doesn't work though.
> Here's my test case.
>
> [xavier:~/ftps/openchord] dalke% cat strange.py
> import openbabel
> obc = openbabel.OBConversion()
> obc.SetInFormat("smi")

SetInFormat should return true for success. Does it?

> mol = openbabel.OBMol()
> obc.ReadString(mol, "c1ccccc1O")
> print "Done."
>
> It crashes in ReadString, which I did by hand.
>
> [xavier:~/ftps/openchord] dalke% python strange.py
> Segmentation fault
>
>
> [xavier:~/ftps/openchord] dalke% gdb `which python`
> GNU gdb 6.3.50-20050815 (Apple version gdb-1346) (Fri Sep 18 20:40:51 UTC 
> 2009)
>  ... lines omitted ...
> (gdb) run strange.py
> Starting program: /usr/bin/python strange.py
> Reading symbols for shared libraries .++..... done
>
> Program received signal SIGTRAP, Trace/breakpoint trap.
> 0x00007fff5fc01028 in __dyld__dyld_start ()
> (gdb) cont
> Continuing.
> Reading symbols for shared libraries . done
> Reading symbols for shared libraries .. done
> Reading symbols for shared libraries ... done
> Reading symbols for shared libraries . done
>  ... many lines omitted ...
> Reading symbols for shared libraries . done
>
> Program received signal EXC_BAD_ACCESS, Could not access memory.
> Reason: KERN_INVALID_ADDRESS at address: 0x0000000000000090
> OpenBabel::SMIBaseFormat::ReadMolecule (this=<value temporarily unavailable, 
> due to optimizations>, pOb=<value temporarily unavailable, due to 
> optimizations>, pConv=0x1002791a0) at 
> /Users/dalke/cvses/ob-trunk/src/formats/smilesformat.cpp:282
> 282         pmol->SetDimension(0);
>
> To show some context
>
> (gdb) l
> 277           obErrorLog.ThrowError(__FUNCTION__,
> 278             smiles + " contained a character '" + smiles[pos] + "' which 
> is invalid in SMILES", obError);
> 279           return false;
> 280         }
> 281
> 282         pmol->SetDimension(0);
> 283         OBSmilesParser sp;
> 284
> 285         pos = smiles.find('>');
> 286         if(pos==string::npos)
>
>
> and it's a straight NULL pointer deference.
>
> (gdb) print pmol
> $1 = (class OpenBabel::OBMol *) 0x0
>
>
> The call stack.
>
> (gdb) where
> #0  OpenBabel::SMIBaseFormat::ReadMolecule (this=<value temporarily 
> unavailable, due to optimizations>, pOb=<value temporarily unavailable, due 
> to optimizations>, pConv=0x1002791a0) at 
> /Users/dalke/cvses/ob-trunk/src/formats/smilesformat.cpp:282
> #1  0x000000010146b8bc in OpenBabel::OBConversion::Read (this=0x1002791a0, 
> pOb=0x100293b70, pin=<value temporarily unavailable, due to optimizations>) 
> at /Users/dalke/cvses/ob-trunk/src/obconversion.cpp:747
> #2  0x000000010147083c in OpenBabel::OBConversion::ReadString 
> (this=0x1002791a0, pOb=0x100293b70, input=<value temporarily unavailable, due 
> to optimizations>) at /Users/dalke/cvses/ob-trunk/src/obconversion.cpp:895
> #3  0x0000000101155444 in _wrap_OBConversion_ReadString (args=<value 
> temporarily unavailable, due to optimizations>) at openbabel-python.cpp:17379
> #4  0x000000010000aff3 in PyObject_Call ()
> #5  0x000000010008a51a in PyEval_EvalFrameEx ()
> #6  0x000000010008acce in PyEval_EvalCodeEx ()
> #7  0x000000010008ad61 in PyEval_EvalCode ()
> #8  0x00000001000a265a in Py_CompileString ()
> #9  0x00000001000a2723 in PyRun_FileExFlags ()
> #10 0x00000001000a423d in PyRun_SimpleFileExFlags ()
> #11 0x00000001000b0286 in Py_Main ()
> #12 0x0000000100000e6c in ?? ()
>
>
> BTW, is there a way to get the version number from OpenBabel?
> In trying to get this all working I ran into snags where I was
> installed into the wrong directory, and I couldn't figure out
> a way to tell if the "import openbabel" I just installed was
> the right one, except by looking at the file timestamp.
>
> Ideally I would like to have a way to get the pybel.py,
> openbabel.py, and underlying shared library versions.
>
> To make sure I have the right extension modules (I
> wondered if I had a version mismatch), I include part
> of what Apple's crash reporter says:
>
>
>      0x101816000 -        0x101a3ffff +libopenbabel.4.dylib 4.0.0 
> (compatibility 4.0.0) <A1B64057-4A8A-520C-AD96-4227D6B58DF5> 
> /usr/local/lib/libopenbabel.4.dylib
>
>      0x1021ca000 -        0x1021e6ff7 +smilesformat.so ??? (???) 
> <7D01F338-7571-62B5-A8EE-53A1C2C62773> 
> /usr/local/lib/openbabel/2.2.99/smilesformat.so
>
>
> and some file stamps
>
> -rwxr-xr-x  1 root  wheel  3281376 Apr 12 20:19 
> /usr/local/lib/libopenbabel.4.0.0.dylib
> lrwxr-xr-x  1 root  wheel       24 Apr 12 15:22 
> /usr/local/lib/libopenbabel.4.dylib -> libopenbabel.4.0.0.dylib
>
> -rwxr-xr-x  1 root  wheel  211456 Apr 12 20:19 
> /usr/local/lib/openbabel/2.2.99/smilesformat.so
>
>
> You can see I do have the right shared library here.
>
>
>
>                                Andrew
>                                da...@dalkescientific.com
>
>
>
> ------------------------------------------------------------------------------
> Download Intel&#174; Parallel Studio Eval
> Try the new software tools for yourself. Speed compiling, find bugs
> proactively, and fine-tune applications for parallel performance.
> See why Intel Parallel Studio got high marks during beta.
> http://p.sf.net/sfu/intel-sw-dev
> _______________________________________________
> OpenBabel-Devel mailing list
> OpenBabel-Devel@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/openbabel-devel
>

------------------------------------------------------------------------------
Download Intel&#174; Parallel Studio Eval
Try the new software tools for yourself. Speed compiling, find bugs
proactively, and fine-tune applications for parallel performance.
See why Intel Parallel Studio got high marks during beta.
http://p.sf.net/sfu/intel-sw-dev
_______________________________________________
OpenBabel-Devel mailing list
OpenBabel-Devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/openbabel-devel

Reply via email to