Re: Error compiling NAMD 2.15 Source Code

From: Do, Hung Nguyen (hungd238_at_ku.edu)
Date: Mon Apr 11 2022 - 12:54:24 CDT

Good afternoon Dr. Vermaas,

It is quite strange but even though my system is multicore-Linux_x86_64bits, the compatible fftw library for NAMD (from the provided NAMD directory) is fftw_linux rather than fftw_linux_x86_64bits.

I used fftw_linux and everything is fine now. The compilation was successful.

Thank you very much,
Hung
________________________________
From: Josh Vermaas <vermaasj_at_msu.edu>
Sent: Thursday, April 7, 2022 3:41 PM
To: namd-l_at_ks.uiuc.edu <namd-l_at_ks.uiuc.edu>; Do, Hung Nguyen <hungd238_at_ku.edu>
Subject: Re: namd-l: Error compiling NAMD 2.15 Source Code

Hi Hung,

Where did your fftw come from? The linker failed, because the fftw library being passed is violating some assumptions that the compiler made when compiling the rest of the program. I admittedly haven't seen this issue myself from the FFTW libraries I've downloaded from UIUC in the past, but it might be useful to know what your gcc version is for others trying to help.

-Josh

On 4/5/22 11:15 PM, Do, Hung Nguyen wrote:
Hello,

I followed the instructions in notes.txt and got the following error while trying to compile NAMD 2.15 Source Codes. Can someone please have a look and let me know how to fix this? I used the default charm-6.10.2 (and tcl-threaded and fftw) included in the NAMD folder.

Many thanks,
Hung

