Building from sources
Prior to building MDSplus you will need to install a few additional packages required for the building process to work correctly. Even if you do not intend to use all of the MDSplus applications, some of the MDSplus internals may be linked to libraries in these prerequisite packages which would prevent them from loading if those packages were not installed. The following table lists the packages required and provides links to download sites where you can find them. Should these links become stale you can either search the web for these packages or post a note to the MDSplus mailing list and the developers will attempt to update the information on this page.
|XCode Command Line Tools|| Mac OS-X 10.6-Xcode 3.2.2|
Mac OS-X 10.7+ Get Xcode 4.x from App Store
| OS X 10.6 - download and install xcode 3.2.2|
OS X 10.7+ nstall Xcode 4.x from the Mac App Store. Start Xcode and from File->Preferences downloads tab install the command line tools.
|Xcode SDK headers Package||Located here: /Library/Developer/CommandLineTools/Packages/macOS_SDK_headers_for_macOS_10.14.pkg|| Simply, open a terminal and type the following as super-user: |
sudo installer -pkg /Library/Developer/CommandLineTools/Packages/macOS_SDK_headers_for_macOS_10.14.pkg -target /
|LibXML library||Located here: /Library/Developer/CommandLineTools/Packages/macOS_SDK_headers_for_macOS_10.14.pkg|| Simply, open a terminal and type the following: |
brew install libxml2
You will need to have Home Brew installed in your system, see https://brew.sh
From your terminal type:
/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
|pkg-config Tool||See here for more details about this tool: https://www.freedesktop.org/wiki/Software/pkg-config/|| Simply, open a terminal and type the following: |
brew install pkg-config
|gfortran||Fortran compiler: http://gcc.gnu.org/wiki/GFortran|| Simply, open a terminal and type the following: |
brew install gcc
|autoconf Tool||https://www.gnu.org/software/autoconf/|| Simply, open a terminal and type the following: |
brew install autoconf
This tool is only necessary if you need to modify the configure script and makefiles.
|OpenMotif|| OpenMotif Downloads |
| For OS X older than Mojave: Download the dmg file from the 2nd link, and run the installer package from the disk image.|
Note: the 10.5 package appears to work for 10.6.
Note: for OS X Mojave and later, simply, open a terminal and type the following:
brew install openmotif
|FreeTDS||FreeTDS Home Page|| Download the tarball from the 'stable release' link on the upper right. |
Use finder to navigate to the downloaded file, and double click it to expand it to a folder.
With a terminal, cd to the expanded directory (~/Downloads/freetds-X.YY). Configure by typing ./configure.
Build by typing make. Install by typing sudo make install.
Note: you will have to provide your password for the sudo commmand.
|Xquartz - OS-X 10.8||Xquartz installation||on Mac OS-X 10.8 Mountain Lion, an X-11 server is not included. In order to run the X-Windows based MDSplus applications (traverser, dwscope, dwscope-remote) you will need to install XQuartz.|
|Java run time environment||On OS-X 10.8 Mountain Lion, the first time a java application is run (jScope, jTraverser) the system will prompt to install the Java SE runtime environment. This is required to run these applications.|
Xcode version 5 no longer ships with cvs. if you need cvs get it from: , You will have to download, and make. make install will not work (it is looking for /tmp/cvs/Debug) which does not exist. Copy the executable from /tmp/cvs/Build/src to /usr/local bin.
cp /tmp/cvs/Build/src/cvs /usr/local/bin
- choose 'stable' or 'alpha' - ""note alpha is the active development branch and may contain untested code.""
- choose 'zip' or 'tar.gz'
- download the sources (choose one of):
- wget https://github.com/MDSplus/mdsplus/archive/alpha.zip
- wget https://github.com/MDSplus/mdsplus/archive/alpha.tar.gz
- wget https://github.com/MDSplus/mdsplus/archive/stable.zip
- wget https://github.com/MDSplus/mdsplus/archive/stable.tar.gz
- expand the zip or tar
- cd to the directory
The MDSplus repository can also be cloned from github using:
git clone https://github.com/MDSplus/mdsplus.git
Note: Building from the head of the git repository may lead to unpredictable results. It should be safer to select a release version using the appropriate release tags.
Building MDSplus using Docker
On linux systems that support docker you have the ability to build from MDSplus sources for all the supported platforms except for MacOSX. Once you have the sources you can execute the following command to build a installer for the operating system of your choice:
$ mkdir ~/build $ cd ~/build $ ~/mdsplus-src-dir/deploy/build.sh --os=os-name --release
where os-name would be something like fc25 or ubuntu16 etc. The available choices can be found by doing
$ ls ~/mdsplus-src-dir/deploy/os/*.opts
This build.sh script will pull the necessary docker image from dockerhub.com to build MDSplus for that platform. The build results should be in subdirectories of the build directory and will include a full buildroot used for constructing installers and the new package installers. You do not need anything else installed on your system beside docker using this method as all the libraries, compilers etc are provided in the docker images which are used to build MDSplus.
This docker build mechanism is how the standard releases of MDSplus are created and published to mdsplus.org repositories. Each night the alpha and stable branches of MDSplus are automatically fetched by a Jenkins job and examined for updates. These jobs then trigger build jobs which use Docker to test and build MDSplus for a large variety of platforms.