#!/bin/sh
-if [ $# = 0 ]
-then
- echo "Use it as :"
- echo "sh install_thirdparty_all.sh <nameOfTheGenerationDirectory> <installPrefix> <buildType> <OperatingSystem>"
- echo "with 'OperatingSystem' in {Fedora, Ubuntu, MacOS}"
- echo " "
- echo "ex : sh install_thirdparty_all.sh /tmp/gendir ~/Creatis/myInstallDirectory Debug Ubuntu"
- exit 0
-fi
+#if [ $# = 0 ]
+#then
+# echo "Use it as :"
+# echo "sh install_thirdparty_all.sh <nameOfTheGenerationDirectory> <installPrefix> <buildType> <OperatingSystem>"
+# echo "with 'OperatingSystem' in {Fedora, Ubuntu, MacOS}"
+# echo "with 'installPrefix' : /usr/local or <directory where you want to install>/thirdparty_install
+# echo " "
+# echo "ex : sh install_thirdparty_all.sh /tmp/gendir /tmp/gendir/thirdparty_install Debug Ubuntu"
+# exit 0
+#fi
echo $#
echo "----------"
echo $4
echo "----------"
-if [ $# != 4 ]
+
+
+if [ $# = 0 || $# != 4 ]
then
echo "Use it as :"
echo "sh install_thirdparty_all.sh <nameOfTheGenerationDirectory> <installPrefix> <buildType> <OperatingSystem>"
- echo "with 'OperatingSystem' in {Fedora, Ubuntu, MacOS}"
+ echo "with 'OperatingSystem' in {Fedora, Ubuntu, MacOS}"
+ echo "with 'installPrefix' : /usr/local or <directory where you want to install> "
echo " "
- echo "ex : sh install_thirdparty_all.sh /tmp/gendir ~/Creatis/myInstallDirectory Debug Ubuntu"
+ echo "ex : sh install_thirdparty_all.sh /tmp/gendir /tmp/gendir/thirdparty_install Debug Ubuntu"
exit 0
fi
-
+echo $OS
generationdir=$1
installPrefix=$2
buildType=$3
sourcesDir=$generationdir/thirdparty_sources
binDir=$generationdir/thirdparty_bin
+
mkdir $generationdir
mkdir $sourcesDir
mkdir $binDir
+rm $installPrefix/share/creatools_third_party_library_config.sh
+
+
+
+
# the following stupid test is used at debug time; Please don't remove!
if [ true = true ]
then
- case $OS in
+ case "$OS" in
Fedora)
- sudo yum install cmake -y
- sudo yum install cmake-gui -y
- sudo yum install doxygen -y
- sudo yum install graphviz -y
- sudo yum install texlive -y
- sudo yum install latex2html -y
- sudo yum install wxGTK-devel wxBase -y
- sudo yum install boost-devel -y
- sudo yum install sqlite-devel -y
- sudo yum install qt-devel -y
- sudo yum install mesa-libOSMesa-devel -y
+ yum install cmake -y
+ yum install cmake-gui -y
+ yum install doxygen -y
+ yum install graphviz -y
+ yum install texlive -y
+ yum install latex2html -y
+ yum install wxGTK-devel wxBase -y
+ yum install boost-devel -y
+ yum install sqlite-devel -y
+ yum install qt-devel -y
+ yum install mesa-libOSMesa-devel -y
;;
Ubuntu)
- sudo apt-get --yes install build-essential # esta linea instala las librerias necesarias para compilar en ubuntu, g++ gcc etc etc etc.
- sudo apt-get --yes install cmake
- sudo apt-get --yes install cmake-gui
- sudo apt-get --yes install cmake-curses-gui
- sudo apt-get --yes install doxygen
- sudo apt-get --yes install graphviz
- sudo apt-get --yes install texlive
- sudo apt-get --yes install latex2html
- sudo apt-get --yes install libgtk2.0-dev #GTK
- sudo apt-get --yes install libwxgtk2.8-dev #Wx GTK
- sudo apt-get --yes install libwxbase2.8-dev #Wx solito
- sudo apt-get --yes install libboost-dev #Boost
- sudo apt-get --yes install libboost-all-dev #Boost
- sudo apt-get --yes install libqt4-dev #QT4
- sudo apt-get --yes install sqlite
- sudo apt-get --yes install libosmesa6-dev #Mesa6
- sudo apt-get --yes install uuid-dev # uuid para la instalacion de itk
- sudo apt-get --yes install libxaw7-dev # X11
+ apt-get --yes install build-essential # esta linea instala las librerias necesarias para compilar en ubuntu, g++ gcc etc etc etc.
+ apt-get --yes install cmake
+ apt-get --yes install cmake-gui
+ apt-get --yes install cmake-curses-gui
+ apt-get --yes install doxygen
+ apt-get --yes install graphviz
+ apt-get --yes install texlive
+ apt-get --yes install latex2html
+ apt-get --yes install libgtk2.0-dev #GTK
+ apt-get --yes install libwxgtk2.8-dev #Wx GTK
+ apt-get --yes install libwxbase2.8-dev #Wx solito
+ apt-get --yes install libboost-dev #Boost
+ apt-get --yes install libboost-all-dev #Boost
+ apt-get --yes install libqt4-dev #QT4
+ apt-get --yes install sqlite
+ apt-get --yes install libsqlite0-dev
+ apt-get --yes install libosmesa6-dev #Mesa6
+ apt-get --yes install uuid-dev # uuid para la instalacion de itk
+ apt-get --yes install libxaw7-dev # X11
;;
MacOS)
- echo "MacOS not yet dealt with ..."
- exit 0
+# QUESTION : is -y mandatory?
+
+ port install cmake -y
+ port install cmake-gui -y
+ port install doxygen -y
+ port install graphviz -y
+ port install texlive -y
+ port install latex2html -y
+ port install wxGTK-devel wxBase -y
+ port install boost-devel -y
+ port install sqlite-devel -y
+ port install qt-devel -y
+ port install mesa-libOSMesa-devel -y
;;
*)
- echo " '$OS' : Unknown (for us...) Operating Sytem "
+ #echo " '$OS' : Unknown (for us...) Operating Sytem "
echo " Allowed values are (right now) Fedora, Ubuntu, MacOS "
exit 0
;;
# the following stupid test is used at debug time; Please don't remove!
if [ true = true ]
then
- rm -rf $sources/VTK*
- rm -rf $sources/vtk*
- rm -rf $sources/InsightToolkit*
- rm -rf $sources/gdcm*
+ rm -rf $sourcesDir/VTK*
+ rm -rf $sourcesDir/vtk*
+ rm -rf $sourcesDir/InsightToolkit*
+ rm -rf $sourcesDir/gdcm*
+ rm -rf $sourcesDir/tth*
cd $sourcesDir
wget http://www.creatis.insa-lyon.fr/software/public/creatools/crea_ThirdParty_Libraries/source/vtk-5.6.1.tar.gz
wget http://www.creatis.insa-lyon.fr/software/public/creatools/crea_ThirdParty_Libraries/source/gdcm_08_Dic_2009.tar.gz
wget http://www.creatis.insa-lyon.fr/software/public/creatools/crea_ThirdParty_Libraries/source/InsightToolkit-3.20.0.tar.gz
+ wget http://www.creatis.insa-lyon.fr/software/public/creatools/crea_Developer_Tools/All_Versions/tth/tth_linux/tth
+
tar -xvzf vtk-5.6.1.tar.gz
tar -xvzf gdcm_08_Dic_2009.tar.gz
tar -xvzf InsightToolkit-3.20.0.tar.gz
libname=VTK
dirInstall=$binDir/$libname-Bin
dirInstallVTK=$dirInstall
- mkdir $dirInstall
+ VTK_DIR=$installPrefix/lib/vtk-5.6/
cd $dirInstall
cmake -G"Unix Makefiles" -H$sourcesDir/$libname -B$dirInstall/
##cmake -G"CodeBlocks - Unix Makefiles" -H$sourcesDir/$libname -B$dirInstall/
cmake -D USE_DEBUG_LIB:BOOL=$buildType -D CMAKE_INSTALL_PREFIX:PATH=$installPrefix CMakeCache.txt
cmake -D BUILD_EXAMPLES:BOOL=OFF -D BUILD_TESTING:BOOL=OFF -D BUILD_SHARED_LIBS:BOOL=ON -D VTK_USE_QT:BOOL=ON CMakeCache.txt
make -j 2
- sudo make install
+ make install
cd ..
fi
then
libname=gdcm
dirInstall=$binDir/$libname-Bin
+ GDCM_DIR=$installPrefix/lib/gdcm/
mkdir $dirInstall
cd $dirInstall
cmake -G"Unix Makefiles" -H$sourcesDir/$libname -B$dirInstall/
cmake -D VTK_DIR:PATH=$dirInstallVTK CMakeCache.txt
cmake -D GDCM_VTK:BOOL=ON -D GDCM_NAME_SPACE:STRING=gdcm13 CMakeCache.txt
make -j 2
- sudo make install
+ make install
cd ..
fi
then
libname=InsightToolkit-3.20.0
dirInstall=$binDir/$libname-Bin
+ ITK_DIR=$installPrefix/lib/InsightToolkit/
mkdir $dirInstall
cd $dirInstall
cmake -G"Unix Makefiles" -H$sourcesDir/$libname -B$dirInstall/
cmake -D BUILD_EXAMPLES:BOOL=OFF -D BUILD_TESTING:BOOL=OFF -D BUILD_SHARED_LIBS:BOOL=ON -D ITK_USE_REVIEW:BOOL=ON CMakeCache.txt
cmake CMakeCache.txt
make -j 2
- sudo make install
+ make install
cd ..
fi
+if [ true = true ]
+then
+ cd $sourcesDir
+ cp tth $installPrefix/bin
+fi
+
+#deal with create creatools_third_party_libraries_config.sh
+
+touch $installPrefix/share/creatools_third_party_library_config.sh
+chmod 666 $installPrefix/share/creatools_third_party_library_config.sh
+
+echo export PATH='$'PATH:$installPrefix/bin >> $installPrefix/share/creatools_third_party_library_config.sh
+echo export VTK_DIR=$installPrefix/lib/vtk-5.6 >> $installPrefix/share/creatools_third_party_library_config.sh
+echo export ITK_DIR=$installPrefix/lib/InsightToolkit >> $installPrefix/share/creatools_third_party_library_config.sh
+echo export GDCM_DIR=$installPrefix/lib/gdcm >> $installPrefix/share/creatools_third_party_library_config.sh
+echo export TTH=$installPrefix/bin/tth >> $installPrefix/share/creatools_third_party_library_config.sh
+echo export LD_LIBRARY_PATH='$'LD_LIBRARY_PATH:$GDCM_DIR >> $installPrefix/share/creatools_third_party_library_config.sh
+echo export LD_LIBRARY_PATH='$'LD_LIBRARY_PATH:$ITK_DIR >> $installPrefix/share/creatools_third_party_library_config.sh
+echo export LD_LIBRARY_PATH='$'LD_LIBRARY_PATH:$VTK_DIR >> $installPrefix/share/creatools_third_party_library_config.sh
+
+# modify .bashrc
+# - remove line 'sh $installPrefix/share/creatools_third_party_library_config.sh' if any (with accurate value for ???)
+sed -i -e '/.*creatools_third_party_library_config.*/ d' /etc/bashrc
+
+# - add line 'sh $installPrefix/share/creatools_third_party_library_config.sh' (with accurate value for ???)
+echo source $installPrefix/share/creatools_third_party_library_config.sh >> /etc/bashrc
+
+