Skip to content
Snippets Groups Projects
Commit 00ec8128 authored by Riccardo Maria Bianchi's avatar Riccardo Maria Bianchi :sunny:
Browse files

Update syntax highlighting and add links

parent 8ce9cc6c
Branches
Tags
No related merge requests found
Pipeline #1541112 passed
......@@ -2,118 +2,109 @@
Tools and utilities for GeoModel-based detector description projects. This includes the CLHEP ExpressionEvaluator
(which was moved here to use throughout the project without linking against CLHEP), an XML parser (GeoModelXMLParser) and
a JSON Parser. The GeoModelTools installation requires the GeoModel suite (GeoModelCore, GeoModelIO), Eigen3, XercesC,
nlohmann.
a JSON Parser. The GeoModelTools installation requires the GeoModel suite ([GeoModelCore](https://gitlab.cern.ch/GeoModelDev/GeoModelCore),
[GeoModelIO](https://gitlab.cern.ch/GeoModelDev/GeoModelIO)), Eigen3, XercesC, and nlohmann_json.
## Installation
Detailed installation procedures are available for each and every package, here is a brief and not-exhaustive list of
installation procedures for many of them, just bear in mind prepackaged versions are already available (e.g.
`brew install eigen` on Mac). Note also that the following procedures install libraries and files under /usr/local, for
a local installation use the CMAKE_INSTALL_PREFIX flag, e.g. `cmake -DCMAKE_INSTALL_PREFIX=../install ...`
`brew install eigen` on Mac).
it is suggested to create a local work directory where all code will be downloaded/built. E.g.
Note also that the following procedures install libraries and files under /usr/local, for
a local installation use the `CMAKE_INSTALL_PREFIX` flag, e.g. `cmake -DCMAKE_INSTALL_PREFIX=../install ...`.
That is especially useful when working on multiple versions of the code, for each version to be self-contained in one single folder.
It is suggested to create a local work directory where all code will be downloaded/built. E.g.
```bash
mkdir geomodel_work; cd geomodel_work
```
### Eigen
```bash
git clone https://github.com/eigenteam/eigen-git-mirror.git
mkdir build_eigen; cd build_eigen
cmake ../eigen-git-mirror
sudo make install
cd ..
```
### XercesC
from http://xerces.apache.org/xerces-c/download.cgi download e.g. xerces-c-3.2.2.tar.gz
tar zxvf xerces-c-3.2.2.tar.gz
From http://xerces.apache.org/xerces-c/download.cgi download e.g. `xerces-c-3.2.2.tar.gz`
```bash
tar zxvf xerces-c-3.2.2.tar.gz
mkdir build_xercesc; cd build_xercesc
cmake ../xerces-c-3.2.2
make -j
sudo make install
cd ..
```
### nlohmann
```bash
git clone https://github.com/nlohmann/json.git
mkdir build_json; cd build_json
cmake ../json
sudo make install
cd ..
```
### GeoModel tool suite
Note: GeoModelVisualization requires Qt5 and other libraries. Please refer to the gmex documentation
Note: GeoModelVisualization requires Qt5 and other libraries. Please refer to the `gmex` [documentation](https://gitlab.cern.ch/GeoModelDev/GeoModelVisualization/README.md)
#### Clone and build GeoModelCore from source
```bash
git clone https://gitlab.cern.ch/GeoModelDev/GeoModelCore.git
mkdir build_GeoModelCore; cd build_GeoModelCore
cmake ../GeoModelCore
make -j
sudo make install
cd ..
```
#### Clone and build GeoModelIO
```bash
git clone https://gitlab.cern.ch/GeoModelDev/GeoModelIO.git
mkdir build_GeoModelIO; cd build_GeoModelIO
cmake ../GeoModelIO
make -j
sudo make install
cd ..
```
#### Clone geomodelvisualization and build gmex
```bash
git clone https://gitlab.cern.ch/GeoModelDev/geomodelvisualization.git
mkdir build_geomodelvisualization; cd build_geomodelvisualization
cmake ../geomodelvisualization
make -j
sudo make install
cd ..
```
### Clone and build GeoModelTools
```bash
git clone https://gitlab.cern.ch/GeoModelDev/GeoModelTools.git
mkdir build_GeoModelTools; cd build_GeoModelTools
cmake ../GeoModelTools
make -j
sudo make install
cd ..
```
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment