cd /path/to/NAMD mkdir NAMD-2.13 cd NAMD-2.13 mkdir build install export BUILD_DIR=`pwd`/build export INSTALL_DIR=`pwd`/install
export CC=`which gcc` export CXX=`which g++` export FC=`which gfortran`
cd /path/to/NAMD/NAMD-2.13/build tar -xvf charm-6.9.0.tar.gz cd charm-6.9.0 mkdir ${INSTALL_DIR}/charm690/ cp src/arch/mpi-linux-x86_64 src/arch/mpi-linux-arm8 -rf grep -rl 'm64' src/arch/mpi-linux-arm8 | xargs sed -i 's/\-m64//g' ./build charm++ mpi-linux-arm8 smp --with-production --destination=/path/to/NAMD/NAMD-2.13/install/charm690/mpi-linux-arm8
cd /path/to/NAMD/NAMD-2.13/build tar -zxvf NAMD_2.13_Source.tar.gz cd NAMD_2.13_Source
cp arch/Linux-x86_64.fftw3 arch/Linux-ARM64.fftw3
cd /path/to/NAMD/NAMD-2.13 tar -xvf tcl8.5.9-linux-arm64-threaded.tar.gz
cd /path/to/NAMD/NAMD-2.13/build/NAMD_2.13_Source vi Make.charm
CHARMBASE = /path/to/NAMD/NAMD-2.13/install/charm690
将CHARMBASE的路径修改为CHARM的实际安装路径。
cd /path/to/NAMD/NAMD-2.13/build/NAMD_2.13_Source vi arch/Linux-ARM64-g++.arch
NAMD_ARCH = Linux-ARM64 CHARMARCH = mpi-linux-arm8 #FLOATOPTS = -O2 -ffast-math -funsafe-math-optimizations -fomit-frame-pointer -march=armv7-a -mcpu=cortex-a9 -mtune=cortex-a9 FLOATOPTS = -O3 -ffast-math -funsafe-math-optimizations -fomit-frame-pointer -march=armv8-a CXX = g++ -std=c++11 CXXOPTS = $(FLOATOPTS) CXXNOALIASOPTS = $(FLOATOPTS) -fno-strict-aliasing CC = gcc COPTS = $(FLOATOPTS)
./config Linux-ARM64-g++ --with-fftw3 --fftw-prefix /path/to/FFTW --with-tcl --tcl-prefix /path/to/NAMD/NAMD-2.13/tcl8.5.9-linux-arm64-threaded --charm-arch mpi-linux-arm8 cd Linux-ARM64-g++
make -j
ll /path/to/NAMD/NAMD-2.13/build/NAMD_2.13_Source/Linux-ARM64-g++/namd2
-rwxr-xr-x 1 root root 16140248 Aug 7 15:50 namd2