R M*_*nke 8 c++ xcode frameworks static-libraries
澄清澄清:我知道如何使用obj-c或swift在Xcode中创建库.我知道如何在项目中使用它们.我知道如何编译这些项目所以一切正常.我不知道的是如何采用开源C源代码(hehe)并将其构建/编译/编译到库中.
只是为了澄清下面的一切:我正在寻找一种在Swift应用程序中使用c库的方法,这意味着使用Xcode.c库不必使用/在Xcode中构建,我可以使用其他工具.
我通常会编写自己使用的所有代码,不幸的是我只在Xcode中编写Swift.所以我在使用框架/库方面有点落后.现在我真的想探索Tesseract OCR,我在构建所需的库时遇到了麻烦.对我来说,最好真正理解它是如何工作的,并且能够自己做到这一点,而不仅仅是查看Github并找到预编译的源代码.
以下项目都以不同方式处理.iOS版本使用预编译的库.(.a文件)OSX版本使用包含库文件(尚未编译)的项目.
libjpeg不能只是拖放的库的示例.
使用brew只会将其安装为命令行工具,而不会生成lib.
我遇到的问题是我对这些c库知之甚少,以及如何有效地构建它们甚至google.
我的问题:
我不是在寻找Tesseract的具体答案.我想自己学习如何做到这一点.
本文没有提到如何实际添加c程序并让xcode成功.关于工作空间的部分很有趣.
这个实际上真的很重要.但是我在Tesseract中找不到可执行文件.执行步骤5时,所有选项都显示为灰色.
这看起来很漂亮:简单的c ++ procect 为什么tesseract看起来不那样?:)
如果要构建Tesseract,请按照 UNIX 系统的说明进行操作:
./autogen.sh
./configure
make
sudo make install
sudo ldconfig
Run Code Online (Sandbox Code Playgroud)
你不必这样做,事实上你不应该使用 xcode(它只是一个 GUI/前端),而是坚持使用每个库告诉你使用的内容。在某些情况下,可以使用 xcode 进行构建。想要使用 xcode 进行构建的项目通常会包含 xcode 项目文件。
Apple的编译器是llvm/clang,因此它可能与Linux的GNU gcc/g++有一些细微的差异。
编辑
您需要首先安装 leptonica 和 automake:
brew install automake
brew install leptonica
Run Code Online (Sandbox Code Playgroud)
然后运行构建说明。正如您在make install期间会注意到的那样,该库位于
/usr/local/lib/libtesseract.a
Run Code Online (Sandbox Code Playgroud)
标题位于:
/usr/local/include/tesseract
Run Code Online (Sandbox Code Playgroud)
从那时起,就是在您的项目中使用它的问题了。我使用brew 和命令行工具在OSX Yosemite 10.10.5 上对此进行了测试。
归档时间: |
|
查看次数: |
3921 次 |
最近记录: |