我经常使用 mysql c api,因此将它们链接到我的 c 项目中,在 xcode 下开发。
昨天我试图建立一个静态库来封装一些数据库函数。
但是,如果我尝试构建 lib,则会出现一些奇怪的错误:
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/libtool: can't locate file for: -lm
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/libtool: file: -lm is not an object file (not allowed in a library)
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/libtool: can't locate file for: -lz
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/libtool: file: -lz is not an object file (not allowed in a library)
Command /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/libtool failed with exit code 1
要在 xcode 下包含 mysqllib,必须将以下行添加到 build set-ip “other linker flags”:
-lmysqlclient -lm -lz
据我了解,xcode 无法在静态库中使用此链接器标志。
使用普通的命令行程序,它工作正常,我多年来一直在使用它。
有没有人提示我如何处理这个问题?
提前致谢
索利克