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