Linking header files

Hi Experts,

I have a header file UnfoldingNTclass.h, I have it’s corresponding Unfolding.cxx file and I run it using runUnfoldNT.C, althought I see the shared library object being formed Unfolding_cxx.so, I get the error :

Processing runUnfoldNT.C...
Error in <TMacOSXSystem::FindDynamicLibrary>: /Users/rutikpoozhikkunnath/Desktop/Codes_N_Data/Code_Master/RCF files/3GeV/UrQMD/ClosureTest/Omar_pkg_ver/Unfolding_cxx.so does not exist in .:/usr/local/Cellar/root/6.26.02_1/lib/root:/usr/local/lib:/usr/X11R6/lib:/usr/lib:/lib:/lib/x86_64-linux-gnu:/usr/local/lib64:/usr/lib64:/lib64:
Info in <TMacOSXSystem::ACLiC>: creating shared library /Users/rutikpoozhikkunnath/Desktop/Codes_N_Data/Code_Master/RCF files/3GeV/UrQMD/ClosureTest/Omar_pkg_ver/./Unfolding_cxx.so
dyld: lazy symbol binding failed: Symbol not found: __ZN13UnfoldNTclassC1Ev
  Referenced from: /Users/rutikpoozhikkunnath/Desktop/Codes_N_Data/Code_Master/RCF files/3GeV/UrQMD/ClosureTest/Omar_pkg_ver/Unfolding_cxx.so
  Expected in: flat namespace

dyld: Symbol not found: __ZN13UnfoldNTclassC1Ev
  Referenced from: /Users/rutikpoozhikkunnath/Desktop/Codes_N_Data/Code_Master/RCF files/3GeV/UrQMD/ClosureTest/Omar_pkg_ver/Unfolding_cxx.so
  Expected in: flat namespace

Please tell me how to fix it. I am attaching the files here.

Cheers
Rutik
UnfoldNTclass.h (10.3 KB)
Unfolding.cxx (2.5 KB)
Unfolding_Matrices_01.root (7.7 KB)
runUnfoldNT.C (552 Bytes)
Measured_Matrix.root (4.0 KB)

Hi @Rutik ,

sorry for the high latency, I will take a look as soon as possible.

Cheers,
Enrico

Hi @Rutik ,

you can see with c++filt _ZN13UnfoldNTclassC1Ev that the demangled name of the missing symbol is UnfoldNTclass::UnfoldNTclass(). Checking the code, it looks like that constructor is actually never implemented, so it’s really missing! In other words, the error is expected.