5.2.2 macOS 说明

本节介绍构建 Connector/C++ 应用程序时特定于 macOS 的方面。有关构建应用程序的一般信息,请参阅 第 5.1 节,“构建 Connector/C++ 应用程序:一般注意事项”

适用于 macOS 的 Connector/C++ 二进制发行版是使用 macOS 原生 clang 编译器编译的。因此,使用 Connector/C++ 的应用程序也应该使用相同的 clang 编译器构建。

clang 编译器可以使用两种不同的 C++ 运行时库实现:原生 libc++ 或 GNU libstdc++ 库。应用程序使用与 Connector/C++ 相同的运行时实现(即原生 libc++)非常重要。为了确保这一点,应该将 -stdlib=libc++ 选项传递给编译器和链接器调用。

要构建一个使用 X DevAPI、源代码位于 app.cc 中并动态链接到连接器库的 Connector/C++ 应用程序,用于在 macOS 上构建的 Makefile 可能如下所示:

MYSQL_CONCPP_DIR = Connector/C++ installation location
CPPFLAGS = -I $(MYSQL_CONCPP_DIR)/include -L $(MYSQL_CONCPP_DIR)/lib64
LDLIBS = -lmysqlcppconn8
CXX = clang++ -stdlib=libc++
CXXFLAGS = -std=c++17
app : app.cc

适用于 macOS 的二进制软件包包括与连接器链接的代码所需的 OpenSSL 库。这些库与连接器库安装在同一位置,动态链接器应该可以在那里找到它们。