This is very much related to this question, which is still open and no solution has been posted in a month or so, I commented my question there and have not received any response in 24 hours, therefore I am going to post it as a new topic. This comment also seems helpful but not sure what they meant by:
I configured to use Qt and see:
Available UI session types: [ Qt, GAG, tcsh, csh ]
where did they configure that?
Following this suggestion. I did geant4-config --help
and got (part of) the output:
Known Features:
staticlibs[no]
multithreading[no]
smartstack[no]
clhep[yes]
expat[no]
zlib[yes]
gdml[no]
usolids[no]
freetype[no]
hdf5[no]
g3tog4[no]
qt[no]
motif[no]
raytracer-x11[no]
opengl-x11[no]
openinventor[no]
I did turn a lot of options ON including Qt, using:
cmake -DGEANT4_INSTALL_DATA=ON ../geant4.10.06.p01/
cmake -DGEANT4_USE_RAYTRACER_X11=ON ../geant4.10.06.p01/
cmake -DGEANT4_USE_OPENGL_X11=ON ../geant4.10.06.p01/
cmake -DGEANT4_USE_QT=ON ../geant4.10.06.p01/
Considering "${SOFTWARE}/academic"
as my default path for all installations, here are the Geant4
, CLHEP
, ROOT
etc, paths in my ~/.bashrc
# FOR CERN ROOT
export ROOTSYS="${SOFTWARE}/academic/ROOT_BUILD"
export PATH=$PATH:${ROOTSYS}/bin
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:${ROOTSYS}/lib
# FOR CLHEP
export CLHEP_DIR="${SOFTWARE}/academic/clhep/install"
export CLHEP_INCLUDE_DIR="${CLHEP_DIR}/include/"
export CLHEP_LIBRARY="${CLHEP_DIR}/lib/"
export LD_LIBRARY_PATH=${CLHEP_LIBRARY}:${LD_LIBRARY_PATH}
export PATH=${CLHEP_DIR}/bin:$PATH
# FOR GEANT4
GEANT4_WORK=${SOFTWARE}/academic/geant4/GEANT4_WORK
source ${SOFTWARE}/academic/geant4/install/4.10.06.p01/bin/geant4.sh
source ${SOFTWARE}/academic/geant4/install/4.10.06.p01/share/Geant4-10.6.1/geant4make/geant4make.sh
During Geant4
installation, I created three directories: build
, install/4.10.06.p01
, GEANT4_WORK
inside the parent ${SOFTWARE}/academic/geant4/
(contained the source). I have built everything from inside ${SOFTWARE}/academic/geant4/build
.
To try the example B1, I did the following:
cp -r ${SOFTWARE}/academic/geant4//install/4.10.06.p01/share/Geant4-10.6.1/examples/basic/B1/ ${SOFTWARE}/academic/geant4/GEANT4_WORK/
cd ${SOFTWARE}/academic/geant4/GEANT4_WORK/B1/
export export G4WORKDIR=$SOFTWARE/academic/geant4/GEANT4_WORK/B1
make
and the output:
Making dependency for file exampleB1.cc ...
Making dependency for file src/B1SteppingAction.cc ...
Making dependency for file src/B1RunAction.cc ...
Making dependency for file src/B1EventAction.cc ...
Making dependency for file src/B1PrimaryGeneratorAction.cc ...
Making dependency for file src/B1ActionInitialization.cc ...
Making dependency for file src/B1DetectorConstruction.cc ...
Compiling B1DetectorConstruction.cc ...
Compiling B1ActionInitialization.cc ...
Compiling B1PrimaryGeneratorAction.cc ...
Compiling B1EventAction.cc ...
Compiling B1RunAction.cc ...
Compiling B1SteppingAction.cc ...
Creating shared library /mnt/bb47c2d1-aa7d-42ef-a4b2-
33198d035691/atanu/Software/academic/geant4/GEANT4_WORK/B1/tmp/Linux-
g++/exampleB1/libexampleB1.so ...
Compiling exampleB1.cc ...
Using global libraries ...
Linking exampleB1
... Done!
then (staying always inside B1)…
cp bin/Linux-g++/exampleB1 .
./exampleB1
And the output…
Available UI session types: [ GAG, tcsh, csh ]
**************************************************************
Geant4 version Name: geant4-10-06-patch-01 (14-February-2020)
Copyright : Geant4 Collaboration
References : NIM A 506 (2003), 250-303
: IEEE-TNS 53 (2006), 270-278
: NIM A 835 (2016), 186-225
WWW : http://geant4.org/
**************************************************************
<<< Reference Physics List QBBC
Visualization Manager instantiating with verbosity "warnings (3)"...
Visualization Manager initialising...
Registering graphics systems...
You have successfully registered the following graphics systems.
Current available graphics systems are:
ASCIITree (ATree)
DAWNFILE (DAWNFILE)
G4HepRep (HepRepXML)
G4HepRepFile (HepRepFile)
RayTracer (RayTracer)
VRML1FILE (VRML1FILE)
VRML2FILE (VRML2FILE)
gMocrenFile (gMocrenFile)
Registering model factories...
You have successfully registered the following model factories.
Registered model factories:
generic
drawByAttribute
drawByCharge
drawByOriginVolume
drawByParticleID
drawByEncounteredVolume
Registered filter factories:
attributeFilter
chargeFilter
originVolumeFilter
particleFilter
encounteredVolumeFilter
You have successfully registered the following user vis actions.
Run Duration User Vis Actions: none
End of Event User Vis Actions: none
End of Run User Vis Actions: none
Some /vis commands (optionally) take a string to specify colour.
"/vis/list" to see available colours.
/control/saveHistory
/run/verbose 2
#
# Change the default number of threads (in multi-threaded mode)
#/run/numberOfThreads 4
#
# Initialize kernel
/run/initialize
userDetector->Construct() start.
Checking overlaps for volume Envelope (G4Box) ... OK!
Checking overlaps for volume Shape1 (G4Cons) ... OK!
Checking overlaps for volume Shape2 (G4Trd) ... OK!
World is registered to the default region.
physicsList->Construct() start.
### Adding tracking cuts for neutron TimeCut(ns)= 10000 KinEnergyCut(MeV)= 0
physicsList->CheckParticleList() start.
physicsList->setCut() start.
#
# Visualization setting
/control/execute vis.mac
# Macro file for the visualization setting in the initialization phase
# of the B1 example when running in interactive mode
#
# Use these open statements to open selected visualization
#
# Use this open statement to create an OpenGL view:
/vis/open OGL 600x600-0+0
/vis/sceneHandler/create OGL
parameter value (OGL) is not listed in the candidate List.
Candidates are: ATree DAWNFILE HepRepFile HepRepXML RayTracer VRML1FILE VRML2FILE gMocrenFile
#
# Use this open statement to create an OpenInventor view:
#/vis/open OI
#
# Use this open statement to create a .prim file suitable for
# viewing in DAWN:
#/vis/open DAWNFILE
#
# Use this open statement to create a .heprep file suitable for
# viewing in HepRApp:
#/vis/open HepRepFile
#
# Use this open statement to create a .wrl file suitable for
# viewing in a VRML viewer:
#/vis/open VRML2FILE
#
# Disable auto refresh and quieten vis messages whilst scene and
# trajectories are established:
/vis/viewer/set/autoRefresh false
ERROR: G4VisCommandsViewerSet::SetNewValue: no current viewer.
/vis/verbose errors
Visualization verbosity changed to errors (2)
#
# Draw geometry:
/vis/drawVolume
/vis/scene/create
/vis/scene/add/volume world -1 -1 none m 0 0 0 0 0 0
/vis/sceneHandler/attach
ERROR: Current scene handler not defined. Please select or create one.
#
# Specify view angle:
/vis/viewer/set/viewpointVector -1 0 0
ERROR: G4VisCommandsViewerSet::SetNewValue: no current viewer.
/vis/viewer/set/lightsVector -1 0 0
ERROR: G4VisCommandsViewerSet::SetNewValue: no current viewer.
#
# Specify style (surface, wireframe, auxiliary edges,...)
/vis/viewer/set/style wireframe
ERROR: G4VisCommandsViewerSet::SetNewValue: no current viewer.
/vis/viewer/set/auxiliaryEdge true
ERROR: G4VisCommandsViewerSet::SetNewValue: no current viewer.
/vis/viewer/set/lineSegmentsPerCircle 100
ERROR: G4VisCommandsViewerSet::SetNewValue: no current viewer.
#
# Draw smooth trajectories at end of event, showing trajectory points
# as markers 2 pixels wide:
/vis/scene/add/trajectories smooth
/tracking/storeTrajectory 2
Attributes available for modeling and filtering with
"/vis/modeling/trajectories/create/drawByAttribute" and
"/vis/filtering/trajectories/create/attributeFilter" commands:
G4TrajectoriesModel:
Event ID (EventID): G4int
Run ID (RunID): G4int
G4SmoothTrajectory:
Charge (Ch): unit: e+ (G4double)
Track ID (ID): G4int
Initial kinetic energy (IKE): G4BestUnit (G4double)
Initial momentum magnitude (IMag): G4BestUnit (G4double)
Initial momentum (IMom): G4BestUnit (G4ThreeVector)
No. of points (NTP): G4int
PDG Encoding (PDG): G4int
Parent ID (PID): G4int
Particle Name (PN): G4String
G4SmoothTrajectoryPoint:
Auxiliary Point Position (Aux): G4BestUnit (G4ThreeVector)
Step Position (Pos): G4BestUnit (G4ThreeVector)
/vis/modeling/trajectories/create/drawByCharge
/vis/modeling/trajectories/drawByCharge-0/default/setDrawStepPts true
/vis/scene/notifyHandlers scene-0
/vis/modeling/trajectories/drawByCharge-0/default/setStepPtsSize 2
/vis/scene/notifyHandlers scene-0
# (if too many tracks cause core dump => /tracking/storeTrajectory 0)
#
# Draw hits at end of event:
#/vis/scene/add/hits
#
# To draw only gammas:
#/vis/filtering/trajectories/create/particleFilter
#/vis/filtering/trajectories/particleFilter-0/add gamma
#
# To invert the above, drawing all particles except gammas,
# keep the above two lines but also add:
#/vis/filtering/trajectories/particleFilter-0/invert true
#
# Many other options are available with /vis/modeling and /vis/filtering.
# For example, to select colour by particle ID:
#/vis/modeling/trajectories/create/drawByParticleID
#/vis/modeling/trajectories/drawByParticleID-0/default/setDrawStepPts true
# To select or override default colours (note: e+ is blue by default):
#/vis/modeling/trajectories/list
#/vis/modeling/trajectories/drawByParticleID-0/set e+ yellow
#
# To superimpose all of the events from a given run:
/vis/scene/endOfEventAction accumulate
ERROR: No current sceneHandler. Please create one.
#
# Decorations
# Name
/vis/set/textColour green
/vis/set/textLayout right
/vis/scene/add/text2D 0.9 -.9 24 ! ! exampleB1
# or, if your system does not support right-adjustment
#/vis/scene/add/text2D 0 -.9 24 ! ! exampleB1
/vis/set/textLayout
/vis/set/textColour
#
# Axes, scale, etc.
/vis/scene/add/scale
ERROR: G4VisCommandSceneAddScale::SetNewValue: no viewer.
Auto direction needs a viewer.
/vis/scene/add/axes
/vis/scene/add/eventID
/vis/scene/add/date
/vis/scene/add/logo2D
/vis/scene/add/logo
ERROR: G4VisCommandSceneAddLogo::SetNewValue: no viewer.
Auto direction needs a viewer.
#
# Frame
/vis/set/colour red
/vis/set/lineWidth 2
/vis/scene/add/frame
/vis/set/colour
/vis/set/lineWidth
#
# Attach text to one edge of Shape1, with a small, fixed offset
/vis/scene/add/text 0 6 -4 cm 18 4 4 Shape1
# Attach text to one corner of Shape2, with a small, fixed offset
/vis/scene/add/text 6 7 10 cm 18 4 4 Shape2
#
# To get nice view
# Make the "World" box invisible
/vis/geometry/set/visibility World 0 false
# "Envelope" is transparent blue to represent water
/vis/geometry/set/colour Envelope 0 0 0 1 .3
/vis/viewer/set/style surface
ERROR: G4VisCommandsViewerSet::SetNewValue: no current viewer.
/vis/viewer/set/hiddenMarker true
ERROR: G4VisCommandsViewerSet::SetNewValue: no current viewer.
/vis/viewer/set/viewpointThetaPhi 120 150
ERROR: G4VisCommandsViewerSet::SetNewValue: no current viewer.
#
# Re-establish auto refreshing and verbosity:
/vis/viewer/set/autoRefresh true
ERROR: G4VisCommandsViewerSet::SetNewValue: no current viewer.
/vis/verbose warnings
Visualization verbosity changed to warnings (3)
#
# For file-based drivers, use this to create an empty detector view:
#/vis/viewer/flush
Idle>
Idle>
Idle>
Idle>
I tried another building method, like creating a separate build
directory and running cmake path_to_B1
and then make
from within that build directory
, and running the ./exampleB1
from the build
, that too produced same output and failed.
Can anyone help me fix my Geant4, I will really appreciate any quick help.
Thanks
My system details:
OS: Ubuntu 18.04.4 LTS
cmake version 3.10.2
g++ (Ubuntu 7.5.0-3ubuntu1~18.04) 7.5.0
ROOT 6.10/04
CLHEP 2.4.1.3
____________________________________________________________