On 2012-11-14 10:30, paul.czodrow...@merckgroup.com wrote:
Dear Jan,
nope - but this reminds me on one UGM topic:
Could anyone provide a 64bit Win7 build?
Well, a couple of notes along the way to building the PostgreSQL
cartridge for Windows. This one is for building 64-bit RDKit on Windows.
I am building on a Windows Server 2008 R2 x64 machine with Visual Studio
2010, cygwin, boost 1.51 (both x86 and x64 present), and cmake. Note
that I have built without Python wrappers and without Java wrappers.
I downloaded RDKit 2012_09_1 and generated a VS solution file with
cmake. Started Visual Studio and changed the build configuraton to
Release/x64.
Only half of the projects build, the others fail with a linker error. I
found three reasons for this:
1) cmake is apparently a little too smart when it locates boost
libraries. I had changed my PATH to include the x64 boost libs instead
of the x86 libs but still cmake was clever enough to find the x86 libs
(perhaps because they were installed in the default installation path).
I renamed the directory name of the x86 boost libs and set BOOST_ROOT to
point to the x64 boost libs - not sure which one did the trick but it
helped.
2) cmake generates project files that link EXEs with a /machine:X86
flag. If you look in $RDBASE/build/CMakeCache.txt you can find this line
which must be the one responsible:
CMAKE_EXE_LINKER_FLAGS:STRING=' /STACK:1000 /machine:X86 '
I could not really figure out where this came from. Perhaps cmake just
adds it per default when no machine type is explicity specified (?). But
I had cygwin installed, so I did this (my $RDBASE is C:\RDKit_2012_09_1\):
cd /cygdrive/C/RDKit_2012_09_1/build/
find . -name *.vcxproj -type f -exec sed -i
s/machine:X86/machine:X64/ '{}' \;
3) After the above changes an ALL_BUILD build still gives me 50
succeeded, 31 failed. The failed ones have the linker error LNK2001:
unresolved external symbol class boost::system::error_category. I did
apply the patches Greg sent for the boost::thread_resource_error build
problem 2012-11-18, but it needs a couple of additional fixes.
In $RDBASE/Code/GraphMol/CMakeLists.txt all the rdkit_test()
expressions - 8 in total - need to link in ${Boost_SYSTEM_LIBRARY}, so e.g.
rdkit_test(graphmolTest1 test1.cpp LINK_LIBRARIES GraphMol
RDGeometryLib RDGeneral)
becomes
rdkit_test(graphmolTest1 test1.cpp LINK_LIBRARIES
${Boost_SYSTEM_LIBRARY} GraphMol RDGeometryLib RDGeneral)
And that also needs to be fixed in all the CMakeLists.txt files in the
following subdirectories of GraphMol/ :
ChemReactions
ChemTransforms
Depictor
DistGeomHelpers
FileParsers
Fingerprints
ForceFieldHelpers
FragCatalog
MolAlign
MolCatalog
MolChemicalFeatures
MolTransforms
ShapeHelpers
SLNParse
SmilesParse
SubGraphs
Substruct
Once those things were fixed I got a 64-bit build of RDKit. And all 44
tests pass :-).
The build generates tons of warnings, but they are mostly harmless ones
about conversion from 'size_t' to 'unsigned int', possible loss of data.
Next: Cartridge building. Stay tuned...
Cheers
-- Jan
--
Monitor your physical, virtual and cloud infrastructure from a single
web console. Get in-depth insight into apps, servers, databases, vmware,
SAP, cloud infrastructure, etc. Download 30-day Free Trial.
Pricing starts from $795 for 25 servers or applications!
http://p.sf.net/sfu/zoho_dev2dev_nov
___
Rdkit-discuss mailing list
Rdkit-discuss@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/rdkit-discuss