如何使用CMake for iOS构建Imebra库?

如何使用CMake for iOS构建Imebra库?,ios,cmake,compiler-errors,imebra,Ios,Cmake,Compiler Errors,Imebra,我尝试在iOS应用程序中嵌入并使用Imebra库作为Dicom文件查看器。但是当我通过“cmake--build”在“cmake安装…”之后的命令行上构建Imebra库时,出现了如下错误 架构x86_64的未定义符号: “_iconv”,引用自: CharsetConversionVimpl.cpp.o中的imebra::CharsetConversionV::myIconv(void*,char*,unsigned long)常量 “\u iconv\u close”,引用自: imebra:

我尝试在iOS应用程序中嵌入并使用Imebra库作为Dicom文件查看器。但是当我通过“cmake--build”在“cmake安装…”之后的命令行上构建Imebra库时,出现了如下错误

架构x86_64的未定义符号: “_iconv”,引用自: CharsetConversionVimpl.cpp.o中的imebra::CharsetConversionV::myIconv(void*,char*,unsigned long)常量 “\u iconv\u close”,引用自: imebra::charsetConversionV::~charsetConversionV()在charsetConversionVimpl.cpp.o中 “_iconv_open”,引用自: CharsetConversionVimpl.cpp.o中的imebra::CharsetConversionV::CharsetConversionV(std:_1::basic_字符串常量&)


有人能帮我吗?

默认情况下,cmake文件在选择iconv库时不会指定iconv库。尝试显式启动cmake并指定iconv:

Cmake -DIMEBRA_CHARSET_CONVERSION=ICONV
更新

CMakeLists.txt中的一个bug已在库的4.0.5.3版本中修复


基本上,在Linux上显式链接到iconv会导致构建失败,而在OS-X上则相反。解决方案是在OS-X上运行构建时显式链接到iconv。

默认情况下,cmake文件在选择iconv库时不会指定iconv库。尝试显式启动cmake并指定iconv:

Cmake -DIMEBRA_CHARSET_CONVERSION=ICONV
更新

CMakeLists.txt中的一个bug已在库的4.0.5.3版本中修复


基本上,在Linux上显式链接到iconv会导致构建失败,而在OS-X上则相反。解决方案是在OS-X上运行构建时显式链接到iconv。

我刚刚成功地安装了它,没有任何错误。这就是我所做的

遵循imebra编译文档而不是gui上提供的命令行说明。 如果cmake命令出现错误(因为未被识别为有效命令),则必须安装cmake命令行工具

以下是一个教程:

要为iPhone模拟器生成库,请键入以下内容(将imebra_位置替换为imebra的路径):

要为iPhone生成库,请键入以下内容(将imebra_位置替换为imebra的路径):


我刚刚成功地安装了它,没有任何错误。这就是我所做的

遵循imebra编译文档而不是gui上提供的命令行说明。 如果cmake命令出现错误(因为未被识别为有效命令),则必须安装cmake命令行工具

以下是一个教程:

要为iPhone模拟器生成库,请键入以下内容(将imebra_位置替换为imebra的路径):

要为iPhone生成库,请键入以下内容(将imebra_位置替换为imebra的路径):


Mac已经有了libiconv库,我用Brew重新安装了它,但错误再次出现。这个版本对我来说也失败了。所以,我想,到libiconv桅杆的路径应该被添加到这个项目中。@Johneleman谢谢你的回复。你成功地将Imebra库嵌入到你的应用程序中了吗?Mac已经有了libiconv库,我使用Brew重新安装了它,但错误再次出现。这个构建对我来说也失败了。所以,我想,到libiconv桅杆的路径应该被添加到这个项目中。@Johneleman谢谢你的回复。你在你的应用程序中成功嵌入了Imebra库了吗?你好,谢谢你的回复。运行cmake-DIMEBRA\u CHARSET\u CONVERSION=ICONV../imebra\u 4\u 0\u 0\u 4/库和cmake--build之后。我还是犯了同样的错误。我是不是编出来的?非常感谢可能会解决问题的Hi Paolo,谢谢你的回复。运行cmake-DIMEBRA\u CHARSET\u CONVERSION=ICONV../imebra\u 4\u 0\u 0\u 4/库和cmake--build之后。我还是犯了同样的错误。我是不是编出来的?多谢你也许能解决这个问题
mkdir imebra_for_ios
cd imebra_for_ios
cmake imebra_location -DIOS=IPHONE
cmake --build