我使用C++语言在Visual 2013的一个项目中使用DCMTK3.6.1库。我的代码在Debug模式下工作得很好,但在发布模式下没有工作;当我试图编译它时,我有275个错误,所有这些都是这样的:
dcmdata.lib(dcdatset.obj):错误LNK2038:检测到
'_ITERATOR_DEBUG_LEVEL': value '2' doesn't match value '0' in testapp_new.obj
2>dcmdata.lib(dcdatset.obj) : error LNK2038: mismat
我正在尝试通过和Cmake从源代码编译。
在mingw32-make命令之后,我得到了这些错误:
In file included from C:/dcmtk/oflog/include/dcmtk/oflog/internal/internal.h:59,
from C:\Users\Rodrigo\Downloads\tmp_dcmtk\dcmtk\oflog\libsrc\oflog.cc:35:
C:/dcmtk/oflog/include/dcmtk/oflog/thread/impl/tls.h: In function 'dcmtk::l
我试图在更多的detail.so中理解交叉编译过程,到目前为止,我所知道的是,如果我们有任何C/C++库,我们可以将它们交叉编译成*.a或*.so文件,并在安卓中通过JNI使用它们。
假设我们有一个库源代码,让它有DCMTK源代码(一个dicom工具包),它依赖于libpng/libxml2,并且许多others.DCMTK使用CMake作为构建系统。
所以我所理解的是,如果我想在android中使用DCMTK,我需要交叉编译it.SO,我通过CMake-GUI运行这个过程,并通过cmake-android脚本设置交叉编译。所以它为android arm arch提供了指针、正确的编译器等功能
我使用的是Visual Studio 2013下的DCMTK库。在项目属性中设置
Character Set: Use Unicode Character Set
编译时出现以下错误
Error 1 error C2678: binary '+' : no operator found which takes a left-hand operand of type 'const wchar_t [8]' (or there is no acceptable conversion) C:\DCMTK\include\dcmtk\oflog\tracel
我正在尝试使用最新的cmake GUI构建dcmtk版本3.6.5。如果我不包含openssl支持,我可以很好地构建一些东西。在尝试使用openssl支持进行构建时,我收到以下消息:
Selecting Windows SDK version 10.0.19041.0 to target Windows 10.0.18363.
Performing Test OPENSSL_VERSION_CHECK
Performing Test OPENSSL_VERSION_CHECK - Success
Info: DCMTK OPENSSL support will be enabled
Info:
我有一个带有一堆可执行文件的外部库(DCMTK)。通常,这些命令可以在CLI上执行,输出有时会显示在终端中。我想在PHP脚本中使用其中的一些,并且我能够用其中的一个来实现。
要点包括:
// path to the executables.
private static $dcmtk_path = '/usr/local/opt/dcmtk/bin/';
//method to execute the dcmtk executable.
public static function dcmtk_command($command) {
//--logfile dcm
QtDCM编译失败。我按照这个中所描述的做了所有的工作,DCMTK和ITK被顺利地编译了,但是当我尝试编译QtDCM时,它失败了,并出现错误:
2>QtDcmFindScu.cpp
2>D:\CPP\qtdcm\src\QtDcmFindScu.cpp(197): error C2259: 'QtDcmFindCallback': cannot instantiate abstract class
2>D:\CPP\qtdcm\src\QtDcmFindScu.cpp(197): note: due to following members:
2>D:\
我在我的应用程序中使用DCMTK,编译时使用cmake文件。cmake查找所有库(至少是头库,因为在将源文件编译到.o文件中),唯一的问题是在链接过程中,它试图为DCMTK找到动态库。我编译了一个静态文件,所以我没有.so文件。因此,它给了我错误:No rule to make target /usr/lib/libdcmdata.so, needed by dcm_seg. Stop.
我使用Ubuntu14.04 x64。
这让我很困惑。那么,有什么问题?
cmake档案:
cmake_minimum_required(VERSION 2.6)
project(dcm_segm)
s