如何在 Mac 上使用 cmake

mar*_*rk0 6 c++ macos xcode cmake

这对某人来说似乎很明显,但对我来说却不是。

如何在 Mac 上使用 cmake?假设我在 Xcode 中有一个项目,我想要该项目与 assimp 库的链接。

所以我下载了 assimp 源代码,用 cmake 生成构建,将 Xcode 指向下载的源代码中的 /include ,然后呢?建库在哪里?我只有那个库的 Xcode 项目。它会生成库吗?

如果我使用brew安装 assimp,我只在我的 Xcode 项目中设置它:

  1. 头文件路径是:
    /usr/local/include
  2. 库搜索路径为:
    /usr/local/lib
  3. 将班轮标志设置为:
    -lassimp

我已经完成了。

除了源是“新鲜的”而且我无法正确执行之外,cmake 从源构建库有什么好处?

有人可以在使用 Cmake 构建东西时分步发布要做什么,并附上解释吗?

最重要的是 Cmake 将库放在哪里,以及如何与它们链接?

m.s*_*.s. 10

CMake 不构建库,它“仅”生成特定于平台的 Makefile(或等效文件)。您仍然需要编译和安装已编译的库和头文件。

对于要构建的库,必须执行以下步骤(我在 Linux 上执行这些步骤,但这也应该适用于 Mac OS X)。

git clone https://github.com/assimp/assimp.git
cd assimp
mkdir build
cd build
cmake ..
Run Code Online (Sandbox Code Playgroud)

build文件夹现在包含一个Makefile,当您运行时make,将编译该库。

在这一步之后,新构建的库位于build/code/libassimp.so.

您可以将库和包含文件留在那里,并在编译/链接项目时引用它们。通常,您需要install它们,因此它们在系统范围内可用并且可以自动找到。

这是使用sudo make install.

库现在应该在/usr/local/lib,包含文件在/usr/local/include. 您可以使用 CMake更改这些位置。