【发布时间】:2009-09-28 06:20:35
【问题描述】:
我正在为我的项目使用 cmake,但我在子目录(比如 lib/ )中有另一个库,它使用普通的 Makefile。作为构建过程的一部分,如何指示 CMake 在 lib 中运行 Makefile?
【问题讨论】:
-
这个Makefile是单一的还是cmake生成的?
我正在为我的项目使用 cmake,但我在子目录(比如 lib/ )中有另一个库,它使用普通的 Makefile。作为构建过程的一部分,如何指示 CMake 在 lib 中运行 Makefile?
【问题讨论】:
解决方法是使用:
execute_process ( COMMAND make WORKING_DIRECTORY ${project_SOURCE_DIR}/path/to/lib )
【讨论】:
如果您的 /lib 包含自己的 CMakeLists.txt,只需使用 add_subdirectory 命令:
add_subdirectory(/path/of/your/lib/that/contains/CMakeLists.txt)
其他
你必须使用 exec_program 命令:
exec_program(script.sh)
script.sh 是
#!/bin/sh
cd /path/of/your/lib/ && make
别忘了
chmod +x script.sh
在我看来,第一个解决方案更好!!!
【讨论】: