0

我按照 Russes 在http://forum.dcmtk.org/viewtopic.php?f=3&t=3047&start=15上的说明进行操作

使用他的“afab”git 分支的新副本,我使用命令行为 x86 架构构建了 Xcode 项目:

cmake -DIOS_PLATFORM=SIMULATOR64 -G Xcode ../dcmtk.public

或用于臂弓:

cmake -DIOS_PLATFORM=OS -G Xcode ../dcmtk.public

但是,我的 Xcode 项目无法成功构建,至少是因为以下错误: ofchrenc.cc 文件上的 Xcode 错误列表(例如“在 OFCharacterEncoding 中没有名为实现的类”)

在我的情况下,使用 Unix makefile 进行编译会产生相同的错误:

扫描目标ofstd的依赖关系

0% 构建 CXX 对象 ofstd/libsrc/CMakeFiles/ofstd.dir/ofchrenc.cc.o

dcmtk.public/ofstd/libsrc/ofchrenc.cc:518:28:错误:在'OFCharacterEncoding'类中没有名为'Implementation'的类OFCharacterEncoding::Implementation {};

dcmtk.public/ofstd/libsrc/ofchrenc.cc:556:31:错误:'getLocaleEncoding' 的外线定义与'OFCharacterEncoding' OFString OFCharacterEncoding::getLocaleEncoding() 中的任何声明都不匹配

/usr/local/include/dcmtk/ofstd/ofchrenc.h:97:21:注意:成员声明不匹配,因为它是 const 限定的 const OFString &getLocaleEncoding() const;

[...] dcmtk.public/ofstd/libsrc/ofchrenc.cc:644:34:错误:“setConversionFlags”的离线定义与“OFCharacterEncoding”中的任何声明 OFCondition OFCharacterEncoding::setConversionFlags(const unsigned标志)

产生 19 个错误。

制作 2:ofstd/libsrc/CMakeFiles/ofstd.dir/ofchrenc.cc.o 错误 1

制作 1:ofstd/libsrc/CMakeFiles/ofstd.dir/all 错误 2

make: [全部] 错误 2

我不明白我的配置有什么问题:

  • macOS Sierra 10.12.2

  • Xcode 8.2

  • CMake 3.7.1(我以前在 3.5.2 版本中遇到过同样的问题)

  • GNU Make 3.81(用于 Unix makefile 编译)

  • 苹果 LLVM 版本 8.0.0.8000042

  • 主机的达尔文版本:16.3.0

  • 构建最低 iOS 版本:10.2(SDK 版本:10.2)

4

1 回答 1

0

我不确定第一条错误消息,但是

/usr/local/include/dcmtk/ofstd/ofchrenc.h:97:21:注意:成员声明不匹配,因为它是 const 限定的 const OFString &getLocaleEncoding() const;

似乎表明您正在混合旧版本的“ofchrenc.h”(存储在“/usr/local/...”中)和更新版本的“ofchrenc.cc”(存储在您的工作目录中)。

于 2017-01-03T16:57:51.200 回答