2.6 Compilation
Keywords: user_guide

Next: 2.7 Running tests and Up: 2 Installation Previous: 2.5 Libxc library Contents

##
2.6 Compilation

The compiled codes can run with any input: almost all variables are dinamically allocated at run time. Only a few variables have fixed dimensions, set in file `Modules/parameters.f90`:

          ntypx  = 10,     &! max number of different types of atom
          npsx   = ntypx,  &! max number of different PPs (obsolete)
          nsx    = ntypx,  &! max number of atomic species (CP)
          npk    = 40000,  &! max number of k-points
          lmaxx  = 3,      &! max non local angular momentum (l=0 to lmaxx)
          lqmax= 2*lmaxx+1  ! max number of angular momenta of Q

These values should work for the vast majority of cases. In case you need more atomic types or more k-points, edit this file and recompile.

At your choice, you may compile the complete QUANTUM ESPRESSO suite of programs (with `make all`), or only some specific programs. All executables are linked in main `bin` directory.

`make` with no arguments yields a list of valid compilation targets:

- `make pw` self-consistent-field package `PWscf`
- `make cp` Car-Parrinello package `CP`
- `make neb` `PWneb` package
- `make ph` `PHonon` package
- `make pp` postprocessing package `PostProc`
- `make pwcond` ballistic conductance package `PWcond`
- `make pwall` all of the above
- `make hp` `HP` package.
- `make tddfpt` `TD-DFPT` package.
- `make ld1` pseudopotential generator package `atomic`.
- `make xspectra` package `XSpectra`.
- `make all` all of the above
- `make epw` package `EPW` - prerequisite package `wannier90` is compiled as well
- `make w90` downloads `wannier90`, unpacks it, copies an appropriate `make.inc` file, produces all executables in `W90/wannier90.x` and in `bin/`
- `make want` downloads `WanT`, unpacks it, runs its `configure`, produces all executables for `WanT` in `WANT/bin`.
- `make yambo` downloads `yambo`, unpacks it, runs its `configure`, produces all `yambo` executables in `YAMBO/bin`
- `make gipaw` downloads `GIPAW`, unpacks it, runs its `configure`, produces all `GIPAW` executables in `GIPAW/bin` and in main `bin` directory.
- `make plumed` unpacks `PLUMED`, patches several routines in `PW/`, `CPV/` and `clib/`, recompiles `PWscf` and `CP` with `PLUMED` support

For the setup of the GUI, refer to the `PWgui-X.Y.Z /INSTALL` file, where X.Y.Z stands for the version number of the GUI (should be the same as the general version number). If you are using sources from the git repository, see the `GUI/README` file instead.

If `make` refuses for some reason to download additional packages, manually download them into subdirectory `archive/`, not unpacking or uncompressing them, and try `make` again. Also see Sec.(2.1).

Next: 2.7 Running tests and Up: 2 Installation Previous: 2.5 Libxc library Contents