UCVM Installation Notes
UCVM is a complex collection of software with advanced high-performance capabilities. These capabilities introduce a significant amount of complexity building and using UCVM. To simply, UCVM is designed towards specific target computing systems, typically Linux. However, the software has been ported to multiple systems, and this page provides details on the status of those installations.
Contents
UCVM Current Version
This works focuses on building and using the most recent version of UCVM which is UCVM v15.10.0. We are testing the "all models" version of UCVM. In this case, as we install using, we respond "Yes" to each model that it offers.
UCVM Installation on Blue Waters
cc -o ucvm2etree-extract-MPI ucvm2etree_extract_MPI.o ue_extract.o ue_mpi.o ue_utils.o ue_config.o -L../ucvm -lucvm -L/projects/sciteam/jmz/ucvm_current/model/cvms5/lib -lcvms5 -lgfortran -lproj -letree - L/projects/sciteam/jmz/ucvm_current/model/cvms426/lib -lcvmsi -lgfortran -L/projects/sciteam/jmz/ucvm_current/model/cvms/lib -lcvms -lgfortran -L/projects/sciteam/jmz/ucvm_current/model/cvmh1510/lib -lvxapi - L/projects/sciteam/jmz/ucvm_current/model/cvmh1510/lib -lgeo -L/projects/sciteam/jmz/ucvm_current/model/cencal/lib -lcencalvm -lstdc++ -static -L/projects/sciteam/jmz/ucvm_current/lib/euclid3/lib -letree - L/projects/sciteam/jmz/ucvm_current/lib/proj-4/lib -lproj -pthread -L/projects/sciteam/jmz/ucvm_current/lib/fftw/lib -lfftw3 -lm /opt/cray/mpt/7.3.0/gni/mpich-gnu/4.9/lib/libmpich_gnu_49.a(utils.o): In function `pread': utils.c:(.text+0x350): multiple definition of `pread' /opt/cray/iobuf/2.0.6/lib/libiobuf.a(iobuf.o):/tmp/peint/iobuf/iobuf/scripts/builds/iobuf-2.0.4/iobuf.c:633: first defined here /opt/cray/mpt/7.3.0/gni/mpich-gnu/4.9/lib/libmpich_gnu_49.a(utils.o): In function `pwrite': utils.c:(.text+0x3a0): multiple definition of `pwrite' /opt/cray/iobuf/2.0.6/lib/libiobuf.a(iobuf.o):/tmp/peint/iobuf/iobuf/scripts/builds/iobuf-2.0.4/iobuf.c:651: first defined here /usr/bin/ld: link errors found, deleting executable `ucvm2etree-extract-MPI' collect2: error: ld returned 1 exit status make[1]: *** [ucvm2etree-extract-MPI] Error 1 make[1]: Leaving directory `/mnt/a/u/sciteam/maechlin/ucvm/UCVM/src/ucvm2etree' make: *** [all-recursive] Error 1 ERROR: An error occurred while trying to setup UCVM. Specifically, the error was: Error executing command.
UCVM Installation on a Mac OS X
Here are details about a successful installation of all models on a recent Macbook Pro running OS X with Xcode installed
- OS X El Capitan (Version 10.11.4)
- Xcode (Version 6.3.1)
- gcc versions
scecadms-MacBook-Pro-2:test maechlin$ which gcc /usr/local/bin/gcc scecadms-MacBook-Pro-2:test maechlin$ gcc -v Using built-in specs. COLLECT_GCC=gcc COLLECT_LTO_WRAPPER=/usr/local/libexec/gcc/x86_64-apple-darwin14.0.0/4.9.2/lto-wrapper Target: x86_64-apple-darwin14.0.0 Configured with: ../gcc-4.9-20141029/configure --enable-languages=c++,fortran Thread model: posix gcc version 4.9.2 20141029 (prerelease) (GCC)
Once the OS and Xcode is installed, we need to install the auto tools suite. The following commands must run on the command line for the UCVM installation to work.
% autoscan % aclocal
If these commands don't run on your Mac, you need to install the auto tools suite in order to build UCVM. Autotools installation (via script of) Get Autotools Script
- autoconf-2.69.tar.gz
- automake-1.15.tar.gz
- libtool-2.4.6.tar.gz
- Installation Script
- Once installed following commands run on shell command line
- %autoscan
- %aclocal
In a user directory unzip the icvm-15.10.0.tar.gz file
tar- zxvf ucvm-15.10.0.tar.gz
scecadms-MacBook-Pro-2:ucvm maechlin$ tar zxvf *.gz x ./UCVM/ X ./UCVM/ ...
Then
%cd UCVM into /Users/maechlin/Documents/dev/ucvm/UCVM
Then ./ucvm_setup.py
Install in default location and respond (yes) to all models:
Where would you like UCVM to be installed? (Default: /Users/maechlin/ucvm-15.10.0) Enter path or blank to use the default path : (hit return to accept default path) Would you like to download and install CVM-S5? Enter yes or no: yes Would you like to download and install CCA? Enter yes or no: yes Would you like to download and install CVM-S4.26? Enter yes or no: yes Would you like to download and install CVM-H? Enter yes or no: yes Would you like to download and install CVM-S4? Enter yes or no: yes Would you like to download and install CenCalVM? Enter yes or no: yes
You have indicated that you would like to download and install CVM-S5, CCA, CVM-S4.26, CVM-H, CVM-S4, and CenCalVM You have indicated that you would like to download and install Euclid3, Proj4, and FFTW
Now setting up UCVM libraries...
Once the build is complete, we run "make check"
Build Process: The download and build process, at USC, takes several hours. For example, just download the CenCalVM takes more than 20 minutes, and more time is required to build the installation. During the installation, various scripts are run that produce both errors and warnings. The installation process
%make check fails with link library error
Passing Unit Tests
Test: UCVM lib initialization PASS Test: UCVM lib add model 1D PASS Test: UCVM lib query 1D PASS Test: UCVM lib query 1D GTL PASS Test: UCVM lib get model label 1D PASS Test: UCVM lib get ifunc label 1D PASS Test: UCVM lib setparam querymode geo-depth 1D PASS Test: UCVM lib setparam querymode geo-elev 1D PASS Test: UCVM lib model version 1D PASS Test: UCVM lib query user model PASS Test: UCVM lib add model USGS CenCal PASS Test: UCVM lib add model SCEC CVM-H PASS Test: UCVM lib add model SCEC CVM-S PASS Test: UCVM lib add model SCEC CVM-SI PASS