--------------------------------------------------------------------------------- 2022/03/31 on MacOS 12.X : Upgrade from Earlier Version of MacOSX, say from 10.15 --------------------------------------------------------------------------------- 0) Clean up MacOSXWS and HEPonX $ cd $ rpm -qa > rpm.list.10.14 # remember osxws packages installed on 10.14 $ sudo rpm -e `rpm -qa | sed -e 's;\.fat$;;' | sed -e 's;\.noarch$;;' | sed -e 's;\.i386;;' | sed -e 's;\.x86_64;;'` $ sudo rm -rf /opt/osxws/* Then upgrade to "Big Sur". Do all the updates provided by Apple. -> Note that some old applications (flash, etc.) stopped working. 1) Install Xcode-13.2.1 if not yet. $ xcode-select --install # triggers the installation of command line tools Update MANPATH: $ cd $ vi .zshmyrc .... export MANPATH=$MANPATH:/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/share/man:/Library/Developer/CommandLineTools/usr/share/man $ exec $SHELL 2) Install Xquartz-2.8.1.dmg if not yet. 3) Reinstall osxws11 Install MacOSX-WS-11.1.dmg $ sudo apt-get update $ sudo apt-get install OSX-base Edit ~/.zshrc to comment out unwanted completion features such as compctl -g/g '*.dat' xgraph # this was a huge mess! 4) Install basic OSXWS packages $ sudo apt-get update $ sudo apt-get install BibDesk ImageMagick-c++ ImageMagick-c++-devel ImageMagick-devel Imath-devel LaTeXiT OSX-Fonts OTF-Inconsolata Skim apel aspell aspell-el aspell-en autoconf autogen-libopts-devel automake cmake coral emacs emacs-lisps emacsen-common fftw3-devel file-devel flim ghostscript-devel glibtool glibtool-ltdl-devel gmp-devel graphviz-devel intltool latex2html libmpc libmpc-devel libpaper-devel libptexenc mpfr mpfr-devel openssl-devel pdfsync perl-XML-Parser poppler-devel python3-devel python3-setuptools python3 python3-pip python3-forhep boost-devel 5) Install HEPonX packages $ sudo apt-get update $ sudo apt-get install gcc HEPSystem Libcompat libgpg-error-devel isl-devel libgcrypt-devel mysql-community-common mysql-community-libs mysql-community-client mysql-community-devel imake libXt motif-devel cernlib topdraw clhep22 gsl1-devel xerces-c31 clhep gsl-devel xerces-c geant49 geant49-src david dawn dawncut geant410 geant410-src geant4 geant4-src wget pythia pythia8 root5 root lcio lcio213 SIO eigen elmer fltk gmsh garfieldpp stdhep HepMC3 fastjet fjcontrib ocaml whizard subversion python-devel python python-libs 6) Build dependent external packages using release-base.cfg # Going to use boost, eigen, xerces-c, geatn4, root, sio, mysql, fastjet, clhep, gsl, # and cmake from HEPonX, and build just Qt5, ilcutil, CED, and CondDBMySQL. 6-1) Get source files and patches from HEPonX $ ls CondDBMySQL_ILC-0-9-7.tar.gz HowToInstall.osx ILDConfig-02-02-03.tar.gz ced-v01-09-03.tar.gz clupatra-v01-03-c++17.patch dd4hep-v01-11-02-std.patch fcalcluster-v01-00-01-c++17.patch forwardtracking-v01-14-notest.patch ilcinstall-v02-02-03-arm64.patch ilcinstall-v02-02-03-macos12.patch ilcinstall-v02-02-03-macos12.patch.orig ilcinstall.02.02.03.tar.gz ilcutil-v01-06-02.tar.gz kaltest-v02-05-c++17.patch kitrackmarlin-v01-13-timer.patch lccd-v01-05-arm64.patch lccd-v01-05-c++17.patch physsim-v00-04-01-tstring.patch qt5-macos12.patch root-6.24.06-rconfig.patch root_v6.24.06-cling.patch root_v6.24.06-rmkdepend.patch 6-2) Build dependent packages $ sudo alternatives --config gcc -> select clang $ export PATH=/opt/apache/bin:$PATH # to get svn work! $ cd /Users/proj/soft/ilcsoft $ tar -zxvf ../src/ilcsoft/12.X/v02-02-03/ilcinstall.02.02.03.tar.gz $ mv v02-02-03 ilcinstall-v02-02-03 $ cd ilcinstall-v02-02-03 $ patch -p1 -s -b < ../../src/ilcsoft/12.X/v02-02-03/ilcinstall-v02-02-03-macos12.patch $ ./ilcsoft-install -i releases/v02-02/release-base.cfg ....... $ pushd ../Qt5/v5.15.2/ $ patch -p1 -s < ../../../src/ilcsoft/12.X/v02-02-03/qt5-macos12.patch ....... ....... failed to find libQt5Core.dylib .... ....... $ cd lib $ ln -s QtCore.framework/QtCore libQt5Core.dylib $ ln -s QtGui.framework/QtGui libQt5Gui.dylib $ popd $ ./ilcsoft-install -i releases/v02-02/release-base.cfg ....... ****************************** Finished installation ****************************** 6-3) Build iLCSoft-v02-02-03 $ ./ilcsoft-install -i releases/v02-02/release-osx.cfg ....... ... before compilation starts, apply the following patches in a new window: ... Open a new terminal and do the following $ pushd ../v02-02-03/lccd/v01-05/ $ patch -p1 -s < ../../../../src/ilcsoft/12.X/v02-02-03/lccd-v01-05-c++17.patch $ popd $ pushd ../v02-02-03/DD4hep/v01-11-02/ $ patch -p1 -s < ../../../../src/ilcsoft/12.X/v02-02-03/dd4hep-v01-11-02-std.patch $ popd ---------------------------------------------------------------------------------- KalTest patch is essintial! Without it, the GMResol.C gives too good resolutions! ---------------------------------------------------------------------------------- $ pushd ../v02-02-03/KalTest/v02-05/ $ patch -p1 -s < ../../../../src/ilcsoft/12.X/v02-02-03/kaltest-v02-05-c++17.patch $ popd $ pushd ../v02-02-03/KiTrackMarlin/v01-13/ $ patch -p1 -s < ../../../../src/ilcsoft/12.X/v02-02-03/kitrackmarlin-v01-13-timer.patch $ popd $ pushd ../v02-02-03/Clupatra/v01-03/ $ patch -p1 -s < ../../../../src/ilcsoft/12.X/v02-02-03/clupatra-v01-03-c++17.patch $ popd $ pushd ../v02-02-03/Physsim/v00-04-01/ $ patch -p1 -s < ../../../../src/ilcsoft/12.X/v02-02-03/physsim-v00-04-01-tstring.patch $ popd $ pushd ../v02-02-03/FCalClusterer/v01-00-01/ $ patch -p1 -s < ../../../../src/ilcsoft/12.X/v02-02-03/fcalcluster-v01-00-01-c++17.patch $ popd $ pushd ../v02-02-03/ForwardTracking/v01-14/ $ patch -p1 -s < ../../../../src/ilcsoft/12.X/v02-02-03/forwardtracking-v01-14-notest.patch $ popd ....... ****************************** Finished installation ******************************