gpt4 book ai didi

c++ - 如何将 "make"c++ 代码放入 xcode 的库中

转载 作者:可可西里 更新时间:2023-11-01 17:56:43 26 4
gpt4 key购买 nike

澄清澄清:我知道如何使用 obj-c 或 swift 在 Xcode 中创建库。我知道如何在项目中使用这些。我知道如何编译这些项目,所以一切正常。我不知道的是如何获取开源 C 源代码(呵呵)并将其构建/制作/编译成库。


只是为了澄清以下所有内容:我正在寻找一种在 Swift 应用程序中使用 c 库的方法,这意味着使用 Xcode。 C 库不必使用/在 Xcode 中构建,我可以使用其他工具。


我通常自己编写所有我使用的代码,不幸的是我只在 Xcode 中编写 Swift。所以我在使用框架/库方面有点落后。现在我真的很想探索 Tesseract OCR,但我在构建所需的库时遇到了问题。对我来说,最好真正了解它的工作原理并能够自己完成,而不仅仅是查看 Github 并找到预编译的源代码。

下面的项目都以不同的方式处理这个问题。 iOS 版本使用预编译库。 (.a 文件)OSX 版本使用包含库文件(尚未编译)的项目。

An iOS compiled version

An OSX compiled version

libjpeg不能只是拖放的库示例。

使用 brew 只会将其安装为命令行工具,不会生成库。

install Tesseract with homebrew

我的问题是我对这些 c 库以及如何构建它们知之甚少,甚至无法有效地使用 google。

我的问题:

  • 如何将 C 代码编译/构建为 .a 文件?
  • 你如何创建一个 xcode 项目来构建一个基于c代码? (可选)
  • 所有这一切的正确词汇是什么?

我不是在寻找 Tesseract 特定的答案。我想自己学习如何做。

about static libraries

这篇文章没有提到如何实际添加c程序并让xcode制作它。不过关于工作区的部分很有趣。

Article on building c project in Xcode

这个实际上非常相关。但是,例如,我无法在 Tesseract 中找到可执行文件。执行第 5 步时,所有选项都显示为灰色。

这看起来很漂亮:simple c++ procect为什么 tesseract 不能看起来像那样? :)

最佳答案

如果您想构建 Tesseract,请按照 UNIX 系统的说明进行操作:

./autogen.sh
./configure
make
sudo make install
sudo ldconfig

您不必这样做,事实上您不应该使用 xcode(它只是一个 GUI/前端),而是坚持使用每个库告诉您使用的内容。在某些情况下,可以使用 xcode 进行构建。希望您使用 xcode 进行构建的项目往往包含一个 xcode 项目文件。

Apple 的编译器是 llvm/clang,所以它可能与 Linux 的 GNU gcc/g++ 有一些细微的差别。

编辑

你需要先安装leptonica和automake:

brew install automake
brew install leptonica

然后运行构建说明。正如您将在 make install 过程中注意到的那样,该库位于

/usr/local/lib/libtesseract.a

标题位于:

/usr/local/include/tesseract

从那时起,就是在您的项目中使用它的问题了。我使用 brew 和命令行工具在 OSX Yosemite 10.10.5 上对此进行了测试。

关于c++ - 如何将 "make"c++ 代码放入 xcode 的库中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32812509/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com