《CMake Practice》示例程序的错误

最近在学习CMake,用的自然是《CMake Practice》这本书,看得出来作者写这本书的时候有些匆忙,存在一些纰漏。
t1中的错误自然不用说,漏了${}这个错误网上很多博文都提及了,但是接下来的t2中的一个错误网上却找不到相关的资料。
《CMake Practice》示例程序的错误

t2的练习后,作者告诉我们运行的结果应该如上图所示,但是如果按照作者所给出的代码,执行后的结果中,/usr/bin/中只有runhello.sh一个文件,而没有hello这个可执行二进制文件。如下图所示
《CMake Practice》示例程序的错误

Hello World

那么问题出在哪里呢?其实如果把前面的内容都看懂的了话马上就知道问题就是./t2/src/CMakeLists.txt没有加入生成可执行文件的指令,只需要在/t2/src/CMakeLists.txt中加入下面代码即可

INSTALL(TARGETS hello RUNTIME DESTINATION bin)

另外,如果需要调用runHello.sh来调用可执行文件,需要将里面的内容从hello改为./hello