[lammps-users] Problem with LAMMPS Installation

Dear All,

I have a problem compiling LAMMPS on Ubuntus.
I don't know how to obtain 'lifcore'.

Please, find the error that l got below;



[email protected]...:~/Desktop/Programs/lammps-16Sep09/src$ make serial
make[1]: Entering directory `/home/bart/Desktop/Programs/lammps-16Sep09/src/Obj_serial'
g++ -O -L../STUBS -L/opt/intel/fce/10.0.023/lib angle_charmm.o angle_cosine.o angle_cosine_delta.o angle_cosine_squared.o angle.o angle_harmonic.o angle_hybrid.o angle_table.o atom.o atom_vec_angle.o atom_vec_atomic.o atom_vec_bond.o atom_vec_charge.o atom_vec.o atom_vec_full.o atom_vec_hybrid.o atom_vec_molecular.o bond.o bond_fene.o bond_fene_expand.o bond_harmonic.o bond_hybrid.o bond_morse.o bond_nonlinear.o bond_quartic.o bond_table.o change_box.o comm.o compute_centro_atom.o compute_cna_atom.o compute_coord_atom.o compute.o compute_displace_atom.o compute_erotate_sphere.o compute_group_group.o compute_heat_flux.o compute_ke_atom.o compute_ke.o compute_pe_atom.o compute_pe.o compute_pressure.o compute_reduce.o compute_reduce_region.o compute_stress_atom.o compute_temp_com.o compute_temp.o compute_temp_deform.o compute_temp_partial.o compute_temp_profile.o compute_temp_ramp.o compute_temp_region.o compute_temp_sphere.o create_atoms.o create_box.o
delete_atoms.o delete_bonds.o dihedral_charmm.o dihedral.o dihedral_harmonic.o dihedral_helix.o dihedral_hybrid.o dihedral_multi_harmonic.o dihedral_opls.o displace_atoms.o displace_box.o domain.o dump_atom.o dump_bond.o dump_cfg.o dump.o dump_custom.o dump_dcd.o dump_xyz.o error.o ewald.o fft3d.o fft3d_wrap.o finish.o fix_add_force.o fix_ave_atom.o fix_ave_force.o fix_ave_spatial.o fix_ave_time.o fix_bond_break.o fix_bond_create.o fix_bond_swap.o fix_box_relax.o fix_com.o fix_coord_original.o fix.o fix_deform.o fix_deposit.o fix_drag.o fix_dt_reset.o fix_efield.o fix_enforce2d.o fix_evaporate.o fix_gravity.o fix_gyration.o fix_heat.o fix_indent.o fix_langevin.o fix_line_force.o fix_minimize.o fix_momentum.o fix_msd.o fix_nph.o fix_npt.o fix_npt_sphere.o fix_nve.o fix_nve_limit.o fix_nve_noforce.o fix_nve_sphere.o fix_nvt.o fix_nvt_sllod.o fix_nvt_sphere.o fix_orient_fcc.o fix_plane_force.o fix_press_berendsen.o fix_print.o fix_rdf.o fix_recenter.o
fix_respa.o fix_rigid.o fix_set_force.o fix_shake.o fix_shear_history.o fix_spring.o fix_spring_rg.o fix_spring_self.o fix_temp_berendsen.o fix_temp_rescale.o fix_thermal_conductivity.o fix_tmd.o fix_ttm.o fix_viscosity.o fix_viscous.o fix_wall_lj126.o fix_wall_lj93.o fix_wall_reflect.o fix_wiggle.o force.o group.o improper.o improper_cvff.o improper_harmonic.o improper_hybrid.o input.o integrate.o kspace.o lammps.o lattice.o library.o main.o memory.o min_cg.o min.o minimize.o min_linesearch.o min_sd.o modify.o neigh_bond.o neighbor.o neigh_derive.o neigh_full.o neigh_gran.o neigh_half_bin.o neigh_half_multi.o neigh_half_nsq.o neigh_list.o neigh_request.o neigh_respa.o neigh_stencil.o output.o pack.o pair_airebo.o pair_born_coul_long.o pair_buck_coul_cut.o pair_buck_coul_long.o pair_buck.o pair_coul_cut.o pair_coul_debye.o pair_coul_long.o pair.o pair_eam_alloy.o pair_eam.o pair_eam_fs.o pair_hybrid.o pair_hybrid_overlay.o pair_lj96_cut.o
pair_lj_charmm_coul_charmm.o pair_lj_charmm_coul_charmm_implicit.o pair_lj_charmm_coul_long.o pair_lj_cut_coul_cut.o pair_lj_cut_coul_debye.o pair_lj_cut_coul_long.o pair_lj_cut_coul_long_tip4p.o pair_lj_cut.o pair_lj_expand.o pair_lj_gromacs_coul_gromacs.o pair_lj_gromacs.o pair_lj_smooth.o pair_morse.o pair_soft.o pair_sw.o pair_table.o pair_tersoff.o pair_tersoff_zbl.o pair_yukawa.o pppm.o pppm_tip4p.o random_mars.o random_park.o read_data.o read_restart.o region_block.o region_cone.o region.o region_cylinder.o region_intersect.o region_prism.o region_sphere.o region_union.o remap.o remap_wrap.o replicate.o respa.o run.o set.o shell.o special.o temper.o thermo.o timer.o universe.o update.o variable.o velocity.o verlet.o write_restart.o -lmpi -lifcore -lsvml -lompstub -limf -o ../lmp_serial
/usr/bin/ld: cannot find -lifcore
collect2: ld returned 1 exit status
make[1]: *** [../lmp_serial] Error 1
make[1]: Leaving directory `/home/bart/Desktop/Programs/lammps-16Sep09/src/Obj_serial'
make: *** [serial] Error 2

