我正在尝试针对tesseract构建我的应用程序,我已经通过brew安装(在mac os x上工作)。
虽然我可以使用g ++和pkg-config编译我的应用程序而没有问题,但我不知道如何使用cmake做同样的事情。
我尝试了FIND_PACKAGE tesseract REQUIRED,但它似乎无法找到它。有没有人有样品CMakeLists.txt?
感谢帮助。
答案 0 :(得分:1)
使用CMake在您的项目中使用tesseract的唯一(或最简单)方法是下载tesseract源(来自here) 使用以下步骤构建:
cd <Tesseract source directory>
mkdir build
cd build
cmake ../
make
sudo make install
指定&#34; Tesseract_DIR&#34;环境变量到您刚为tesseract创建的目录。
然后在项目的CMakeLists.txt文件中,您应该有以下几行:
find_package( Tesseract 3.05 REQUIRED ) # 3.05 is currently the latest version of the git repository.
include_directories(${Tesseract_INCLUDE_DIRS})
target_link_libraries(<your_program_executable> ${Tesseract_LIBRARIES}) # you can link here multiple libraries as well.
在所有人用cmake构建你的项目之后。
答案 1 :(得分:0)
我使用了以下findpkgconfig命令,它适用于使用brew包的MacOS。
find_package( PkgConfig REQUIRED)
pkg_search_module( TESSERACT REQUIRED tesseract )
pkg_search_module( LEPTONICA REQUIRED lept )
include_directories( ${TESSERACT_INCLUDE_DIRS} )
include_directories( ${LEPTONICA_INCLUDE_DIRS} )
link_directories( ${TESSERACT_LIBRARY_DIRS} )
link_directories( ${LEPTONICA_LIBRARY_DIRS} )
add_executable( FOOBAR main )
target_link_libraries( FOOBAR ${TESSERACT_LIBRARIES} )
target_link_libraries( FOOBAR ${LEPTONICA_LIBRARIES} )
答案 2 :(得分:0)
由于您要链接库而不是已安装的软件包,因此您可以像将任何其他库链接到cmake一样添加它
target_link_libraries( your_project tesseract )
这相当于将-ltesseract添加到g ++命令行
答案 3 :(得分:0)
由于缺少代表而无法评论Long的答案,但使用
target_link_libraries( FOOBAR ${TESSERACT_LINK_LIBRARIES})
target_link_libraries( FOOBAR ${LEPTONICA_LINK_LIBRARIES})
在使用相同的findpkgconfig方法之后,为我工作了。使用:
target_link_libraries( FOOBAR ${TESSERACT_LIBRARIES})
在编译时给我一个链接器错误