Hi @jsmiesko,
Actually I am still having some slight trouble, I can no longer edit my local FCCAnalyses package and use what I change. e.g. I am trying to edit the PID function in myUtils.cc
but after my edit and building I get
input_line_150:2:254: error: too many arguments to function call, expected 4, have 5
auto lambda35 = [](ROOT::VecOps::RVec<edm4hep::ReconstructedParticleData>& var0, ROOT::VecOps::RVec<Int_t>& var1, ROOT::VecOps::RVec<Int_t>& var2, ROOT::VecOps::RVec<edm4hep::MCParticleData>& var3){return FCCAnalyses::myUtils::PID(var0, var1,var2,var3, 0.)
~~~~~~~~~~~~~~~~~~~~~~~~~ ^~
/cvmfs/sw.hsf.org/spackages6/fccanalyses/0.6.0/x86_64-centos7-gcc11.2.0-opt/qo45d/include/FCCAnalyses/myUtils.h:363:3: note: 'PID' declared here
ROOT::VecOps::RVec<edm4hep::ReconstructedParticleData> PID(ROOT::VecOps::RVec<edm4hep::ReconstructedParticleData> recop,
^
input_line_154:2:254: error: too many arguments to function call, expected 4, have 5
auto lambda35 = [](ROOT::VecOps::RVec<edm4hep::ReconstructedParticleData>& var0, ROOT::VecOps::RVec<Int_t>& var1, ROOT::VecOps::RVec<Int_t>& var2, ROOT::VecOps::RVec<edm4hep::MCParticleData>& var3){return FCCAnalyses::myUtils::PID(var0, var1,var2,var3, 0.)
~~~~~~~~~~~~~~~~~~~~~~~~~ ^~
/cvmfs/sw.hsf.org/spackages6/fccanalyses/0.6.0/x86_64-centos7-gcc11.2.0-opt/qo45d/include/FCCAnalyses/myUtils.h:363:3: note: 'PID' declared here
ROOT::VecOps::RVec<edm4hep::ReconstructedParticleData> PID(ROOT::VecOps::RVec<edm4hep::ReconstructedParticleData> recop,
^
so clearly it’s not happy that I’m trying to use the function with my changes.
Originally to set up my environment I had been doing
source /cvmfs/sw.hsf.org/spackages6/key4hep-stack/2023-01-15/x86_64-centos7-gcc11.2.0-opt/csapx/setup.sh
mkdir build install
cd build
cmake .. -DCMAKE_INSTALL_PREFIX=../install
make install
cd ..
python3 -m venv FCC_env
source ./FCC_env/bin/activate
cd ./FCCAnalyses/examples/FCCee/flavour/b2snunu/
pip install -r ./envs/venv_requirements.txt
I had a look at what gets done by setup.sh
in the master FCCAnalyses so tried to do
source /cvmfs/sw.hsf.org/spackages6/key4hep-stack/2023-01-15/x86_64-centos7-gcc11.2.0-opt/csapx/setup.sh
mkdir build install
cd build
cmake .. -DCMAKE_INSTALL_PREFIX=../install
make install
export LOCAL_DIR=$pwd
export PYTHONPATH=${LOCAL_DIR}/python:${PYTHONPATH}
export PYTHONPATH=${LOCAL_DIR}/install/python:${PYTHONPATH}
export PATH=${LOCAL_DIR}/bin:${PATH}
export PATH=${LOCAL_DIR}/install/bin:${PATH}
export LD_LIBRARY_PATH=${LOCAL_DIR}/install/lib:${LD_LIBRARY_PATH}
export CMAKE_PREFIX_PATH=${LOCAL_DIR}/install:${CMAKE_PREFIX_PATH}
export ROOT_INCLUDE_PATH=${LOCAL_DIR}/install/include:${ROOT_INCLUDE_PATH}
export ONNXRUNTIME_ROOT_DIR=`python -c "import onnxruntime; print(onnxruntime.__path__[0]+'/../../../..')"`
if [ -z "${ONNXRUNTIME_ROOT_DIR}" ]; then
echo "----> Warning: ONNX Runtime not found! Related analyzers won't be build..."
else
export LD_LIBRARY_PATH=${ONNXRUNTIME_ROOT_DIR}/lib:${LD_LIBRARY_PATH}
fi
cd ..
python3 -m venv FCC_env
source ./FCC_env/bin/activate
cd ./FCCAnalyses/examples/FCCee/flavour/b2snunu/
pip install -r ./envs/venv_requirements.txt
But it seems that the export PATH=${LOCAL_DIR}/bin:${PATH}
line resets my python version to 3.6.8 so then trying to install Snakemake fails.
Do you have any recommendation for what I should be doing to pick up my local changes to FCCAnalyses without the python version changing?
My current version of FCCAnalyses is at GitHub - AidanWiederhold/FCCAnalyses at aiwieder/reverter