OpenMP support not enabled
charmc> ----------- Module dependency search ------------
charmc> ----------- Module dependency search complete ------------
charmc> All libraries are: -L.rootdir/charm-6.10.2/multicore-linux-x86_64/bin/../lib -lmoduleCkLoop -lmoduleCkMulticast -lckmain -lck -lmemory-default -lthreads-default -lconv-machine -lconv-core -ltmgr -lconv-util -lconv-partition -lhwloc_embedded -lm -lcudart -lmemory-default -lthreads-default -lldb-rand -lconv-ldb -lpthread -lckqt -ldl -ltcl8.5 -ldl -lpthread -lsrfftw -lsfftw -lm -lmoduleCkMulticast -lmoduleCkLoop -lmoduleNDMeshStreamer -lmodulecompletion -lz -lm .rootdir/charm-6.10.2/multicore-linux-x86_64/bin/../lib/conv-static.o
Adding registration for module CkMulticast
Adding registration for module CkLoop
charmc: Executing g++ -DCMK_GFORTRAN -D_REENTRANT -I.rootdir/charm-6.10.2/multicore-linux-x86_64/bin/../include -D__CHARMC__=1 -DCMK_OPTIMIZE=1 -Iinc -Isrc -O3 -fexpensive-optimizations -ffast-math -U_FORTIFY_SOURCE -fno-stack-protector -fno-lifetime-dse -c moduleinit2681096.C -o moduleinit2681096.o
charmc: Executing g++ -rdynamic -D_REENTRANT -O3 -fexpensive-optimizations -ffast-math -I.rootdir/charm-6.10.2/multicore-linux-x86_64/include -L.rootdir/tcl-threaded/lib -L.rootdir/fftw/lib obj/buildinfo.o obj/AVXTiles.o obj/AVXTilesKernel.o obj/AVXTileLists.o obj/ComputeMoa.o obj/ComputeMsm.o obj/ComputeMsmMsa.o obj/ComputeMsmSerial.o obj/ComputeFmmSerial.o obj/msm.o obj/msm_longrng.o obj/msm_longrng_sprec.o obj/msm_setup.o obj/msm_shortrng.o obj/msm_shortrng_sprec.o obj/wkfutils.o obj/common.o obj/dcdlib.o obj/eabf1D.o obj/eabf2D.o obj/eabffunc.o obj/eabfTcl.o obj/erf.o obj/fitrms.o obj/main.o obj/mainfunc.o obj/memusage.o obj/strlib.o obj/AlgSeven.o obj/AlgRecBisection.o obj/AlgNbor.o obj/AtomMap.o obj/BackEnd.o obj/BroadcastMgr.o obj/BroadcastClient.o obj/CollectionMaster.o obj/CollectionMgr.o obj/Communicate.o obj/Compute.o obj/ComputeAngles.o obj/ComputeAniso.o obj/ComputeBonds.o obj/ComputeBondedCUDA.o obj/ComputeConsForce.o obj/ComputeConsForceMsgs.o obj/ComputeCrossterms.o obj/ComputeCUDAMgr.o obj/ComputeCylindricalBC.o obj/ComputeDihedrals.o obj/ComputeDPME.o obj/ComputeDPMEMsgs.o obj/ComputeDPMTA.o obj/ComputeEField.o obj/ComputeEwald.o obj/ComputeExt.o obj/ComputeQM.o obj/ComputeGBISser.o obj/ComputeGBIS.o obj/ComputeGromacsPair.o obj/ComputeLCPO.o obj/ComputeFullDirect.o obj/ComputeHomePatch.o obj/ComputeHomePatches.o obj/ComputeImpropers.o obj/ComputeGlobal.o obj/ComputeGlobalMsgs.o obj/ComputeGridForce.o obj/ComputeMap.o obj/ComputeMgr.o obj/ComputeNonbondedSelf.o obj/ComputeNonbondedPair.o obj/ComputeNonbondedUtil.o obj/ComputeNonbondedStd.o obj/ComputeNonbondedFEP.o obj/ComputeNonbondedGo.o obj/ComputeNonbondedTI.o obj/ComputeNonbondedLES.o obj/ComputeNonbondedPProf.o obj/ComputeNonbondedTabEnergies.o obj/ComputeNonbondedCUDA.o obj/ComputeNonbondedCUDAExcl.o obj/ComputeNonbondedMIC.o obj/ComputeNonbondedMICKernel.o obj/ComputePatch.o obj/ComputePatchPair.o obj/ComputePme.o obj/ComputePmeCUDA.o obj/ComputePmeCUDAMgr.o obj/ComputeRestraints.o obj/ComputeSphericalBC.o obj/ComputeStir.o obj/ComputeTclBC.o obj/ComputeThole.o obj/ConfigList.o obj/Controller.o obj/CudaComputeNonbonded.o obj/CudaNonbondedTables.o obj/CudaPmeSolver.o obj/CudaPmeSolverUtil.o obj/CudaUtils.o obj/ccsinterface.o obj/DataStream.o obj/DeviceCUDA.o obj/DumpBench.o obj/FreeEnergyAssert.o obj/FreeEnergyGroup.o obj/FreeEnergyLambda.o obj/FreeEnergyLambdMgr.o obj/FreeEnergyParse.o obj/FreeEnergyRestrain.o obj/FreeEnergyRMgr.o obj/FreeEnergyVector.o obj/fstream_namd.o obj/GlobalMaster.o obj/GlobalMasterServer.o obj/GlobalMasterTest.o obj/GlobalMasterIMD.o obj/GlobalMasterTcl.o obj/GlobalMasterSMD.o obj/GlobalMasterTMD.o obj/Matrix4Symmetry.o obj/GlobalMasterSymmetry.o obj/GlobalMasterFreeEnergy.o obj/GlobalMasterEasy.o obj/GlobalMasterMisc.o obj/colvarproxy_namd.o obj/GridForceGrid.o obj/GromacsTopFile.o obj/heap.o obj/HomePatch.o obj/IMDOutput.o obj/InfoStream.o obj/LdbCoordinator.o obj/LJTable.o obj/Measure.o obj/MGridforceParams.o obj/MStream.o obj/MigrateAtomsMsg.o obj/Molecule.o obj/Molecule2.o obj/GoMolecule.o obj/MoleculeQM.o obj/NamdCentLB.o obj/NamdHybridLB.o obj/NamdDummyLB.o obj/NamdState.o obj/NamdOneTools.o obj/Node.o obj/Output.o obj/Parameters.o obj/ParseOptions.o obj/Patch.o obj/PatchMgr.o obj/PatchMap.o obj/PDB.o obj/PDBData.o obj/PmeKSpace.o obj/PmeRealSpace.o obj/PmeSolver.o obj/ProcessorPrivate.o obj/ProxyMgr.o obj/ProxyPatch.o obj/Rebalancer.o obj/RecBisection.o obj/ReductionMgr.o obj/RefineOnly.o obj/RefineTorusLB.o obj/ScriptTcl.o obj/Sequencer.o obj/Set.o obj/Settle.o obj/SimParameters.o obj/SortAtoms.o obj/Sync.o obj/TclCommands.o obj/TorusLB.o obj/WorkDistrib.o obj/pub3dfft.o obj/vmdsock.o obj/parm.o obj/imd.o obj/CompressPsf.o obj/PluginIOMgr.o obj/DataExchanger.o obj/ParallelIOMgr.o obj/dcdplugin.o obj/jsplugin.o obj/namdbinplugin.o obj/pdbplugin.o obj/psfplugin.o obj/tcl_psfgen.o obj/charmm_file.o obj/charmm_parse_topo_defs.o obj/extract_alias.o obj/hash.o obj/hasharray.o obj/memarena.o obj/pdb_file.o obj/pdb_file_extract.o obj/psf_file.o obj/psf_file_extract.o obj/topo_defs.o obj/topo_mol.o obj/topo_mol_output.o obj/topo_mol_pluginio.o obj/stringhash.o obj/colvar.o obj/colvaratoms.o obj/colvarbias.o obj/colvarbias_abf.o obj/colvarbias_alb.o obj/colvarbias_histogram.o obj/colvarbias_meta.o obj/colvarbias_restraint.o obj/colvarcomp.o obj/colvarcomp_angles.o obj/colvarcomp_apath.o obj/colvarcomp_coordnums.o obj/colvarcomp_distances.o obj/colvarcomp_gpath.o obj/colvarcomp_protein.o obj/colvarcomp_rotations.o obj/colvarcomp_volmaps.o obj/colvardeps.o obj/colvargrid.o obj/colvarmodule.o obj/colvarparams.o obj/colvarparse.o obj/colvarproxy.o obj/colvarproxy_volmaps.o obj/colvarproxy_replicas.o obj/colvarproxy_tcl.o obj/colvarscript.o obj/colvarscript_commands.o obj/colvarscript_commands_bias.o obj/colvarscript_commands_colvar.o obj/colvartypes.o obj/colvarvalue.o obj/CompiledExpression.o obj/ExpressionProgram.o obj/ExpressionTreeNode.o obj/Operation.o obj/ParsedExpression.o obj/Parser.o moduleinit2681096.o -L.rootdir/charm-6.10.2/multicore-linux-x86_64/bin/../lib -lmoduleCkLoop -lmoduleCkMulticast -lckmain -lck -lmemory-default -lthreads-default -lconv-machine -lconv-core -ltmgr -lconv-util -lconv-partition -lhwloc_embedded -lm -lcudart -lmemory-default -lthreads-default -lldb-rand -lconv-ldb -lpthread -lckqt -ldl -ltcl8.5 -ldl -lpthread -lsrfftw -lsfftw -lm -lmoduleCkMulticast -lmoduleCkLoop -lmoduleNDMeshStreamer -lmodulecompletion -lz -lm .rootdir/charm-6.10.2/multicore-linux-x86_64/bin/../lib/conv-static.o -o namd2
/usr/bin/ld: .rootdir/fftw/lib/libsrfftw.a(rfftwnd.o): relocation R_X86_64_32 against `.rodata.str1.32' can not be used when making a PIE object; recompile with -fPIE
/usr/bin/ld: .rootdir/fftw/lib/libsrfftw.a(rplanner.o): relocation R_X86_64_32 against symbol `rfftw_config' can not be used when making a PIE object; recompile with -fPIE
/usr/bin/ld: .rootdir/fftw/lib/libsrfftw.a(rexec.o): relocation R_X86_64_32 against `.rodata.str1.32' can not be used when making a PIE object; recompile with -fPIE
/usr/bin/ld: .rootdir/fftw/lib/libsfftw.a(planner.o): relocation R_X86_64_32 against symbol `fftw_config' can not be used when making a PIE object; recompile with -fPIE
/usr/bin/ld: .rootdir/fftw/lib/libsfftw.a(executor.o): relocation R_X86_64_32 against `.rodata.str1.32' can not be used when making a PIE object; recompile with -fPIE
/usr/bin/ld: .rootdir/fftw/lib/libsfftw.a(fftwnd.o): relocation R_X86_64_32 against `.rodata.str1.32' can not be used when making a PIE object; recompile with -fPIE
/usr/bin/ld: .rootdir/fftw/lib/libsfftw.a(malloc.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIE
/usr/bin/ld: .rootdir/fftw/lib/libsfftw.a(wisdom.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIE
/usr/bin/ld: .rootdir/fftw/lib/libsfftw.a(wisdomio.o): relocation R_X86_64_32 against `.text' can not be used when making a PIE object; recompile with -fPIE
/usr/bin/ld: .rootdir/fftw/lib/libsfftw.a(putils.o): relocation R_X86_64_32S against `.rodata' can not be used when making a PIE object; recompile with -fPIE
/usr/bin/ld: .rootdir/fftw/lib/libsfftw.a(rader.o): relocation R_X86_64_32 against symbol `fftw_twiddle_rader' can not be used when making a PIE object; recompile with -fPIE
/usr/bin/ld: .rootdir/fftw/lib/libsfftw.a(twiddle.o): relocation R_X86_64_32 against `.bss' can not be used when making a PIE object; recompile with -fPIE
collect2: error: ld returned 1 exit status
Fatal Error by charmc in directory /data/hung/NAMD/NAMD_2.15alpha2_Source/Linux-x86_64-g++
   Command g++ -rdynamic -D_REENTRANT -O3 -fexpensive-optimizations -ffast-math -I.rootdir/charm-6.10.2/multicore-linux-x86_64/include -L.rootdir/tcl-threaded/lib -L.rootdir/fftw/lib obj/buildinfo.o obj/AVXTiles.o obj/AVXTilesKernel.o obj/AVXTileLists.o obj/ComputeMoa.o obj/ComputeMsm.o obj/ComputeMsmMsa.o obj/ComputeMsmSerial.o obj/ComputeFmmSerial.o obj/msm.o obj/msm_longrng.o obj/msm_longrng_sprec.o obj/msm_setup.o obj/msm_shortrng.o obj/msm_shortrng_sprec.o obj/wkfutils.o obj/common.o obj/dcdlib.o obj/eabf1D.o obj/eabf2D.o obj/eabffunc.o obj/eabfTcl.o obj/erf.o obj/fitrms.o obj/main.o obj/mainfunc.o obj/memusage.o obj/strlib.o obj/AlgSeven.o obj/AlgRecBisection.o obj/AlgNbor.o obj/AtomMap.o obj/BackEnd.o obj/BroadcastMgr.o obj/BroadcastClient.o obj/CollectionMaster.o obj/CollectionMgr.o obj/Communicate.o obj/Compute.o obj/ComputeAngles.o obj/ComputeAniso.o obj/ComputeBonds.o obj/ComputeBondedCUDA.o obj/ComputeConsForce.o obj/ComputeConsForceMsgs.o obj/ComputeCrossterms.o obj/ComputeCUDAMgr.o obj/ComputeCylindricalBC.o obj/ComputeDihedrals.o obj/ComputeDPME.o obj/ComputeDPMEMsgs.o obj/ComputeDPMTA.o obj/ComputeEField.o obj/ComputeEwald.o obj/ComputeExt.o obj/ComputeQM.o obj/ComputeGBISser.o obj/ComputeGBIS.o obj/ComputeGromacsPair.o obj/ComputeLCPO.o obj/ComputeFullDirect.o obj/ComputeHomePatch.o obj/ComputeHomePatches.o obj/ComputeImpropers.o obj/ComputeGlobal.o obj/ComputeGlobalMsgs.o obj/ComputeGridForce.o obj/ComputeMap.o obj/ComputeMgr.o obj/ComputeNonbondedSelf.o obj/ComputeNonbondedPair.o obj/ComputeNonbondedUtil.o obj/ComputeNonbondedStd.o obj/ComputeNonbondedFEP.o obj/ComputeNonbondedGo.o obj/ComputeNonbondedTI.o obj/ComputeNonbondedLES.o obj/ComputeNonbondedPProf.o obj/ComputeNonbondedTabEnergies.o obj/ComputeNonbondedCUDA.o obj/ComputeNonbondedCUDAExcl.o obj/ComputeNonbondedMIC.o obj/ComputeNonbondedMICKernel.o obj/ComputePatch.o obj/ComputePatchPair.o obj/ComputePme.o obj/ComputePmeCUDA.o obj/ComputePmeCUDAMgr.o obj/ComputeRestraints.o obj/ComputeSphericalBC.o obj/ComputeStir.o obj/ComputeTclBC.o obj/ComputeThole.o obj/ConfigList.o obj/Controller.o obj/CudaComputeNonbonded.o obj/CudaNonbondedTables.o obj/CudaPmeSolver.o obj/CudaPmeSolverUtil.o obj/CudaUtils.o obj/ccsinterface.o obj/DataStream.o obj/DeviceCUDA.o obj/DumpBench.o obj/FreeEnergyAssert.o obj/FreeEnergyGroup.o obj/FreeEnergyLambda.o obj/FreeEnergyLambdMgr.o obj/FreeEnergyParse.o obj/FreeEnergyRestrain.o obj/FreeEnergyRMgr.o obj/FreeEnergyVector.o obj/fstream_namd.o obj/GlobalMaster.o obj/GlobalMasterServer.o obj/GlobalMasterTest.o obj/GlobalMasterIMD.o obj/GlobalMasterTcl.o obj/GlobalMasterSMD.o obj/GlobalMasterTMD.o obj/Matrix4Symmetry.o obj/GlobalMasterSymmetry.o obj/GlobalMasterFreeEnergy.o obj/GlobalMasterEasy.o obj/GlobalMasterMisc.o obj/colvarproxy_namd.o obj/GridForceGrid.o obj/GromacsTopFile.o obj/heap.o obj/HomePatch.o obj/IMDOutput.o obj/InfoStream.o obj/LdbCoordinator.o obj/LJTable.o obj/Measure.o obj/MGridforceParams.o obj/MStream.o obj/MigrateAtomsMsg.o obj/Molecule.o obj/Molecule2.o obj/GoMolecule.o obj/MoleculeQM.o obj/NamdCentLB.o obj/NamdHybridLB.o obj/NamdDummyLB.o obj/NamdState.o obj/NamdOneTools.o obj/Node.o obj/Output.o obj/Parameters.o obj/ParseOptions.o obj/Patch.o obj/PatchMgr.o obj/PatchMap.o obj/PDB.o obj/PDBData.o obj/PmeKSpace.o obj/PmeRealSpace.o obj/PmeSolver.o obj/ProcessorPrivate.o obj/ProxyMgr.o obj/ProxyPatch.o obj/Rebalancer.o obj/RecBisection.o obj/ReductionMgr.o obj/RefineOnly.o obj/RefineTorusLB.o obj/ScriptTcl.o obj/Sequencer.o obj/Set.o obj/Settle.o obj/SimParameters.o obj/SortAtoms.o obj/Sync.o obj/TclCommands.o obj/TorusLB.o obj/WorkDistrib.o obj/pub3dfft.o obj/vmdsock.o obj/parm.o obj/imd.o obj/CompressPsf.o obj/PluginIOMgr.o obj/DataExchanger.o obj/ParallelIOMgr.o obj/dcdplugin.o obj/jsplugin.o obj/namdbinplugin.o obj/pdbplugin.o obj/psfplugin.o obj/tcl_psfgen.o obj/charmm_file.o obj/charmm_parse_topo_defs.o obj/extract_alias.o obj/hash.o obj/hasharray.o obj/memarena.o obj/pdb_file.o obj/pdb_file_extract.o obj/psf_file.o obj/psf_file_extract.o obj/topo_defs.o obj/topo_mol.o obj/topo_mol_output.o obj/topo_mol_pluginio.o obj/stringhash.o obj/colvar.o obj/colvaratoms.o obj/colvarbias.o obj/colvarbias_abf.o obj/colvarbias_alb.o obj/colvarbias_histogram.o obj/colvarbias_meta.o obj/colvarbias_restraint.o obj/colvarcomp.o obj/colvarcomp_angles.o obj/colvarcomp_apath.o obj/colvarcomp_coordnums.o obj/colvarcomp_distances.o obj/colvarcomp_gpath.o obj/colvarcomp_protein.o obj/colvarcomp_rotations.o obj/colvarcomp_volmaps.o obj/colvardeps.o obj/colvargrid.o obj/colvarmodule.o obj/colvarparams.o obj/colvarparse.o obj/colvarproxy.o obj/colvarproxy_volmaps.o obj/colvarproxy_replicas.o obj/colvarproxy_tcl.o obj/colvarscript.o obj/colvarscript_commands.o obj/colvarscript_commands_bias.o obj/colvarscript_commands_colvar.o obj/colvartypes.o obj/colvarvalue.o obj/CompiledExpression.o obj/ExpressionProgram.o obj/ExpressionTreeNode.o obj/Operation.o obj/ParsedExpression.o obj/Parser.o moduleinit2681096.o -L.rootdir/charm-6.10.2/multicore-linux-x86_64/bin/../lib -lmoduleCkLoop -lmoduleCkMulticast -lckmain -lck -lmemory-default -lthreads-default -lconv-machine -lconv-core -ltmgr -lconv-util -lconv-partition -lhwloc_embedded -lm -lcudart -lmemory-default -lthreads-default -lldb-rand -lconv-ldb -lpthread -lckqt -ldl -ltcl8.5 -ldl -lpthread -lsrfftw -lsfftw -lm -lmoduleCkMulticast -lmoduleCkLoop -lmoduleNDMeshStreamer -lmodulecompletion -lz -lm .rootdir/charm-6.10.2/multicore-linux-x86_64/bin/../lib/conv-static.o -o namd2 returned error code 1
charmc exiting...
rm -f moduleinit2681096.C moduleinit2681096.o
make: *** [Makefile:470: namd2] Error 1

--
Josh Vermaas
Assistant Professor
MSU-DOE Plant Research Laboratory, Department of Biochemistry and Molecular Biology
Michigan State University
https://urldefense.com/v3/__https://vermaaslab.github.io/__;!!DZ3fjg!plzLT4Pl5OrK918Jyclv6FqMc5PeqgYrGoHGadu1ebQXofAuuC6UqBVQc3HO3me1sg$ <https://urldefense.com/v3/__https://nam10.safelinks.protection.outlook.com/?url=https*3A*2F*2Fvermaaslab.github.io*2F&data=04*7C01*7Chungd238*40ku.edu*7Cebdc53f426a04682740908da18d6fcfb*7C3c176536afe643f5b96636feabbe3c1a*7C0*7C0*7C637849609373657155*7CUnknown*7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0*3D*7C3000&sdata=XIiEYZb*2BdCcpFEB*2F5Yjkai5zXAXaFGJYI*2BtzoEoyJ4w*3D&reserved=0__;JSUlJSUlJSUlJSUlJSUlJSUlJSU!!DZ3fjg!plzLT4Pl5OrK918Jyclv6FqMc5PeqgYrGoHGadu1ebQXofAuuC6UqBVQc3EUJ3-5ug$ >

This archive was generated by hypermail 2.1.6 : Tue Dec 13 2022 - 14:32:44 CST