compiling:waf
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
compiling:waf [2018/09/16 10:13] – daniel | compiling:waf [2018/09/16 10:21] (current) – removed daniel | ||
---|---|---|---|
Line 1: | Line 1: | ||
- | ~~NOTOC~~ | ||
- | ====== Compiling potfit using waf ====== | ||
- | ---- | ||
- | //potfit// uses the [[https:// | ||
- | |||
- | ===== Basics ===== | ||
- | |||
- | The //potfit// source tree contains the waf binary in its root folder. It is used for all build related operations like configuration, | ||
- | < | ||
- | |||
- | Building potfit is split up into two stages: first a configuration stage and then a build stage. The configuration stage checks if all requirements for a building a binary with the requested options is possible and the build stage then invokes the compiler to create the binary. | ||
- | |||
- | === 1. Configuration === | ||
- | |||
- | The configuration uses the '' | ||
- | |||
- | < | ||
- | |||
- | A minimal configuration needs to specify at least the interaction (-i) and maybe the potential model (-m): | ||
- | |||
- | < | ||
- | |||
- | After the configuration stage is complete a summary of selected options will be shown: | ||
- | < | ||
- | potfit has been configured with the following options: | ||
- | potential model = apot | ||
- | interaction | ||
- | math library | ||
- | </ | ||
- | |||
- | === 2. Build === | ||
- | |||
- | The build process can be start with the '' | ||
- | |||
- | < | ||
- | |||
- | Since '' | ||
- | |||
- | Once the build process is complete, there will be a line indicating the name of the created binary: | ||
- | |||
- | < | ||
- | ---> Successfully moved potfit_apot_pair_mkl to bin/ folder <--- | ||
- | </ | ||
- | |||
- | ===== Setting options ===== | ||
- | |||
- | Special options when compiling //potfit// can be set using the '' | ||
- | |||
- | To enable support from stress, provide the '' | ||
- | |||
- | < | ||
- | |||
- | All enabled options will also be listed on the summary of the configuration stage: | ||
- | |||
- | < | ||
- | potfit has been configured with the following options: | ||
- | potential model = apot | ||
- | interaction | ||
- | math library | ||
- | options | ||
- | </ | ||
- | |||
- | ===== Advanced options ===== | ||
- | |||
- | Most issues with the waf build systems can be resolved using the information provided on the '' | ||
- | Here are some common issues and their recommended solution: | ||
- | |||
- | === Setting MKL path === | ||
- | |||
- | The default path for the MKL libraries is ''/ | ||
- | |||
- | < | ||
- | |||
- | === Setting compiler === | ||
- | |||
- | By default waf will search for the following compilers (in the same order as provided here): | ||
- | * Intel Compiler Collection | ||
- | * Clang | ||
- | * GCC | ||
- | To select a particular compiler use the '' | ||
- | |||
- | < | ||
- | |||
- | Waf will search for the compiler in the default paths. | ||
- | |||
- | Additionally it is possible to use the '' | ||
- | |||
- | === Setting debug options === | ||
- | |||
- | Depending on the selected compiler the following debug options are available: | ||
- | |||
- | * '' | ||
- | * '' | ||
- | * '' | ||
- | |||
- | ===== Troubleshooting ===== | ||
- | |||
- | When waf encounters an error there is usually a message which provides detailed information about the command which failed. If this is not the case it is possible to enable more logging by adding '' | ||
- | |||
- | < | ||
- | |||
- | Logging can be increased even further by adding additional '' | ||
- | |||
- | ===== Developer guide ===== | ||
- | |||
- | TODO | ||
- | How to edit wscript file, maybe create new subpage |
compiling/waf.1537085596.txt.gz · Last modified: 2018/09/16 10:13 by daniel