Dear Greg,

There's not many words that can describe how relieved I felt when, after 
following your advice, I executed my build script again and, a few minutes 
later, saw this beautiful message on the screen: "100% tests passed, 0 tests 
failed out of 76" !

You are right, it's not possible for me, in our current production environment, 
to upgrade our systems to CentOS 5.7. So I kept on reading your mail and came 
to the point where you mention that I might need to export RDBASE. This is what 
I did... and it solves everything ! Although it makes perfect sense when I 
think about it, it's hard to believe that the absence of six tiny letters made 
me lose so much time ! ;)

But the pain is now behind, the showstopper is gone, it is now time to deliver 
the solution to the users I support !

Thank you very much again for your help, and thanks also to Jean-Paul Ebejer 
who replied to my mail yesterday !

Best Regards,
Luc Gauthier


-----Original Message-----
From: Greg Landrum [mailto:greg.land...@gmail.com] 
Sent: Wednesday, March 21, 2012 6:23 AM
To: Gauthier, Luc R&D/FR
Subject: Re: [Rdkit-discuss] RDKit on CentOS 5.5

Dear Luc,

On Tue, Mar 20, 2012 at 6:25 PM,  <luc.gauth...@sanofi.com> wrote:
> Hi,
>
> I have been trying to compile RDKit Q4_2011 for almost two days now, 
> and I must admit I am about to abandon. Before doing so, I thought it 
> might be a good idea to seek for help here. I did search in the list 
> archives and found many hints, but none was able to solve the problems 
> I am facing.

Apologies for the problems. CentOS 5.5 is particularly difficult to install the 
RDKit on, primarily due to the extremely out-of-date version of gcc that comes 
with it. It's probably pointless to ask, but I will anyway: is there any chance 
that you could update to a newer version of CentOS? The RDKit compiles without 
any problems on v5.7
(http://code.google.com/p/rdkit/wiki/BuildingOnCentOS57) and I assume that it 
will also work fine on v6.x.

I'm going to assume that's not possible and try and diagnose the problems based 
on the information below.

> I realize that it makes my message pretty long but if that might help, 
> I also have included below the little script I have written to 
> automate all the build steps, in which you can see the location & 
> options I have used.

Including the script really helps! Thanks for doing that.

I believe that RDBASE is not set properly when the tests run.

I'm going to cut the error messages down to include a couple specific examples 
to demonstrate:

>  2/76 Test  #2: testDataStructs ..................***Exception: Other 
> [18:07:27]  Test SparseIntVect Serialization  
> -------------------------- [18:07:27]  Test BitVect Serialization  
> ------------------------------- terminate called after throwing an instance 
> of 'std::logic_error'
>  what():  basic_string::_S_construct NULL not valid
>

This failure is in a test that uses RDBASE to find some files containing test 
data.

>      Start  4: pyDiscreteValueVect
>  4/76 Test  #4: pyDiscreteValueVect ..............***Failed    0.08 
> sec ..E..
> ======================================================================
> ERROR: test3Pickles (__main__.TestCase)
> ----------------------------------------------------------------------
> Traceback (most recent call last):
>  File
> "/site/tl/app/ia64/tools/rdkit/q4_2011-src/RDKit_2011_12_1/Code/DataSt
> ru cts/Wrap/testDiscreteValueVect.py", line 126, in test3Pickles
>    inF = file(os.path.join(RDConfig.RDBaseDir,
> AttributeError: 'module' object has no attribute 'RDBaseDir'

This error message is also a give away. The RDConfig module is found, which 
means that your $PYTHONPATH is set correctly, the other imports in that file 
worked, which means that your $LD_LIBRARY_PATH is set correctly, but 
RDConfig.py is missing RDBaseDir, which is usually derived from $RDBASE.

A quick scan through the other failing tests shows a bunch of related problems.

> #----------------------------------------------------------+
> #--- BUILD RDKIT  -----------------------------------------|
> #----------------------------------------------------------+
> echo "##### Building rdkit..."
> cd ${RDKIT_SRC}
> tar zxf RDKit_2011_12_1.tgz
> RDBASE=$PWD/RDKit_2011_12_1
> cd ${RDBASE}
> export
  ^^^^
I believe this line is the problem. You need to do "export RDBASE"

> LD_LIBRARY_PATH=${RDBASE}/lib:${RDKIT_DIR}/contrib/boost/${BOOST_VER}/
> li
> b:${LD_LIBRARY_PATH}
> export PYTHONPATH=${RDBASE}:${PYTHONPATH}
> mkdir build
> cd build
> cmake -DBOOST_ROOT=${RDKIT_DIR}/contrib/boost/${BOOST_VER}
> -DBoost_NO_SYSTEM_PATHS=ON
> -DPYTHON_LIBRARY=${RDKIT_DIR}/contrib/python/2.7.2/lib/libpython2.7.so
> -DPYTHON_INCLUDE_DIR=${RDKIT_DIR}/contrib/python/2.7.2/include/python2
> .7 -DPYTHON_EXECUTABLE=${RDKIT_DIR}/contrib/python/2.7.2/bin/python ..
> make -j4
> make install
> ctest --output-on-failure | tee ctest.log echo
>
> #----------------------------------------------------------+
> #--- TO TEST IN INTERACTIVE SHELL SESSIONS  ---------------| 
> #----------------------------------------------------------+
> echo "##### Environment settings to use for tests in another shell..."
> echo "export PATH=$PATH"
> echo "export LD_LIBRARY_PATH=$LD_LIBRARY_PATH"
> echo "export PYTHONPATH=$PYTHONPATH"
> echo "cd ${RDBASE}/build"
> echo "ctest"

These instructions are missing $RDBASE entirely.

I hope this helps,
-greg

------------------------------------------------------------------------------
This SF email is sponsosred by:
Try Windows Azure free for 90 days Click Here 
http://p.sf.net/sfu/sfd2d-msazure
_______________________________________________
Rdkit-discuss mailing list
Rdkit-discuss@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/rdkit-discuss

Reply via email to