windows下编译dcmtk的Android版本

1.下载最新的dcmtk http://support.dcmtk.org/redmine/attachments/download/77/dcmtk-3.6.1_20150217.tar.gz解压。

2.参照官方wiki http://support.dcmtk.org/redmine/projects/dcmtk/wiki/Howto_CompileAndroid 安装NDK、SDK、CMake、msys。

3.CMake GUI选择dcmtk目录,按照官方wiki添加ANDROID_NDK、ANDROID_SDK_ROOT选择 android.toolchain.cmake文件。ANDROID_NATIVE_API_LEVEL选18(这个能编译过……)ANDROID_EMULATOR_AVD随便选一个模拟器。

4.修改CMake\dcmtkUseAndroidSDK.cmake的DCMTK_ANDROID_START_EMULATOR函数,直接RETURN(),不起模拟器,(因为CMake一直起不来模拟器……)

5.点击Configure、Gennerate。

6.在dcmtk的编译目录运行<msyspath>\bin\make.exe,我这提示找不到arith.h……

7.保证安装了Visual Studio,在dcmtk目录运行“cmake .”,会默认生成VS的工程文件,再用VS打开,编译。arith.h就在config\include\dcmtk\config生成了,拷贝到ofstd\include\dcmtk\config。

8.再用<msyspath>\bin\make.exe编译,交叉编译完成!!!

9.将编译目录下lib里面需要的.a拷到NDK工程,把需要的头文件也包含进来。Application.mk添加APP_STL := gnustl_static,在Android.mk里面导入对应的.a。


include $(CLEAR_VARS)
LOCAL_MODULE    := oflog
LOCAL_SRC_FILES := liboflog.a
include $(PREBUILT_STATIC_LIBRARY)  


include $(CLEAR_VARS)
LOCAL_MODULE    := ofstd  
LOCAL_SRC_FILES := libofstd.a
include $(PREBUILT_STATIC_LIBRARY)  


include $(CLEAR_VARS)
LOCAL_MODULE    := dcmimgle  
LOCAL_SRC_FILES := libdcmimgle.a
include $(PREBUILT_STATIC_LIBRARY)  


include $(CLEAR_VARS)
LOCAL_MODULE    := i2d  
LOCAL_SRC_FILES := libi2d.a
include $(PREBUILT_STATIC_LIBRARY)  


include $(CLEAR_VARS)
LOCAL_MODULE    := dcmdata  
LOCAL_SRC_FILES := libdcmdata.a
LOCAL_STATIC_LIBRARIES += oflog
LOCAL_STATIC_LIBRARIES += ofstd
include $(PREBUILT_STATIC_LIBRARY)  


include $(CLEAR_VARS)
LOCAL_MODULE := dicom_toolkit
LOCAL_LDLIBS =-lm -llog
LOCAL_LDLIBS += -landroid
LOCAL_LDLIBS += -lz
LOCAL_CFLAGS += -g -O0 
LOCAL_SRC_FILES += dicom_toolkit.cpp
LOCAL_STATIC_LIBRARIES += i2d
LOCAL_STATIC_LIBRARIES += dcmimgle
LOCAL_STATIC_LIBRARIES += dcmdata
LOCAL_SHARED_LIBRARIES += sdk
include $(BUILD_SHARED_LIBRARY)

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 5
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值