[Debian-med-packaging] Thesaus 1.6.0 segfaults with example

Andreas Tille andreas at an3as.eu
Wed Jan 26 13:13:48 UTC 2011


Hi Douglas,

I tried to package the latest upstream release of theseus for Debian and
tested the result with the examples provided.  I can confirm that the
examlpes were working nicely with the currently packaged version of
theseus 1.5.5.  However, when trying 1.6.0 (please note: The BEGIN / END
THESEUS statements claim to be a previous version ... you possibly should
try to declare the version string only on one place in the code) I get
the following output:

$ theseus 1s40.pdb


                            < BEGIN THESEUS 1.5.6 > 
I===-===-===-===-===-===-===-===-===-===-===-===-===-===-===-===-===-===-===-=I
I                THESEUS: Maximum likelihood multiple superpositioning        I
I=-===-===-===-===-===-===-===-===-===-===-===-===-===-===-===-===-===-===-===I
    Reading pdb file ... 
    Successfully read 10 models and/or structures 
    Selecting coordinates for superposition ... 
    Calculating superposition transformations ... 
    Calculating statistics ... 
    Calculating likelihood statistics ... 
    10 models superimposed in 20.0 ms 
  * Least-squares <sigma>                           0.72728
  * Classical LS pairwise <RMSD>                    1.87784
  * Maximum Likelihood <sigma>                      0.37741
  ~ Log Likelihood                                  4528.99
  ~ AIC                                             3532.76
  ~ BIC                                              822.93
  + Rotational, translational, covar chi^2             1.11 (P:7.38e-10)
  + Hierarchical minimum var (sigma)               4.32e-03 (6.57e-02)
  + Hierarchical var (7.12e-02, 5.00e-01) chi^2        4.46 (P:1.79e-12)
  + Omnibus chi^2                                      1.13 (P:7.86e-12)
  < skewness                                           0.03 (P:3.58e-01)
  < skewness Z-value                                   0.92
  < kurtosis                                           0.13 (P:3.53e-02)
  < kurtosis Z-value                                   2.10
  FP error in transformed coordinates:             2.06e-14
  Minimum RMS error per atom:                      2.84e-07
  Data pts = 5940,  Free params = 853,  D/P = 7.0  
  * Median structure = #5
  N(total) = 1980, N(atoms) = 198, N(structures) = 10
  Total rounds = 15
  Converged to a fractional precision of 8.8e-08
I===-===-===-===-===-===-===-===-===-===-===-===-===-===-===-===-===-===-===-==I
    Transforming coordinates ... 
    Writing transformed coordinates PDB file ... 
    Writing average coordinate file ... 
Segmentation fault


I can confirm, that the other examples

  theseus -A cytc.aln -M cytc.filemap d*.pdb
  theseus_align -f d*.pdb

are working fine and are producing the same output as version 1.5.5.

Can you reproduce this problem?  I used the patch below for make.inc
(BTW, I have no idea how you can use `libtool -o` to build a library -
is this a Mac feature???).  Basically I enabled the Ubuntu compile
options recommended in your makefile.

The tests were running on an amd64 machine on Debian testing.  Feel free
to ask for more information if you can not reproduce the problem.

BTW, I would recommend using '-f' switch when tryiing to rm in your
clean target in the Makefile:

--- theseus_src.orig/Makefile
+++ theseus_src/Makefile
@@ -149,6 +149,6 @@
                                        cp lib/*.a ${LOCALLIBDIR}

 clean:
-                                       find . -name '*.[oa]' -exec rm {} \;
-                                       rm theseus &> /dev/null
+                                       find . -name '*.[oa]' -exec rm -f {} \;
+                                       rm -f theseus &> /dev/null


This would result in a successful exit code when cleaning in a clean
root or after an unsuccessful build.

Any hint for preventing the segfault is welcome.

Kind regards and thanks for providing theseus as Free Software

      Andreas.

--- theseus_src/make.inc.orig   2010-10-30 03:46:35.000000000 +0200
+++ theseus_src/make.inc        2011-01-26 14:03:34.000000000 +0100
@@ -2,10 +2,10 @@
 #  The archiver and the flag(s) to use when building archive (library)
 #  If you system has no ranlib, set RANLIB = echo.
 #
-#ARCH     = ar
-ARCH = libtool
-ARCHFLAGS = -o
-#ARCHFLAGS= -rvs
+ARCH     = ar
+# ARCH = libtool
+# ARCHFLAGS = -o
+ARCHFLAGS= -rvs
 RANLIB   = ranlib
 
 #MACOSX_DEPLOYMENT_TARGET=10.4
@@ -117,18 +117,18 @@
 # CC = gcc
 
 # Ubunut LINUX Xeon Quad-core x86_64 (2008-02-19)
-# SYSLIBS = -static -lgfortran -lpthread -lgsl -lm -lc
-# LIBS = -ldistfit -lmsa -ldssplite -ldltmath -lDLTutils -ltheseus
-# LIBDIR = -L./lib
-# BLASLIB = -lf77blas -latlas
-# #BLASLIBDIR = -L/usr/local/lib/
-# LAPACKLIB = -llapack
+SYSLIBS = -static -lgfortran -lpthread -lgsl -lm -lc
+LIBS = -ldistfit -lmsa -ldssplite -ldltmath -lDLTutils -ltheseus
+LIBDIR = -L./lib
+BLASLIB = -lf77blas -latlas
+BLASLIBDIR = -L/usr/lib/atlas-base
+LAPACKLIB = -llapack
 # #LAPACKLIBDIR = -L/usr/local/lib/
 # INSTALLDIR = /usr/local/bin
-# OPT = -msse3 -march=nocona -O3 -ffast-math -fstrict-aliasing -funroll-loops -fomit-frame-pointer -mfpmath=sse -ftree-vectorize
-# WARN = -Wall -pedantic -std=c99
-# CFLAGS = $(WARN) -pthread
-# CC = gcc
+OPT = -msse3 -march=nocona -O3 -ffast-math -fstrict-aliasing -funroll-loops -fomit-frame-pointer -mfpmath=sse -ftree-vectorize
+WARN = -Wall -pedantic -std=c99
+CFLAGS = $(WARN) -pthread
+CC = gcc
 
 # LINUX x86 generic 1 (2008-02-20) -- 32-bit, works on most machines
 # SYSLIBS = -static -lgfortran -lpthread -lgsl -lm -lc


-- 
http://fam-tille.de



More information about the Debian-med-packaging mailing list