Установка на Amd 64

Установка Geant4 на Amd 64

К счастью, с выходом релиза Geant4.8.0 поддержка amd64 стала стандартной, и следовать приведенным инструкциям уже нет необходимости. Все, что здесь описано, может потребоваться только для установки старой версии.

Все же, для работы под Fedora Core 4 мне потребовалось слегка отредактировать файл $G4INSTALL/config/sys/Linux-g++, где потребовалось наложить следующий патч:

46c46
<   X11LIBS   := -L/usr/X11R6/lib  -lXmu -lXt -lXext -lX11 -lSM -lICE
---
>   X11LIBS   := -L/usr/X11R6/lib64  -lXmu -lXt -lXext -lX11 -lSM -lICE

Пререквизиты, как говорится: ОС Fedora Core 4 (http://fedora.redhat.com) с компилятором gcc 4.0, установленная на Athlon 64 в 64-битном режиме.

Требуется: установить работоспособный GEANT4.

Основным источником информации был сайт Питера Ниссена (http://www-zeuthen.desy.de/~niessen/geant4/g4_x86_64.html).

Последовательность действий

  • Задается следующий CFLAGS в .bashrc "-O2 -march=athlon64 -fvisibility-inlines-hidden -pipe".
  • Качается с ЦЕРНА одна из последних версий CLHEP (http://cern.ch/clhep/clhep-1.8.2.1.tgz), которая собирается стандартным configure // make // make install. После чего в директории lib, куда установился CLHEP делается симлинк
ln libCLHEP-g++.1.8.2.1.a libCLHEP.a.
  • Качается с ЦЕРНА последний geant4 (http://geant4.cern.ch/geant4/source/source/geant4.7.0.p01.gtar.gz).
  • создается скриптик env.sh следующего содержания:
#!/bin/sh

export G4SYSTEM=Linux-g++
export G4INSTALL=/geant4/sys
export CLHEP_BASE_DIR=/geant4/clhep
export G4VIS_BUILD_OPENGLX_DRIVER=1
export G4VIS_USE_OPENGLX=1
export G4VIS_USE_TCSH=0

и затем используется: source env.sh

  • У Питера Ниссена качается мэйкфайл (http://www-zeuthen.desy.de/~niessen/geant4/Linux_x86_64-g++.gmk), который надо отредактировать: на строчке 21 заменить
CXXFLAGS  += -mcpu=k8 -msse2 

на

CXXFLAGS  += $(CFLAGS) -msse2 

и закомментировать строки 24—27.

  • В директории geant4 source/geometry/navigation отредактировать GNUmakefile: добавить в начало файла строку
CFLAGS=-pipe -O0 -march=athlon64
  • Заходить в geant4/source и делать там make global.
  • Все. Попробуйте позапускать экзамплы, может потребуется еще что-то изменить. Прежде чем править исходники, попробуйте отключить оптимизацию в глючной подсистеме, как в п. 6. У Ниссена оптимизации отключаются вообще, я думаю это излишне.
Edit page