2014-10-08 98 views
1

我想编译g4py。我已经使用“的./configure”现在我试图运行‘make’,但在编译时有出现一些错误,这都与此类似第一种:g4py建筑错误与TLS参考

Building a module G4event.so ... 
/usr/bin/ld: anEventAllocator: TLS reference in /home/marcin/geant4/geant4.10.0-install/lib64/libG4persistency.so mismatches non-TLS reference in pyG4Event.o 
/home/marcin/geant4/geant4.10.0-install/lib64/libG4persistency.so: error adding symbols: bad value 
collect2: error: ld returned 1 exit status 

不是之后“使安装“我得到同样的错误,之后,我不能导入g4py,因为错误:

Traceback (most recent call last): 
    File "<stdin>", line 1, in <module> 
    File "/home/marcin/geant4/geant4.10.0-install/g4py/lib/Geant4/__init__.py", line 17, in <module> 
    from G4intercoms import * 
ImportError: /home/marcin/geant4/geant4.10.0-install/g4py/lib/Geant4/G4intercoms.so: undefined symbol: G4cout 

有谁知道它是怎么回事?

回答

1

确保链接到Geant 4.10的非多线程构建,因为g4py还没有多线程支持。您可以通过在使用cmake配置GEANT4安装时指定-DGEANT4_BUILD_MULTITHREADED = OFF来构建非多线程版本。