Software/ROOT: Difference between revisions
< Software
SaadShaikh (talk | contribs) |
SaadShaikh (talk | contribs) No edit summary |
||
Line 3: | Line 3: | ||
''Correct for MacOS High Sierra 10.13.6'' | ''Correct for MacOS High Sierra 10.13.6'' | ||
* Install Xcode from the Mac App Store. (Note: If using an older version of MacOS, previous versions of Xcode can be found here: [https://developer.apple.com/download/] | * Install Xcode from the Mac App Store. (Note: If using an older version of MacOS, previous versions of Xcode can be found here: [https://developer.apple.com/download/]) | ||
* Enable command line tools for Xcode using the terminal command: <code>xcode-select --install</code>. | * Enable command line tools for Xcode using the terminal command: <code>xcode-select --install</code>. | ||
* Download and run the ROOT dmg from CERN: [https://root.cern.ch/downloading-root] | * Download and run the ROOT dmg from CERN: [https://root.cern.ch/downloading-root] | ||
Line 11: | Line 11: | ||
* You can now run ROOT in terminal by typing <code>root</code>. | * You can now run ROOT in terminal by typing <code>root</code>. | ||
== Using ROOT in Eclipse IDE == | == Using ROOT in Eclipse IDE on MacOS == | ||
''C++ code for analysis of data from LeCroy Oscilloscope and QUARC exist in pre-compiled software, edited in Eclipse and containing a rudimentary text-based interface to minimise programming knowledge required for usage. These instructions detail how to allow a C/C++ Eclipse project to access ROOT's libraries.'' | |||
* First, locate the directory where ROOT is installed on your computer, e.g. for ROOT v6.14.00 on MacOS: "/Applications/root_v6.14.00". '''The following instructions will use this path as an example'''. | |||
* Right-click on the project and select properties (shortcut: CMD+I) | |||
* Navigate to C/C++ Build –> Environment and add the variables: | |||
** Name: LD_LIBRARY_PATH, Value: /Applications/root_v6.14.00/lib | |||
** Name: ROOTSYS, Value: /Applications/root_v6.14.00 | |||
* Navigate to C/C++ Build –> Settings –> Tool Settings –> MacOS X C++ Linker –> Libraries | |||
** Add the libraries, '''in individual entries and in this order'' (exclude commas): Gui, Core, Imt, RIO, Net, Hist, Graf, Graf3d, Gpad, ROOTDataFrame, ROOTVecOps, Tree, TreePlayer, Rint, Postscript, Matrix, Physics, MathCore, Thread, MultiProc, pThread, m, dl | |||
** Add the library search path: /Applications/root_v6.14.00/lib | |||
* Navigate to MacOS X C++ Linker –> Miscellaneous and add (replacing if needed): -pthread -stdlib=libc++ -std=c++11 -m64 | |||
* Navigate to GCC C++ Compiler –> Includes and add the include path: /Applications/root_v6.14.00/include | |||
* Navigate to GCC C++ Compiler –> Optimization | |||
** Change the Optimization Level to "Optimize most (-O3) | |||
** Add the following Other Optimization Flags (replacing if needed): -pthread -stdlib=libc++ -std=c++11 -m64 | |||
* Navigate to GCC C++ Compiler –> Miscellaneous and add (replacing if needed): -c -fmessage-length=0 -pthread -stdlib=libc++ -std=c++11 -m64 | |||
*'''Repeat the instructions for GCC C++ Compiler for GCC C Compiler if you wish to write/edit C code''''. Otherwise, ensure that all C++ source files which are not headers have the file extension '.cpp'. | |||
These instructions were based off this tutorial [LINK]. |
Revision as of 16:13, 4 December 2019
Local Installation on MacOS
Correct for MacOS High Sierra 10.13.6
- Install Xcode from the Mac App Store. (Note: If using an older version of MacOS, previous versions of Xcode can be found here: [1])
- Enable command line tools for Xcode using the terminal command:
xcode-select --install
. - Download and run the ROOT dmg from CERN: [2]
- Navigate to your user folder in Finder, use CMD+SHIFT+. to show hidden files, one of which will be .bash_profile.
- Edit the text file by adding the line:
. <pathname>/root/bin/thisroot.sh
(where<pathname>
is the directory that leads to the folder ROOT is installed in, noting that the folder root typically has a version number attached to it) - If your .bash_profile is locked, add permissions by selecting “Get Info” and unlocking the file/giving yourself read and write privileges.
- You can now run ROOT in terminal by typing
root
.
Using ROOT in Eclipse IDE on MacOS
C++ code for analysis of data from LeCroy Oscilloscope and QUARC exist in pre-compiled software, edited in Eclipse and containing a rudimentary text-based interface to minimise programming knowledge required for usage. These instructions detail how to allow a C/C++ Eclipse project to access ROOT's libraries.
- First, locate the directory where ROOT is installed on your computer, e.g. for ROOT v6.14.00 on MacOS: "/Applications/root_v6.14.00". The following instructions will use this path as an example.
- Right-click on the project and select properties (shortcut: CMD+I)
- Navigate to C/C++ Build –> Environment and add the variables:
- Name: LD_LIBRARY_PATH, Value: /Applications/root_v6.14.00/lib
- Name: ROOTSYS, Value: /Applications/root_v6.14.00
- Navigate to C/C++ Build –> Settings –> Tool Settings –> MacOS X C++ Linker –> Libraries
- Add the libraries, 'in individual entries and in this order (exclude commas): Gui, Core, Imt, RIO, Net, Hist, Graf, Graf3d, Gpad, ROOTDataFrame, ROOTVecOps, Tree, TreePlayer, Rint, Postscript, Matrix, Physics, MathCore, Thread, MultiProc, pThread, m, dl
- Add the library search path: /Applications/root_v6.14.00/lib
- Navigate to MacOS X C++ Linker –> Miscellaneous and add (replacing if needed): -pthread -stdlib=libc++ -std=c++11 -m64
- Navigate to GCC C++ Compiler –> Includes and add the include path: /Applications/root_v6.14.00/include
- Navigate to GCC C++ Compiler –> Optimization
- Change the Optimization Level to "Optimize most (-O3)
- Add the following Other Optimization Flags (replacing if needed): -pthread -stdlib=libc++ -std=c++11 -m64
- Navigate to GCC C++ Compiler –> Miscellaneous and add (replacing if needed): -c -fmessage-length=0 -pthread -stdlib=libc++ -std=c++11 -m64
- Repeat the instructions for GCC C++ Compiler for GCC C Compiler if you wish to write/edit C code'. Otherwise, ensure that all C++ source files which are not headers have the file extension '.cpp'.
These instructions were based off this tutorial [LINK].