Awesome
VAL
This repository hosts tools for AI Planning plans and planning models.
If all you need is binaries, click the Azure Pipeline link above, open the latest green build navigate to the Summary tab and then download the artifact for your operating system. Binaries are available for Linux, Windows and MacOS.
Please report problems and feature requests
Authors
- Maria Fox and Derek Long - PDDL2.2 and VAL
- Richard Howey - PDDL2.2 and VAL and Continuous Effects, derived predicates, timed initial literals and LaTeX report in VAL
- Stephen Cresswell - PDDL2.2 Parser
Updates
- July 2019: Change license from GNU Lesser General Public License, version 3 to 3-Clause BSD License
Applications
Libraries
How to compile VAL
Windows
-
Requirements:
- CMake
- Include cmake in path for all users
- MinGW-w64
- Install packages: mingw32-base, mingw32-gcc-g++
- Strawberry Perl (required for GCC)
- LLVM
- Doxygen
- CMake
-
IDE:
- Visual Studio Code
- Extensions:
- Warning: You may require to restart your machine to be sure cmake, and gcc tools are identified by Visual Studio Code.
- Visual Studio Code
-
Scripts
- scripts/windows/build_win64_mingw.bat: Build scripts for windows 64 bits using MinGW
- Binaries can be found in
build/win64/mingw/Release|Debug/bin
- Binaries can be found in
- scripts/windows/build_win64_eclipse_mingw.bat: Build scripts for windows 64 bits using MinGW and creating eclipse project definition.
- Binaries can be found in
build/win64/eclipse_mingw/Release|Debug/bin
- Project can be imported in eclipse following the instructions.
- Binaries can be found in
- scripts/windows/build_win64_vs.bat: Build scripts for windows 64 bits using Visual Studio Compiler
- Binaries can be found in
build/win64/vs/Release|Debug/bin
- Binaries can be found in
- scripts/windows/setup_dlfcn-win32.bat: Build scripts to build dlfcn-win32 library for windows
- Binaries can be found in
externals/dlfcn-win32/
- Binaries can be found in
- scripts/windows/format.bat: Scripts to format the code
- scripts/windows/documentation.bat: Generate documentation
- scripts/windows/build_win64_mingw.bat: Build scripts for windows 64 bits using MinGW
Linux
-
Requirements:
- Debian packages: cmake make g++ mingw-w64 flex bison
- mingw-w64: For cross-compiling
- flex, bison: For parser code regeneration
- Debian packages: cmake make g++ mingw-w64 flex bison
-
IDE:
-
Scripts
- scripts/linux/build_linux64.sh: Build scripts for linux 64 bits
- Binaries can be found in
build/linux64/Release|Debug/bin
- Binaries can be found in
- scripts/linux/build_win32.sh: Build scripts for windows 32 bits
- Binaries can be found in
build/linux_win32/Release|Debug/bin
- Binaries can be found in
- scripts/linux/build_win64.sh: Build scripts for windows 64 bits
- Binaries can be found in
build/linux_win64/Release|Debug/bin
- Binaries can be found in
- scripts/linux/documentation.sh: Generate documentation
- scripts/linux/format.sh: Scripts to format the code
- scripts/linux/setup_flex_bison.sh: Build scripts to generate flex and bison header/implementation files from libraries/VAL/src/Parser/pddl+.l and libraries/VAL/src/Parser/pddl+.y
- Sources files can be found in libraries/VAL/src/Parser/pddl+.cpp and libraries/VAL/src/Parser/pddl+.lex.yy.h
- scripts/linux/build_linux64.sh: Build scripts for linux 64 bits
macOS
-
Requirements:
- Xcode packages: cmake make g++ gcc flex bison
- Note: easier to simply install Xcode in its entirety; necessary packages automatically downloaded
-
IDE:
-
Scripts
-
Note: all called (internally as well) build and clean scripts must be run through dos2unix
-
(scripts/build_macos_dev.sh): script for native macOS build
- Binaries can be found in
build/macos64/Release/bin
- Binaries can be found in
-
(scripts/clean_macos_dev.sh): script for cleaning out built binaries
-
(scripts/linux/setup_flex_bison.sh): build script to generate flex and bison header/implementation files from libraries/VAL/src/Parser/pddl+.l and libraries/VAL/src/Parser/pddl+.y
-
Note: flex on macOS currently causing compatibility issues
- Do not run setup_flex_bison.sh
- Use current Windows-generated flex header file at [libraries/VAL/src/Parser/pddl+.lex.yy.h]
-
Note: bison on macOS running well
- Edit YACC file at [libraries/VAL/src/Parser/pddl+.y] as needed
- Run bison command from script (bison pddl+.y -o pddl+.cpp) directly through terminal
-
How to contribute to VAL
Please submit any defects as Issues via GitHub.
If you are missing a feature, report it as an issue, but tag it as [feature]
please.
We appreciate community contributions to this open sourced code repository. By submitting a pull request you certify that the contribution is your original work, you ensure the contribution is compatible with this repository license terms, and you agree (including on behalf of your employer, if applicable) that the community is free to use your contributions.
If you have a summer intern or a post-doc student and need a project for a few weeks or months, pick from the backlog of Issues, or just address the numerous c++ build warnings and help us modernize the codebase.