blctlxx:~/release-3_2 > cvs checkout -r release-3_2 tcl_clibs cvs checkout: Updating tcl_clibs cvs checkout: Updating tcl_clibs/decunix U tcl_clibs/decunix/makefile cvs checkout: Updating tcl_clibs/irix U tcl_clibs/irix/makefile U tcl_clibs/irix/tcl_clibs.so cvs checkout: Updating tcl_clibs/linux U tcl_clibs/linux/calibrate.so U tcl_clibs/linux/makefile cvs checkout: Updating tcl_clibs/src U tcl_clibs/src/analyzePeak.c U tcl_clibs/src/analyzePeak.h U tcl_clibs/src/calibrate.c U tcl_clibs/src/calibrate.h U tcl_clibs/src/cubgcv.c U tcl_clibs/src/cubgcv.h U tcl_clibs/src/ice.c U tcl_clibs/src/ice_auth.c U tcl_clibs/src/ice_auth.h U tcl_clibs/src/ice_cal.c U tcl_clibs/src/ice_cal.h U tcl_clibs/src/image_channel.c U tcl_clibs/src/image_channel.h U tcl_clibs/src/tcl_macros.h
cd into the linux, decunix,
or irix build directory and build the
software with the make command.
blctlxx:~/release-3_2 > cd tcl_clibs/linux/ blctlxx:~/release-3_2/tcl_clibs/linux > make g++ -c -O -DLINUX -Wall -I./ -I../ -I/usr/local/include/ -I../../auth/src -I../../xos/src/ -I/usr/lib/ -I../../jpegsoc//src ../src/ice.c g++ -c -O -DLINUX -Wall -I./ -I../ -I/usr/local/include/ -I../../auth/src -I../../xos/src/ -I/usr/lib/ -I../../jpegsoc//src ../src/ice_cal.c g++ -c -I../../newmat10/linux/ ../src/calibrate.c ../src/calibrate.c: In function `int cal_convolutegaussian (ColumnVector &, ColumnVector &, double)': ../src/calibrate.c:205: warning: assignment to `int' from `double' ../src/calibrate.c:205: warning: argument to `int' from `double' g++ -c -O -DLINUX -Wall -I./ -I../ -I/usr/local/include/ -I../../auth/src -I../../xos/src/ -I/usr/lib/ -I../../jpegsoc//src ../src/ice_auth.c g++ -c -O -DLINUX -Wall -I./ -I../ -I/usr/local/include/ -I../../auth/src -I. ./../xos/src/ -I/usr/lib/ -I../../jpegsoc//src ../src/image_channel.c g++ -c -O -DLINUX -Wall -I./ -I../ -I/usr/local/include/ -I../../auth/src -I. ./../xos/src/ -I/usr/lib/ -I../../jpegsoc//src ../src/analyzePeak.c ../src/analyzePeak.c: In function `int nonzero (double *, int)': ../src/analyzePeak.c:336: warning: `int nzero' might be used uninitialized in this function ../src/analyzePeak.c: In function `int find_extrema (int, double *, double *, double **, double *, double *, int *, double *, double *, int *)': ../src/analyzePeak.c:348: warning: `double root1' might be used uninitialized in this function ../src/analyzePeak.c:348: warning: `double ex1' might be used uninitialized in this function ../src/analyzePeak.c:348: warning: `double ex2' might be used uninitialized in this function g++ -c -O -DLINUX -Wall -I./ -I../ -I/usr/local/include/ -I../../auth/src -I. ./../xos/src/ -I/usr/lib/ -I../../jpegsoc//src ../src/cubgcv.c ../src/cubgcv.c: In function `int cubgcv (double *, double *, double *, int, double *, double **, int, double *, int, double *, double **, double **, double *, double *, int *)': ../src/cubgcv.c:258: warning: label `L150' defined but not used ../src/cubgcv.c:253: warning: label `L140' defined but not used g++ -shared ice.o ice_cal.o calibrate.o ice_auth.o image_channel.o analyzePea k.o cubgcv.o ../../jpegsoc/linux/jpegsoc_applack.a ../../newmat10/linux/libnew mat.a ../../auth/linux/auth.a ../../xos/linux/xos.a /usr/lib/libjpeg.a -lc / usr/lib/libtcl8.3.so -lm -lpthread -o tcl_clibs.so
smblx5:~> wish % load ~/release-3_2/tcl_clibs/linux/tcl_clibs.so dcs_c_library % cal_find_peak 5 "1 2 3 4 5" "1 2 3 2 1" 3.000000e+00 3.000000e+00 % exit
IMPORTANT: Make the 'load' command from the wish command prompt work before you attempt to install blu-ice and dcss. Its much easier to figure out why the load command doesn't work at this stage than it is to figure out what is wrong at the start-up of blu-ice.
Note: If you were unsuccessful in build newmat10, this library will not build. You can attempt to remove the references to the newmat10 library by changing the makefile and ice.c file as shown in this diff output:
smblx5:~/release-3_2/tcl_clibs > cvs diff
cvs diff: Diffing .
cvs diff: Diffing decunix
cvs diff: Diffing irix
cvs diff: Diffing linux
Index: linux/makefile
===================================================================
RCS file: /home/code/repository/tcl_clibs/linux/makefile,v
retrieving revision 1.8
diff -r1.8 makefile
65c65
< LOCAL_LIBS = ${JPEG_EXT_DIR}linux/jpegsoc_applack.a ${NEWMAT_LIB_DIR}libnewmat.a ${AUTH_LIB_DIR}auth.a ${XOS_LIB_DIR}xos.a ${JPEG_DIR}libjpeg.a
---
> LOCAL_LIBS = ${JPEG_EXT_DIR}linux/jpegsoc_applack.a ${AUTH_LIB_DIR}auth.a ${XOS_LIB_DIR}xos.a ${JPEG_DIR}libjpeg.a
70c70
< OBJS = ice.o ice_cal.o calibrate.o ice_auth.o image_channel.o analyzePeak.o cubgcv.o
---
> OBJS = ice.o ice_auth.o image_channel.o analyzePeak.o cubgcv.o
85,90d84
<
< ice_cal.o : ${CODE}ice_cal.c
< ${CC} -c ${CFLAGS} ${CPP_CONSTANTS} ${INCLUDE_DIR} ${CODE}ice_cal.c
<
< calibrate.o : ${CODE}calibrate.c
< ${CC} -c -I${NEWMAT_DIR} ${CODE}calibrate.c
cvs diff: Diffing src
Index: src/ice.c
===================================================================
RCS file: /home/code/repository/tcl_clibs/src/ice.c,v
retrieving revision 1.11
diff -r1.11 ice.c
51,52d50
< REGISTER_TCL_COMMAND( cal_find_peak );
< REGISTER_TCL_COMMAND( cal_correct_energy );