Thanks, Greg. 

You are right. I spent too much time with Python and forgot how to build real 
programs :)

Alex

> On 01 Feb 2014, at 14:37, Greg Landrum <greg.land...@gmail.com> wrote:
> 
> Hi Alexey,
> 
> It kind of looks like you aren't linking against any of the RDKit libraries.
> Based on the errors above, I'd guess you need at least
>  -lSmilesParse -lDepictor -lGraphMol -lDataStructs -lRDGeometryLib -lRDGeneral
> 
> -greg
> 
> 
> 
>> On Fri, Jan 31, 2014 at 10:28 AM, Alexey Chernobrovkin 
>> <chernobrov...@gmail.com> wrote:
>> Dear all,
>> 
>> I’ve just tried to build simple GUI in Xcode using rdkit libraries. 
>> Unfortunately I’ve got link errors. I tried to use homebrew installed 
>> version, also compiled sources from github by myself. Any idea?
>> 
>> PS
>> Python bindings work perfectly on my computer.
>> If I don’ include MolDrowing.h and DrawingToSVG.h project is linked without 
>> errors.
>> 
>> simple code:
>> 
>> #include "testmol.h"
>> #include <GraphMol/RDKitBase.h>
>> #include <GraphMol/SmilesParse/SmilesParse.h>
>> #include <GraphMol/Depictor/RDDepictor.h>
>> #include <Geometry/point.h>
>> #include <GraphMol/ROMol.h>
>> 
>> #include <GraphMol/MolDrawing/MolDrawing.h>
>> //#include <GraphMol/MolDrawing/DrawingToSVG.h>
>> 
>> 
>> Error listing:
>> 
>> Ld 
>> /Users/black/Library/Developer/Xcode/DerivedData/SMILES_Viewer-ftbnkyhvxqageqflovukoyyuiamy/Build/Products/Debug/SMILES\
>>  Viewer.app/Contents/MacOS/SMILES\ Viewer normal x86_64
>>     cd "/Users/black/projects/SMILES Viewer"
>>     setenv MACOSX_DEPLOYMENT_TARGET 10.9
>>     
>> /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang++
>>  -arch x86_64 -isysroot 
>> /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk
>>  
>> -L/Users/black/Library/Developer/Xcode/DerivedData/SMILES_Viewer-ftbnkyhvxqageqflovukoyyuiamy/Build/Products/Debug
>>  -L/Users/black/projects/rdkit/build/lib 
>> -L/usr/local/Cellar/boost/1.54.0/lib 
>> -F/Users/black/Library/Developer/Xcode/DerivedData/SMILES_Viewer-ftbnkyhvxqageqflovukoyyuiamy/Build/Products/Debug
>>  -filelist 
>> /Users/black/Library/Developer/Xcode/DerivedData/SMILES_Viewer-ftbnkyhvxqageqflovukoyyuiamy/Build/Intermediates/SMILES\
>>  Viewer.build/Debug/SMILES\ Viewer.build/Objects-normal/x86_64/SMILES\ 
>> Viewer.LinkFileList -mmacosx-version-min=10.9 -fobjc-arc -fobjc-link-runtime 
>> -stdlib=libstdc++ -framework Cocoa -Xlinker -dependency_info -Xlinker 
>> /Users/black/Library/Developer/Xcode/DerivedData/SMILES_Viewer-ftbnkyhvxqageqflovukoyyuiamy/Build/Intermediates/SMILES\
>>  Viewer.build/Debug/SMILES\ Viewer.build/Objects-normal/x86_64/SMILES\ 
>> Viewer_dependency_info.dat -o 
>> /Users/black/Library/Developer/Xcode/DerivedData/SMILES_Viewer-ftbnkyhvxqageqflovukoyyuiamy/Build/Products/Debug/SMILES\
>>  Viewer.app/Contents/MacOS/SMILES\ Viewer
>> 
>> Undefined symbols for architecture x86_64:
>>   "Invar::operator<<(std::ostream&, Invar::Invariant&)", referenced from:
>>       RDGeom::Point3D::operator[](unsigned int) const in testmol.o
>>       RDGeom::Point3D::operator[](unsigned int) in testmol.o
>>       RDGeom::Point2D::operator[](unsigned int) const in testmol.o
>>       RDGeom::Point2D::operator[](unsigned int) in testmol.o
>>   "RDKit::ROMol::initFromOther(RDKit::ROMol const&, bool)", referenced from:
>>       RDKit::RWMol::RWMol(RDKit::ROMol const&, bool) in testmol.o
>>   "RDKit::ROMol::initMol()", referenced from:
>>       RDKit::ROMol::ROMol() in testmol.o
>>   "RDKit::MolOps::Kekulize(RDKit::RWMol&, bool, unsigned int)", referenced 
>> from:
>>       RDKit::Drawing::MolToDrawing(RDKit::ROMol const&, std::vector<int, 
>> std::allocator<int> > const*, bool) in testmol.o
>>   "RDKit::MolOps::findSSSR(RDKit::ROMol const&, std::vector<std::vector<int, 
>> std::allocator<int> >, std::allocator<std::vector<int, std::allocator<int> > 
>> > >*)", referenced from:
>>       RDKit::Drawing::DrawMol(RDKit::ROMol const&, int, std::vector<int, 
>> std::allocator<int> > const*, unsigned int, double, double, double) in 
>> testmol.o
>>   "RDLog::toStream(std::ostream&)", referenced from:
>>       RDGeom::Point3D::operator[](unsigned int) const in testmol.o
>>       RDGeom::Point3D::operator[](unsigned int) in testmol.o
>>       RDGeom::Point2D::operator[](unsigned int) const in testmol.o
>>       RDGeom::Point2D::operator[](unsigned int) in testmol.o
>>   "RDGeom::operator/(RDGeom::Point2D const&, double)", referenced from:
>>       RDKit::Drawing::DrawMol(RDKit::ROMol const&, int, std::vector<int, 
>> std::allocator<int> > const*, unsigned int, double, double, double) in 
>> testmol.o
>>   "RDGeom::operator-(RDGeom::Point2D const&, RDGeom::Point2D const&)", 
>> referenced from:
>>       RDKit::Drawing::DrawMol(RDKit::ROMol const&, int, std::vector<int, 
>> std::allocator<int> > const*, unsigned int, double, double, double) in 
>> testmol.o
>>   "RDGeom::operator*(RDGeom::Point2D const&, double)", referenced from:
>>       RDKit::Drawing::DrawMol(RDKit::ROMol const&, int, std::vector<int, 
>> std::allocator<int> > const*, unsigned int, double, double, double) in 
>> testmol.o
>>   "RDGeom::operator+(RDGeom::Point2D const&, RDGeom::Point2D const&)", 
>> referenced from:
>>       RDKit::Drawing::DrawMol(RDKit::ROMol const&, int, std::vector<int, 
>> std::allocator<int> > const*, unsigned int, double, double, double) in 
>> testmol.o
>>   "RDDepict::compute2DCoords(RDKit::ROMol&, std::map<int, RDGeom::Point2D, 
>> std::less<int>, std::allocator<std::pair<int const, RDGeom::Point2D> > > 
>> const*, bool, bool, unsigned int, unsigned int, int, bool)", referenced from:
>>       RDKit::Drawing::MolToDrawing(RDKit::ROMol const&, std::vector<int, 
>> std::allocator<int> > const*, bool) in testmol.o
>>   "RDKit::Atom::getTotalNumHs(bool) const", referenced from:
>>       RDKit::Drawing::detail::getAtomSymbolAndOrientation(RDKit::Atom 
>> const&, RDGeom::Point2D) in testmol.o
>>   "RDKit::Atom::getDegree() const", referenced from:
>>       RDKit::Drawing::detail::getAtomSymbolAndOrientation(RDKit::Atom 
>> const&, RDGeom::Point2D) in testmol.o
>>   "RDKit::Atom::getSymbol() const", referenced from:
>>       RDKit::Drawing::detail::getAtomSymbolAndOrientation(RDKit::Atom 
>> const&, RDGeom::Point2D) in testmol.o
>>   "RDKit::Bond::getOtherAtomIdx(unsigned int) const", referenced from:
>>       RDKit::Drawing::DrawMol(RDKit::ROMol const&, int, std::vector<int, 
>> std::allocator<int> > const*, unsigned int, double, double, double) in 
>> testmol.o
>>   "RDKit::Dict::getVal(std::string const&, std::string&) const", referenced 
>> from:
>>       std::string RDKit::Dict::getVal<std::string>(char const*, 
>> std::string&) const in testmol.o
>>   "RDKit::ROMol::getNumAtoms(bool) const", referenced from:
>>       RDKit::Drawing::DrawMol(RDKit::ROMol const&, int, std::vector<int, 
>> std::allocator<int> > const*, unsigned int, double, double, double) in 
>> testmol.o
>>   "RDKit::ROMol::getVertices() const", referenced from:
>>       RDKit::Drawing::DrawMol(RDKit::ROMol const&, int, std::vector<int, 
>> std::allocator<int> > const*, unsigned int, double, double, double) in 
>> testmol.o
>>   "RDKit::ROMol::getAtomBonds(RDKit::Atom const*) const", referenced from:
>>       RDKit::Drawing::DrawMol(RDKit::ROMol const&, int, std::vector<int, 
>> std::allocator<int> > const*, unsigned int, double, double, double) in 
>> testmol.o
>>   "RDKit::ROMol::getConformer(int) const", referenced from:
>>       RDKit::Drawing::DrawMol(RDKit::ROMol const&, int, std::vector<int, 
>> std::allocator<int> > const*, unsigned int, double, double, double) in 
>> testmol.o
>>   "RDKit::ROMol::getAtomWithIdx(unsigned int) const", referenced from:
>>       RDKit::Drawing::DrawMol(RDKit::ROMol const&, int, std::vector<int, 
>> std::allocator<int> > const*, unsigned int, double, double, double) in 
>> testmol.o
>>   "RDKit::RingInfo::numBondRings(unsigned int) const", referenced from:
>>       RDKit::Drawing::DrawMol(RDKit::ROMol const&, int, std::vector<int, 
>> std::allocator<int> > const*, unsigned int, double, double, double) in 
>> testmol.o
>>   "RDKit::Conformer::getPositions() const", referenced from:
>>       RDKit::Drawing::DrawMol(RDKit::ROMol const&, int, std::vector<int, 
>> std::allocator<int> > const*, unsigned int, double, double, double) in 
>> testmol.o
>>   "vtable for RDKit::ROMol", referenced from:
>>       RDKit::ROMol::ROMol() in testmol.o
>>       RDKit::ROMol::~ROMol() in testmol.o
>>   NOTE: a missing vtable usually means the first non-inline virtual member 
>> function has no definition.
>>   "vtable for RDKit::RWMol", referenced from:
>>       RDKit::RWMol::RWMol(RDKit::ROMol const&, bool) in testmol.o
>>   NOTE: a missing vtable usually means the first non-inline virtual member 
>> function has no definition.
>>   "_rdErrorLog", referenced from:
>>       RDGeom::Point3D::operator[](unsigned int) const in testmol.o
>>       RDGeom::Point3D::operator[](unsigned int) in testmol.o
>>       RDGeom::Point2D::operator[](unsigned int) const in testmol.o
>>       RDGeom::Point2D::operator[](unsigned int) in testmol.o
>> ld: symbol(s) not found for architecture x86_64
>> clang: error: linker command failed with exit code 1 (use -v to see 
>> invocation)
>> 
>> 
>> ------------------------------------------------------------------------------
>> WatchGuard Dimension instantly turns raw network data into actionable
>> security intelligence. It gives you real-time visual feedback on key
>> security issues and trends.  Skip the complicated setup - simply import
>> a virtual appliance and go from zero to informed in seconds.
>> http://pubads.g.doubleclick.net/gampad/clk?id=123612991&iu=/4140/ostg.clktrk
>> _______________________________________________
>> Rdkit-discuss mailing list
>> Rdkit-discuss@lists.sourceforge.net
>> https://lists.sourceforge.net/lists/listinfo/rdkit-discuss
>> 
> 
------------------------------------------------------------------------------
WatchGuard Dimension instantly turns raw network data into actionable 
security intelligence. It gives you real-time visual feedback on key
security issues and trends.  Skip the complicated setup - simply import
a virtual appliance and go from zero to informed in seconds.
http://pubads.g.doubleclick.net/gampad/clk?id=123612991&iu=/4140/ostg.clktrk
_______________________________________________
Rdkit-discuss mailing list
Rdkit-discuss@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/rdkit-discuss

Reply via email to