Following up on my on email...

The following patch fixes the build for me from the latest SVN coot-read-only sources. Is the list preference to paste these sorts of things inline to the email, or to send the patch as an attachment?

If anyone has any comments/suggestions on the patches, I would appreciate hearing them.

thanks,

Cyrus



diff --git a/coot-utils/Makefile.am b/coot-utils/Makefile.am
index 6612f82..c19a66d 100644
--- a/coot-utils/Makefile.am
+++ b/coot-utils/Makefile.am
@@ -62,7 +62,8 @@ libcoot_coord_utils_la_SOURCES = coot-coord-utils.cc \
 # clean
 libcoot_coord_utils_la_LIBADD = \
     $(top_builddir)/geometry/libcoot-geometry.la \
-    $(GSL_LIBS)
+    $(GSL_LIBS) \
+    $(CLIPPER_LIBS)

 libcoot_coord_utils_la_LDFLAGS = -no-undefined

@@ -96,7 +97,8 @@ libcoot_map_utils_la_SOURCES = coot-map-utils.cc peak-search.cc peak-search-from
 # clean
 libcoot_map_utils_la_LIBADD = \
    libcoot-coord-utils.la  \
-   $(GSL_LIBS)
+   $(GSL_LIBS) \
+   $(CLIPPER_LIBS)

 libcoot_map_utils_la_LDFLAGS = -no-undefined

@@ -109,7 +111,8 @@ libcoot_map_heavy_la_SOURCES = coot-map-heavy.cc coot-fffear.cc
 libcoot_map_heavy_la_LIBADD = \
    libcoot-map-utils.la \
    libcoot-coord-utils.la \
-   $(GSL_LIBS)
+   $(GSL_LIBS) \
+   $(CLIPPER_LIBS)

 libcoot_map_heavy_la_LDFLAGS = -no-undefined

@@ -145,6 +148,7 @@ testcootutils_LDADD =            \
     ./libcoot-coord-extras.la\
     ./libcoot-coord-utils.la \
     $(GSL_LIBS) \
+        $(CLIPPER_LIBS) \
         $(GLOB_LIBS)

 #    $(top_builddir)/geometry/libcoot-geometry.la
@@ -172,7 +176,7 @@ test_elastic_SOURCES = test-elastic.cc
 test_elastic_LDADD   = ./libcoot-coord-utils.la $(GLOB_LIBS)

 test_spherical_SOURCES = test-spherical.cc
-test_spherical_LDADD   = ./libcoot-coord-utils.la $(GSL_LIBS)
+test_spherical_LDADD = ./libcoot-coord-utils.la $(GSL_LIBS) $(CLIPPER_LIBS)

 glyco_torsions_SOURCES = test-glyco-torsions.cc
 glyco_torsions_LDADD   = ./libcoot-coord-utils.la
diff --git a/geometry/Makefile.am b/geometry/Makefile.am
index 266eb04..89f6bb5 100644
--- a/geometry/Makefile.am
+++ b/geometry/Makefile.am
@@ -85,5 +85,5 @@ make_shelx_restraints_SOURCES = make-shelx-restraints.cc

 # why is coot-utils.la needed? I don't understand.
 make_shelx_restraints_LDADD = ./libcoot-geometry.la \
-            $(top_builddir)/utils/libcoot-utils.la
+            $(top_builddir)/utils/libcoot-utils.la $(CLIPPER_LIBS)

diff --git a/src/c-interface-mogul.cc b/src/c-interface-mogul.cc
index cad0b32..08a0d05 100644
--- a/src/c-interface-mogul.cc
+++ b/src/c-interface-mogul.cc
@@ -1,4 +1,6 @@

+#include <string.h>
+
 #ifdef USE_PYTHON
#include <Python.h> // before system includes to stop "POSIX_C_SOURCE" redefined problems
 #endif
diff --git a/src/generic-objects.cc b/src/generic-objects.cc
index ba5c394..8c93401 100644
--- a/src/generic-objects.cc
+++ b/src/generic-objects.cc
@@ -30,6 +30,8 @@
 #include <vector>
 #include <string>

+#include <string.h>
+
 #include <gtk/gtk.h>
 #include <math.h>




On 10/27/2014 01:55 PM, Cyrus Harmon wrote:
In what I gather is a rite of passage for folks wishing to build/use coot, I'm running into some troubles trying to build coot from source. I think I've got the right prerequisites built and installed:

mmdb2
libccp4
clipper-2.1
ssm-1.4
and of course the various prerequisites (python, gtk, etc...)

When I try to build I coot, I get the following error message:

make[1]: Entering directory '/home/sly/projects/structure/coot/coot-read-only/analysis' /bin/bash ../libtool --tag=CXX --mode=link g++ -o bfactan bfactan.o libcoot-analysis.la ../coot-utils/libcoot-coord-utils.la ../geometry/libcoot-geometry.la ../mini-mol/libcoot-mini-mol.la ../utils/libcoot-utils.la -L/usr/local/lib -lclipper-ccp4 -lclipper-cif -lclipper-minimol -lclipper-mmdb -lclipper-cns -lclipper-phs -lclipper-contrib -lclipper-core -lccp4c -lmmdb2 -L/usr/local/lib -lmmdb2 libtool: link: g++ -o .libs/bfactan bfactan.o ./.libs/libcoot-analysis.so ../coot-utils/.libs/libcoot-coord-utils.so ../geometry/.libs/libcoot-geometry.so ../mini-mol/.libs/libcoot-mini-mol.so ../utils/.libs/libcoot-utils.so -L/usr/local/lib /usr/local/lib/libclipper-ccp4.so /usr/local/lib/libclipper-cif.so /usr/local/lib/libclipper-minimol.so /usr/local/lib/libclipper-mmdb.so /usr/local/lib/libclipper-cns.so /usr/local/lib/libclipper-phs.so /usr/local/lib/libclipper-contrib.so /usr/local/lib/libclipper-core.so /usr/local/lib/libccp4c.so /usr/local/lib/libmmdb2.so ../coot-utils/.libs/libcoot-coord-utils.so: undefined reference to `clipper::SFweight_spline<float>::operator()(clipper::HKL_data<clipper::datatypes::F_phi<float> >&, clipper::HKL_data<clipper::datatypes::F_phi<float> >&, clipper::HKL_data<clipper::datatypes::Phi_fom<float> >&, clipper::HKL_data<clipper::datatypes::F_sigF<float> > const&, clipper::HKL_data<clipper::datatypes::F_phi<float> > const&, clipper::HKL_data<clipper::datatypes::Flag> const&)' ../coot-utils/.libs/libcoot-coord-utils.so: undefined reference to `clipper::MMDBManager::cell() const' ../coot-utils/.libs/libcoot-coord-utils.so: undefined reference to `clipper::MMDBManager::spacegroup() const' ../coot-utils/.libs/libcoot-coord-utils.so: undefined reference to `clipper::SFweight_spline<float>::init(int, int, int)'
collect2: error: ld returned 1 exit status
Makefile:647: recipe for target 'bfactan' failed
make[1]: *** [bfactan] Error 1

I'm a bit at a loss trying to figure out the templated classes, etc... in sfweight.cpp so I thought I'd check to see if anyone else is having (or has run into) this problem. Also the clipper::MMDBxxx stuff make me wonder if this isn't the result of some stuff not yet being converted over to mmdb2. Pointers appreciated.

thanks,

Cyrus

Reply via email to