1.6 KiB
Compilation, Linking and Assets
In this exercise we will add a couple of files to the project.
CMake
As described in the slides, the project is defined by several CMake files. The ones we are interested
is CMakeLists.txt
in the root project folder and
the CMakeLists.txt
file in the lib
folder.
You can see that the root CMake file is adding the lib
subdirectory, this means that it is looking for
a CMakeLists.txt
file within that folder.
The CMake file in the lib
folder describes a few package requirements and then it does this
file(GLOB_RECURSE sources CONFIGURE_DEPENDS "*.cpp" "*.hpp")
Here it is creating a CMake variable called sources
that will contain all .cpp
and .hpp
files within the lib
folder. This means that if we want to add new files, we don't have to list them here, as any applicable files are
included. But adding a file will not automatically add the file in the IDE, as CMake needs to be run again for those
changes to apply.
Exercise
One of the Pac-Man ghosts is missing. We will fully implement this ghost later but for now let's add the .cpp
and .hpp
files to the project.
-
Create a
Clyde.hpp
in thelib/include
folder and aClyde.cpp
file in thelib
folder. -
Run CMake again and see your IDE update to include these new files. You can try compiling again and see what happens.
-
Include the
Clyde.hpp
file within theClyde.cpp
file, and add#pragma once
toClyde.hpp
. -
Include
Clyde.hpp
in GameState.hpp and rebuild