如何为同一父库中的多静态库编写cmakelist

  • 本文关键字:静态 cmakelist c++ cmake
  • 更新时间 :
  • 英文 :


我是cmake的新手,我目前正在使用cmake构建的项目,我现在知道如何为静态库编写cmakelist。尽管如此,我不知道如何为以下部分编写cmakelist:

|---TopLevel
|--->StaticLib
|----->CMakeLists.txt              #1
|----->LIB1
|------->myadd.h
|------->myadd.cpp
|------->CMakeLists.txt
|----->LIB2
|------->mysub.h
|------->mysub.cpp
|------->CMakeLists.txt
|---main.cpp
|--->CMakeLists

我知道如何写除了评论#1以外的所有cmakelist(我不能绝对确保我写的这些cmakelist都是最好的)。

另外,Lib1中的一些函数在Lib2中使用。当我试图在main中包含mysub.h时,编译器给出无法打开myadd.h的警告,如何解决这个问题

//in mysub.h

的ifndefMY_SUB__HPP#定义MY_SUB__HPP

包括"myadd.h">

# endif

谢谢大家

通过使用add_subdirectory(<subdirectoryName>),在这些子目录中使用CMakeLists.txt来定义它们自己的目标。

很抱歉,我没有足够的声誉把它作为评论,我认为这是更合适的。

最新更新