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

Reply via email to