Please use the current fully-patched LAMMPS. It's lo-level
Makefile.foo files have been reformatted to make this more
clear. If you aren't using any Fortran packages in LAMMPS, you
don't need to specify ifcore. If you are, and you aren't using
a Fortran compiler that uses ifcore, then you don't need to specify it.
If you are and your compiler need ifcore to link Fortran and C++, then
you need to tell it where to find it.



I am using gfortran/g++ on Ubuntu 8.10 and l am compiling for a single processor.
I searched for lifcore, but didn't find it, so l don't know where to obtain it, if l really need it.

Please find the copy of my makefile below, is anything wrong with it?



# serial = RedHat Linux box, g++, no MPI, no FFTs

SHELL = /bin/sh

# System-specific settings

# LINKFORT & FORTLIB settings can be blank if not using LAMMPS Fortran libs
# LINKGPU & GPULIB settings can be blank if not using LAMMPS gpu lib

include Makefile.package

CC = g++
LINK = g++
SIZE = size

# ---------------------------------------------------------------------
# LAMMPS-specific settings
# edit as needed for your machine

# LAMMPS ifdef options, see doc/Section_start.html


# MPI library, can be src/STUBS dummy lib
# INC = path for mpi.h, MPI compiler settings
# PATH = path for MPI library
# LIB = name of MPI library

MPI_LIB = -lmpi

# FFT library, can be -DFFT_NONE if not using PPPM from kspace package
# INC = -DFFT_FFTW, -DFFT_INTEL, -DFFT_NONE, etc, FFT compiler settings
# PATH = path for FFT library
# LIB = name of FFT library


# Link target

\(EXE\): (OBJ)
    \(LINK\) (LINKFLAGS) \(OBJ\) (USRLIB) \(SYSLIB\) \-o (EXE)
    \(SIZE\) (EXE)

# Library target

lib: \(OBJ\) &nbsp;&nbsp;&nbsp;&nbsp;(ARCHIVE) \(ARFLAGS\) (EXE) $(OBJ)

# Compilation rules

    \(CC\) (CCFLAGS) -c $<

    \(CC\) (CCFLAGS) \(DEPFLAGS\) < > $@

# Individual dependencies

DEPENDS = \(OBJ:\.o=\.d\) include (DEPENDS)

Hello Jide and LAMMPS users. Attached is a modified version of the mac_mpi makefile which comes with the LAMMPS package. It uses gfortran instead of the intel compilers so you won't need to worry about the ifcore library. This has worked for me on both a mac and suse linux build. Note you will probably have to modify your paths to make sure the point to the -libgfortran.a file since the path set up is for my box (as well as modifying mpi, the compiler, etc. to work on your system). Steve, I've noticed this question pop up a few times, perhaps the next version of LAMMPS can include a gfortran makefile.

Makefile.mac_mpi (2.42 KB)

Steve, I've noticed this question pop up a few times, perhaps the next version of LAMMPS can include a > >gfortran makefile.

I''ll include something in the next patch.