next up previous contents 5
Next: Configuring DCSS Up: Installation Previous: Installing the mysql client   Contents

Installing DCSS

Each beam line must have one (and only one) installation of DCSS. The DCSS program must run on a computer that has network access to the computers that will be running the BLU-ICE clients as well as the computers running the Distributed Hardware Servers (DHS's). At SSRL, the DHS's usually run on computers that are on a private network, whereas the BLU-ICE's clients run on computers that are on a more open public network. This architecture implies that the DCSS program must run on a computer that is multi-homed and able to see both the public and private networks.

This document shows an example installation on a Linux computer used for simulation (blctlxx).

  1. Verify that you have a recent version of TCL installed on your computer.

    [scottm@blctl92 ~]$ tclsh
    % info tclversion
    8.3
    % exit
    [scottm@blctl92 ~]$
    %$
    

  2. Install the mysql client libraries .

  3. Install the xos library .

  4. Install the auth library .

  5. Install the tcl_clibs .

  6. Install the dcs_tcl_packages library .

  7. Checkout the DCSS software into the /usr/local/dcs directory

    blctlxx:/usr/local/dcs > cvs checkout dcss
    cvs checkout: Updating dcss
    cvs checkout: Updating dcss/decunix
    U dcss/decunix/dcss
    U dcss/decunix/example_database_dump.txt
    U dcss/decunix/makefile
    cvs checkout: Updating dcss/examples
    U dcss/examples/databaseTables.txt
    U dcss/examples/exampleFullDatabase.txt
    U dcss/examples/example_bl111sim_dump.txt
    U dcss/examples/example_bl91sim_dump.txt
    U dcss/examples/serverPorts.txt
    cvs checkout: Updating dcss/linux
    U dcss/linux/dcss
    U dcss/linux/makefile
    cvs checkout: Updating dcss/scripts
    cvs checkout: Updating dcss/scripts/devices
    U dcss/scripts/devices/attenuation.tcl
    U dcss/scripts/devices/beam_size_x.tcl
    U dcss/scripts/devices/beam_size_y.tcl
    U dcss/scripts/devices/box_size.tcl
    U dcss/scripts/devices/detector_z_corr.tcl
    U dcss/scripts/devices/energy_bl11.tcl
    U dcss/scripts/devices/energy_bl15.tcl
    U dcss/scripts/devices/energy_bl91.tcl
    U dcss/scripts/devices/energy_bl92.tcl
    U dcss/scripts/devices/linear_dac.tcl
    U dcss/scripts/devices/mirror_chin_gap_bl11.tcl
    U dcss/scripts/devices/mirror_chin_gap_bl91.tcl
    U dcss/scripts/devices/mirror_vert_chin_bl11.tcl
    U dcss/scripts/devices/mirror_vert_chin_bl91.tcl
    U dcss/scripts/devices/mirror_vert_chin_bl92.tcl
    U dcss/scripts/devices/mono_piezo.tcl
    U dcss/scripts/devices/mono_theta.tcl
    U dcss/scripts/devices/mono_theta_corr_bl92.tcl
    U dcss/scripts/devices/optimized_energy_bl11.tcl
    U dcss/scripts/devices/optimized_energy_bl15.tcl
    U dcss/scripts/devices/optimized_energy_bl91.tcl
    U dcss/scripts/devices/optimized_energy_bl92.tcl
    U dcss/scripts/devices/slit_1_horiz.tcl
    U dcss/scripts/devices/slit_1_horiz_gap.tcl
    U dcss/scripts/devices/slit_1_vert.tcl
    U dcss/scripts/devices/slit_1_vert_gap.tcl
    U dcss/scripts/devices/slit_2_horiz.tcl
    U dcss/scripts/devices/slit_2_horiz_gap.tcl
    U dcss/scripts/devices/slit_2_vert.tcl
    U dcss/scripts/devices/slit_2_vert_gap.tcl
    U dcss/scripts/devices/standardVirtualMotor.tcl
    U dcss/scripts/devices/table_2theta.tcl
    U dcss/scripts/devices/table_h2_z.tcl
    U dcss/scripts/devices/table_horz.tcl
    U dcss/scripts/devices/table_pitch.tcl
    U dcss/scripts/devices/table_slide_z.tcl
    U dcss/scripts/devices/table_v1_z.tcl
    U dcss/scripts/devices/table_v2_z.tcl
    U dcss/scripts/devices/table_vert.tcl
    U dcss/scripts/devices/table_yaw.tcl
    cvs checkout: Updating dcss/scripts/engine
    U dcss/scripts/engine/DcssConnection.tcl
    U dcss/scripts/engine/configure_motor.tcl
    U dcss/scripts/engine/dcsSocketClass.tcl
    U dcss/scripts/engine/hardware_commands.tcl
    U dcss/scripts/engine/message_handlers.tcl
    U dcss/scripts/engine/motor_control.tcl
    U dcss/scripts/engine/scriptingEngine.tcl
    U dcss/scripts/engine/set.tcl
    U dcss/scripts/engine/util.tcl
    cvs checkout: Updating dcss/scripts/operations
    U dcss/scripts/operations/SequenceDevice.tcl
    U dcss/scripts/operations/calibration.tcl
    U dcss/scripts/operations/centerLoop.tcl
    U dcss/scripts/operations/collectFrame.tcl
    U dcss/scripts/operations/collectRun.tcl
    U dcss/scripts/operations/collectRuns.tcl
    U dcss/scripts/operations/collectStillImage.tcl
    U dcss/scripts/operations/excitationScan.tcl
    U dcss/scripts/operations/expose.tcl
    U dcss/scripts/operations/moveSample.tcl
    U dcss/scripts/operations/normalize.tcl
    U dcss/scripts/operations/optimize.tcl
    U dcss/scripts/operations/optimize_beam.tcl
    U dcss/scripts/operations/pauseDataCollection.tcl
    U dcss/scripts/operations/prepareForScan.tcl
    U dcss/scripts/operations/recoverFromScan.tcl
    U dcss/scripts/operations/requestCollectedImage.tcl
    U dcss/scripts/operations/requestExposureTime.tcl
    U dcss/scripts/operations/sequence.tcl
    U dcss/scripts/operations/sequenceGetConfig.tcl
    U dcss/scripts/operations/sequenceSetConfig.tcl
    cvs checkout: Updating dcss/scripts/strings
    U dcss/scripts/strings/standardString.tcl
    cvs checkout: Updating dcss/src
    U dcss/src/dcss_broadcast.c
    U dcss/src/dcss_broadcast.h
    U dcss/src/dcss_client.c
    U dcss/src/dcss_client.h
    U dcss/src/dcss_collect.c
    U dcss/src/dcss_collect.h
    U dcss/src/dcss_database.c
    U dcss/src/dcss_database.h
    U dcss/src/dcss_detector.h
    U dcss/src/dcss_device.h
    U dcss/src/dcss_gui_client.c
    U dcss/src/dcss_gui_client.h
    U dcss/src/dcss_hardware_client.c
    U dcss/src/dcss_hardware_client.h
    U dcss/src/dcss_main.c
    U dcss/src/dcss_scripting.c
    U dcss/src/dcss_scripting.h
    U dcss/src/dcss_users.c
    U dcss/src/dcss_users.h
    U dcss/src/tcl_macros.h
    U dcss/src/wedge.h
    U dcss/src/wedge4.c
    blctlxx:/usr/local/dcs >
    

  8. cd into the linux, decunix, or irix build directory.

    blctlxx:/usr/local/dcs > cd dcss/linux/

  9. Build the software with the make command.

    blctlxx:/usr/local/dcs/dcss/linux > make
    cc -c -pthread -O5 -lsocket -DLINUX  -DSEC_BASE -DSEC_NET -I../src -I../../xos//src/ -I/usr/include -I../../auth/src -I/usr/include/mysql -I/usr/include/cxx ../src/dcss_main.c
    ../src/dcss_main.c: In function `start_server':
    ../src/dcss_main.c:210: warning: passing arg 2 of `xos_thread_create' from incompatible pointer type
    ../src/dcss_main.c:222: warning: passing arg 2 of `xos_thread_create' from incompatible pointer type
    ../src/dcss_main.c:233: warning: passing arg 2 of `xos_thread_create' from incompatible pointer type
    cc: -lsocket: linker input file unused since linking not done
    cc -c -pthread -O5 -lsocket -DLINUX  -DSEC_BASE -DSEC_NET -I../src -I../../xos//src/ -I/usr/include -I../../auth/src -I/usr/include/mysql -I/usr/include/cxx ../src/dcss_database.c
    cc: -lsocket: linker input file unused since linking not done
    cc -c -pthread -O5 -lsocket -DLINUX  -DSEC_BASE -DSEC_NET -I../src -I../../xos//src/ -I/usr/include -I../../auth/src -I/usr/include/mysql -I/usr/include/cxx ../src/dcss_client.c
    cc: -lsocket: linker input file unused since linking not done
    cc -c -pthread -O5 -lsocket -DLINUX  -DSEC_BASE -DSEC_NET -I../src -I../../xos//src/ -I/usr/include -I../../auth/src -I/usr/include/mysql -I/usr/include/cxx ../src/dcss_scripting.c
    cc: -lsocket: linker input file unused since linking not done
    cc -c -pthread -O5 -lsocket -DLINUX  -DSEC_BASE -DSEC_NET -I../src -I../../xos//src/ -I/usr/include -I../../auth/src -I/usr/include/mysql -I/usr/include/cxx ../src/dcss_broadcast.c
    cc: -lsocket: linker input file unused since linking not done
    cc -c -pthread -O5 -lsocket -DLINUX  -DSEC_BASE -DSEC_NET -I../src -I../../xos//src/ -I/usr/include -I../../auth/src -I/usr/include/mysql -I/usr/include/cxx ../src/dcss_gui_client.c
    cc: -lsocket: linker input file unused since linking not done
    cc -c -pthread -O5 -lsocket -DLINUX  -DSEC_BASE -DSEC_NET -I../src -I../../xos//src/ -I/usr/include -I../../auth/src -I/usr/include/mysql -I/usr/include/cxx ../src/dcss_hardware_client.c
    cc: -lsocket: linker input file unused since linking not done
    cc -c -pthread -O5 -lsocket -DLINUX  -DSEC_BASE -DSEC_NET -I../src -I../../xos//src/ -I/usr/include -I../../auth/src -I/usr/include/mysql -I/usr/include/cxx ../src/wedge4.c
    cc: -lsocket: linker input file unused since linking not done
    cc -c -pthread -O5 -lsocket -DLINUX  -DSEC_BASE -DSEC_NET -I../src -I../../xos//src/ -I/usr/include -I../../auth/src -I/usr/include/mysql -I/usr/include/cxx ../src/dcss_users.c
    cc: -lsocket: linker input file unused since linking not done
    cc -o dcss -lz dcss_main.o dcss_database.o dcss_client.o dcss_scripting.o dcss_broadcast.o dcss_gui_client.o dcss_hardware_client.o wedge4.o dcss_users.o -lm -lrt /usr/lib/mysql/libmysqlclient.a ../../xos//linux//xos.a ../../auth/linux/auth.a -lpthread -lc -ltk8.3 -ltcl8.3 -litcl3.1
    


next up previous contents 5
Next: Configuring DCSS Up: Installation Previous: Installing the mysql client   Contents
Scott McPhillips 2002-10-10