Hello,
The fundamental problem is that your fit.h and fit.c code seem to be out
of sync. I'm not sure why this is the case. I just checked (1) the code
on my computer; (2) the code in the repository; and (3) the code on the
update server, and they all agree. And I just tried compiling the code on
my disk and also tried installing the upgrades on a 1.0.15 version I have
on my computer here, and they both worked.
Now in your upgrade it seems that fit.h was installed but not fit.c,
although both are on the upgrade server. Can you check the the update
server again, to see if there is a fit.c there now. (If not, we'll
probably have to email it to you, assuming fit.c is the problem: see
below.)
If you look in the files ccpnmr1.0/c/memops/global/fit.h and fit.c then
the function run_fit() should be typed as:
CcpnStatus run_fit(Fit_method fit, int n, float *x, float *y,
float *params_fit, float *params_dev,
float *y_fit, float *chisq, CcpnString error_msg)
in both fit.h and fit.c (the fit.h version says "extern" in front but you
can ignore that). My guess is that your fit.h version has this but your
fit.c version is missing the params_dev argument (a recent addition).
Wayne
On Mon, 12 Nov 2007, Ben Goult wrote:
> Hi,
>
> I have just tried to upgrade analysis on my laptop and it failed. I have
> attached the trace back
>
> Error, the DataAnalysisBasic module will not work, something is wrong with
> the C code.
> Traceback (most recent call last):
> File "/data/prog/ccpnmr/ccpnmr1.0/python/ccpnmr/analysis/AnalysisGui.py",
> line 72, in ?
> from ccpnmr.analysis.AnalysisPopup import AnalysisPopup
> File
> "/data/prog/ccpnmr/ccpnmr1.0/python/ccpnmr/analysis/AnalysisPopup.py", li
> ne 103, in ?
> from ccpnmr.analysis.CalcHeteroNoePopup import CalcHeteroNoePopup
> File
> "/data/prog/ccpnmr/ccpnmr1.0/python/ccpnmr/analysis/CalcHeteroNoePopup.py
> ", line 69, in ?
> from ccpnmr.analysis.DataAnalysisBasic import matchHnoePeaks
> File
> "/data/prog/ccpnmr/ccpnmr1.0/python/ccpnmr/analysis/DataAnalysisBasic.py"
> , line 63, in ?
> from memops.c.FitMethod import runFit
> ImportError: cannot import name runFit
>
> and the installation output;
>
> >>> installing /data/prog/ccpnmr/ccpnmr1.0/python/memops/gui/ScrolledGraph.py
> installing /data/prog/ccpnmr/ccpnmr1.0/python/ccpnmr/update/UpdateAgent.py
> installing /data/prog/ccpnmr/ccpnmr1.0/python/ccpnmr/analysis/WindowDraw.py
> installing /data/prog/ccpnmr/ccpnmr1.0/python/ccpnmr/analysis/CalcRatesPopup.py
> installing /data/prog/ccpnmr/ccpnmr1.0/python/ccpnmr/analysis/FollowShiftChanges
> Popup.py
> installing /data/prog/ccpnmr/ccpnmr1.0/python/ccpnmr/analysis/ResonanceFrame.py
> installing /data/prog/ccpnmr/ccpnmr1.0/python/ccpnmr/analysis/EditAssignmentPopu
> p.py
> installing /data/prog/ccpnmr/ccpnmr1.0/python/ccpnmr/analysis/ConstraintBasic.py
> installing /data/prog/ccpnmr/ccpnmr1.0/python/ccpnmr/analysis/EditPeakListPopup.
> py
> installing /data/prog/ccpnmr/ccpnmr1.0/python/ccpnmr/analysis/CalcDistConstraint
> sPopup.py
> installing /data/prog/ccpnmr/ccpnmr1.0/python/ccpnmr/analysis/AnalysisPopup.py
> installing /data/prog/ccpnmr/ccpnmr1.0/python/ccpnmr/analysis/Analysis.py
> installing /data/prog/ccpnmr/ccpnmr1.0/python/ccpnmr/analysis/BrowseResonancesPo
> pup.py
> installing /data/prog/ccpnmr/ccpnmr1.0/python/ccpnmr/analysis/WindowPopup.py
> installing /data/prog/ccpnmr/ccpnmr1.0/python/ccpnmr/analysis/MoleculeBasic.py
> installing /data/prog/ccpnmr/ccpnmr1.0/python/ccpnmr/analysis/StructureBasic.py
> installing /data/prog/ccpnmr/ccpnmr1.0/python/ccpnmr/analysis/DataAnalysisBasic.
> py
> installing /data/prog/ccpnmr/ccpnmr1.0/python/ccpnmr/analysis/CalcAmbigDistConst
> raintsPopup.py
> installing /data/prog/ccpnmr/ccpnmr1.0/python/ccpnmr/analysis/PeakBasic.py
> installing /data/prog/ccpnmr/ccpnmr1.0/python/ccpnmr/analysis/BrowseConstraintsP
> opup.py
> installing /data/prog/ccpnmr/ccpnmr1.0/c/memops/global/fit.h
> installing /data/prog/ccpnmr/ccpnmr1.0/python/ccpnmr/analysis/DataFitting.py
> installing /data/prog/ccpnmr/ccpnmr1.0/python/ccpnmr/analysis/ExperimentBasic.py
> installing /data/prog/ccpnmr/ccpnmr1.0/python/ccpnmr/analysis/WindowBasic.py
> installing /data/prog/ccpnmr/ccpnmr1.0/python/ccpnmr/analysis/LinkSeqSpinSystems
> Popup.py
> installing /data/prog/ccpnmr/ccpnmr1.0/python/ccpnmr/analysis/AssignmentBasic.py
> installing /data/prog/ccpnmr/ccpnmr1.0/python/ccpnmr/analysis/SecStructureGraphP
> opup.py
> installing /data/prog/ccpnmr/ccpnmr1.0/python/ccpnmr/analysis/EditMoleculePopup.
> py
> installing /data/prog/ccpnmr/ccpnmr1.0/python/ccpnmr/analysis/LinkNoeResonancesP
> opup.py
> installing /data/prog/ccpnmr/ccpnmr1.0/python/memops/gui/Menu.py
> installing /data/prog/ccpnmr/ccpnmr1.0/python/ccpnmr/analysis/CopyChainAssignmen
> tsPopup.py
> installing /data/prog/ccpnmr/ccpnmr1.0/python/ccp/util/LabeledMolecule.py
> installing /data/prog/ccpnmr/ccpnmr1.0/python/memops/universal/Ticks.py
> installing /data/prog/ccpnmr/ccpnmr1.0/python/memops/gui/PartitionedSelector.py
> installing /data/prog/ccpnmr/ccpnmr1.0/python/ccpnmr/analysis/EditMeasurementsPo
> pup.py
> installing /data/prog/ccpnmr/ccpnmr1.0/python/ccpnmr/analysis/NoeDistParamsFrame
> .py
> installing /data/prog/ccpnmr/ccpnmr1.0/c/memops/global/py_fit.c
> installing /data/prog/ccpnmr/ccpnmr1.0/python/ccp/format/general/Util.py
> installing /data/prog/ccpnmr/ccpnmr1.0/python/memops/general/Io.py
> installing /data/prog/ccpnmr/ccpnmr1.0/python/memops/gui/ScrolledMatrix.py
> installing /data/prog/ccpnmr/ccpnmr1.0/python/ccpnmr/analysis/OpenSpectrumPopup.
> py
> installing /data/prog/ccpnmr/ccpnmr1.0/c/ccpnmr/analysis/peak.c
> installing /data/prog/ccpnmr/ccpnmr1.0/c/ccpnmr/analysis/peak.h
> installing /data/prog/ccpnmr/ccpnmr1.0/python/ccpnmr/analysis/Util.py
> cd memops/global; make clean
> make[1]: Entering directory `/data/prog/ccpnmr/ccpnmr1.0/c/memops/global'
> rm *.o
> make[1]: Leaving directory `/data/prog/ccpnmr/ccpnmr1.0/c/memops/global'
> cd ccp/structure; make clean
> make[1]: Entering directory `/data/prog/ccpnmr/ccpnmr1.0/c/ccp/structure'
> rm *.o
> make[1]: Leaving directory `/data/prog/ccpnmr/ccpnmr1.0/c/ccp/structure'
> cd ccpnmr/analysis; make clean
> make[1]: Entering directory `/data/prog/ccpnmr/ccpnmr1.0/c/ccpnmr/analysis'
> rm *.o
> make[1]: Leaving directory `/data/prog/ccpnmr/ccpnmr1.0/c/ccpnmr/analysis'
> cd ccpnmr/clouds; make clean
> make[1]: Entering directory `/data/prog/ccpnmr/ccpnmr1.0/c/ccpnmr/clouds'
> rm *.o
> make[1]: Leaving directory `/data/prog/ccpnmr/ccpnmr1.0/c/ccpnmr/clouds'
> cd memops/global; make
> make[1]: Entering directory `/data/prog/ccpnmr/ccpnmr1.0/c/memops/global'
> cc -c -O -DDO_NOT_HAVE_MALLOC -fPIC utility.c
> cc -c -I/usr/include/python2.4 -O -DDO_NOT_HAVE_MALLOC -fPIC python_util.c
> cc -c -O -DDO_NOT_HAVE_MALLOC -fPIC hash_list.c
> cc -c -O -DDO_NOT_HAVE_MALLOC -fPIC hash_table.c
> cc -c -O -DDO_NOT_HAVE_MALLOC -fPIC mem_cache.c
> cc -c -O -DDO_NOT_HAVE_MALLOC -fPIC mutex.c
> cc -c -I/usr/include/python2.4 -O -DDO_NOT_HAVE_MALLOC -fPIC py_mem_cache.c
> cc -c -O -DDO_NOT_HAVE_MALLOC -fPIC block_file.c
> cc -c -O -DDO_NOT_HAVE_MALLOC -fPIC int_array.c
> cc -c -I/usr/include/python2.4 -O -DDO_NOT_HAVE_MALLOC -fPIC py_block_file.c
> cc -shared -o BlockFile.so utility.o python_util.o hash_list.o hash_table.o mem_
> cache.o mutex.o py_mem_cache.o block_file.o int_array.o py_block_file.o
> cc -c -I/usr/include/python2.4 -I/usr/X11R6/include -I/usr/include -I/usr/inc
> lude -I/usr/include -O -DDO_NOT_HAVE_MALLOC -fPIC gl_handler.c
> cc -c -DUSE_GL_FALSE -I/usr/include/python2.4 -I/usr/X11R6/include -I/usr/inclu
> de -I/usr/include -I/usr/include -O -DDO_NOT_HAVE_MALLOC -fPIC py_gl_handler.c
> cc -c -I/usr/include/python2.4 -I/usr/X11R6/include -I/usr/include -I/usr/includ
> e -O -DDO_NOT_HAVE_MALLOC -fPIC py_tk_util.c
> cc -c -O -DDO_NOT_HAVE_MALLOC -fPIC w32func.c
> cc -shared -o GlHandler.so -L/usr/X11R6/lib -L/usr/lib -L/usr/lib -L/usr/lib \
> utility.o python_util.o gl_handler.o py_gl_handler.o py_tk_util.o w32fun
> c.o -lglut -lGLU -lGL -ltk8.4 -ltcl8.4 -lX11 -lXext -lm
> cc -shared -o MemCache.so utility.o python_util.o hash_list.o hash_table.o mem_c
> ache.o mutex.o py_mem_cache.o
> cc -c -O -DDO_NOT_HAVE_MALLOC -fPIC pdf_handler.c
> cc -c -I/usr/include/python2.4 -O -DDO_NOT_HAVE_MALLOC -fPIC py_pdf_handler.c
> cc -shared -o PdfHandler.so \
> utility.o python_util.o pdf_handler.o py_pdf_handler.o
> cc -c -O -DDO_NOT_HAVE_MALLOC -fPIC ps_handler.c
> cc -c -I/usr/include/python2.4 -O -DDO_NOT_HAVE_MALLOC -fPIC py_ps_handler.c
> cc -shared -o PsHandler.so \
> utility.o python_util.o ps_handler.o py_ps_handler.o
> cc -c -O -DDO_NOT_HAVE_MALLOC -fPIC fit.c
> fit.c:829: error: conflicting types for 'run_fit'
> fit.h:105: error: previous declaration of 'run_fit' was here
> make[1]: *** [fit.o] Error 1
> make[1]: Leaving directory `/data/prog/ccpnmr/ccpnmr1.0/c/memops/global'
> make: *** [global] Error 2
>
>
> Is this fixable?
>
> Cheers
>
> Ben
>
|