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