Home/News
What is Yake
Features
Downloads
License
Contact
Community
Development
Documentation
Community Wiki
Dev Blog
SVN Access
SVN Notifications
Bug Tracker
Contributions
Submit a Patch
If you read this offline, please visit the online version on http://www.yake.org for updated information.
The easiest way to acquire the sources is to grab a source package from the Downloads page. Alternatively, you can retrieve the sources from the Subversion repository: SVN Access.
Regardless how you acquire the sources you will have a directory tree like the following. The build directory is created through the build process.
| yake/ | root directory (often referred to as YAKE_ROOT) |
| yake/yake | all headers (.h) |
| yake/src | all sources (.cpp, …) |
| yake/samples | sample applications |
| yake/dependencies | all 3rd party dependencies like boost, Ogre, ODE, Lua etc. |
| yake/media | all data files like meshes, materials, textures, Lua scripts, etc. |
The root path (…)) is often referred to as YAKE_ROOT in documentation and build scripts.
In order to compile Yake you need several dependencies.
Several prebuilt dependency packages are available on the Downloads page.
After downloading extract the package (with full paths) into the Yake root directory (YAKE_ROOT).
Before building Yake decide which toolset to use.
You can see available toolsets by opening a command shell in the Yake root directory (YAKE_ROOT) and entering: premake4 –help.
Here is a list of typical ones used on Windows:
| vs2005 | Visual C++ 2005 (8.0) (with or without service pack 1) |
| vs2008 | Visual C++ 2008 (9.0) |
| vs2010 | Visual C++ 2010 (10.0) |
| gcc | GCC (for example, MinGW) |
After deciding which toolset to use, open the appropriate command shell for your compiler (for example, “Visual C++ 2008 Command Prompt”).
YAKE_ROOT> premake4 toolsetYAKE_ROOT\build\toolset\yake.sln in your Visual C++'s IDEBuild All
Optionally, you can put all the .lib and .dll files into a stage directory with YAKE_ROOT> premake4 stage.
YAKE_ROOT, YAKE_ROOT\dependencies\boostYAKE_ROOT\build\stage or YAKE_ROOT\build\toolset\lib, and YAKE_ROOT\dependencies\boost\stage\lib.yake_base_d.lib to the Debug target and yake_base.lib to the Release target.TIP: For the Visual C++ compiler Yake supports auto-linking, i.e. if you include a header of a Yake library then it automatically informs the compiler that it has to link to the Yake library .lib file.
See this tutorial for detailed steps on how to setup a project: setting_up_an_application_with_vc
Yake's libraries' names are defined using the following scheme:
yake_name_ (for example base or graphics)id_ (for example vc90 for Visual C++ 2008 (9.0))d for debug libraries, not postfix for release libraries.lib for import libraries, .dll for dynamic librariesExamples: