TOPAS MC上有安装general extension的教程,在To add User Extensions部分中。GitHub dicom-interface的readme应该是由于长时间没有更新,所以有些错误。本文是在Linux系统下安装RTion extension,其他系统应该也能借鉴。计算机小白,很多地方都是试错试出来,或者在论坛上找回答。

1. 下载Geant4Headers_106P3.zip

把Geant4Headers_106P3.zip拖到topas的路径下后解压,会得到一个在topas路径下的Geant4Headers文件夹,里面有一些头文件。

2. 如果没有cmake,需要下载安装cmake

TOPAS有安装教程,CMake for Debian 10: apt install -y cmake

如果在没有root权限的服务器安装cmake,可以查看 (12条消息) Ubuntu非root用户安装CMake_L_by_D的博客-CSDN博客

-bash: ./bootstrap: Permission denied 的解决方法(12条消息) cmake在非foot时安装教程及Permission denied解决方案_superdan5的博客-CSDN博客

我的服务器还没有装gcc和g++。。所以装cmake的时候会报错。以下是在装好cmake的虚拟机进行的

3. 下载dicom-interface扩展包,rti.git

下载地址GitHub - topasmc/dicom-interface: DICOM RT Interface for TOPAS

扩展包不要放在topas路径下,我放在/home/username/Desktop/topas_extensions中。

或者直接用命令行

$ cd /home/username/Desktop/topas_extensions
$ git clone https://github.com/topasmc/dicom-interface rti.git

4. 下载gdcm

下载2.4或2.6版本,因为作者说

“ GDCM (tested versions are 2.4 and 2.6.) library (header and objects) is required. tested versions are 2.4 and 2.6. version 3.0 doesn't work with RTI (thank to Dohyeon). ”

我下载的GDCM-2.6.9-Linux-x86_64,下载地址 Release v2.6.9: Fix bug 427 · malaterre/GDCM · GitHub

5. 修改topas路径下的CMakeLists.txt, 在include_directories中添加两行

include_directories (
    ${CMAKE_BINARY_DIR}
    ${CMAKE_BINARY_DIR}/extensions
    ${PROJECT_SOURCE_DIR}/Geant4Headers
    ${PROJECT_SOURCE_DIR}/include
    /home/username/Desktop/topas_extensions/rti.git/
    /home/username/Desktop/GDCM-2.6.9-Linux-x86_64/include/gdcm-2.6/

)

README.md 中写的是

include_directories (${CMAKE_BINARY_DIR}${CMAKE_BINARY_DIR}/extensions${PROJECT_SOURCE_DIR}/Geant4Headers${PROJECT_SOURCE_DIR}/include/<your_sw_path>/rti.git//<your_gdcm_include_path>/gdcm-<version>/
)

但如果最后一行只写到/home/username/Desktop/GDCM-2.6.9-Linux-x86_64/,会报错

6.  我也不知道这一步叫啥

在topas的路径下打开终端(即目前目录位于topas路径中),输入命令行

$ cmake -DTOPAS_EXTENSIONS_DIR=/home/username/Desktop/topas_extensions/rti.git/rti/topas/rtion .
$ make -j4

第一行的最后有个“空格+.”,我不知道为什么(捂脸),readme里是这么写的,如果不加这个的话会报cmake warning, 但不会影响后面的make。随后的make也会有warning (不管上一行有没有加“空格+.”)。作者说

“Don't worry about any "Warning" messages. Only worry about messages that say "Error".”

如果后续还需要其他扩展

“If you add additional extensions to your extensions directory, again run the full cmake -DTOPAS_EXTENSIONS_DIR=/Applications/topas_extensions make”

7. 测试是否安装成功

$ cd /home/username/Desktop/topas_extensions/rti.git/rti/topas/tutorial
$ /home/username/Desktop/topas/bin/topas view.txt

以上!

2022.10.23

安装TOPAS RTion extension, 出现的问题及解决方法相关推荐

  1. mac $php_autoconf,开发者说PHPersay-Mac安装Swoole扩展phpize 时 Cannot find autoconf 解决方法...

    Mac安装Swoole扩展phpize 时 Cannot find autoconf 解决方法swoole-1.9.23 phpizeConfiguring for:PHP Api Version: ...

  2. 安装苹果cms时提示不支持fileinfo解决方法

    苹果CMS安装时提示缺少fileinfo插件解决方法 一,我用的是宝塔软件 我们就以宝塔为例 1.打开宝塔面板找到-软件管理一项 2.选择你安装的PHP版本,打开设置我用的是7.2版本 你要看下自己的 ...

  3. mac php pear,OSX EI Captain中安装Pear等三方软件不成功的解决方法

    OSX EI Captain中安装Pear等三方软件不成功的解决方法 发布于 2015-12-03 21:24:06 | 1238 次阅读 | 评论: 1 | 来源: PHPERZ PEAR PHP扩 ...

  4. hp打印机无法与计算机,电脑中安装HP打印机后重启无法打印的解决方法

    电脑中安装HP打印机后重启无法打印怎么办?近来不少朋友都向小编咨询了这个问题.HP有一个型号重启以后无法打印,今天系统城小编就要在这里给大家介绍一个方法可以解决这个问题. 具体方法如下: 1.这是第一 ...

  5. 关于安装nagios make all时出现问题的解决方法

    关于安装nagios make all时出现问题的解决方法 在安装nagios时经常会出现 make[1]: *** [cmd.cgi] Error 1 make[1]: Leaving direct ...

  6. pip安装kolla-ansible时报错Cannot install ‘PyYAML‘的解决方法

    pip安装kolla-ansible时报错Cannot install 'PyYAML'的解决方法 参考文章: (1)pip安装kolla-ansible时报错Cannot install 'PyYA ...

  7. 安装opencv3.3.0碰到的问题及解决方法

    安装opencv3.3.0碰到的问题及解决方法 参考文章: (1)安装opencv3.3.0碰到的问题及解决方法 (2)https://www.cnblogs.com/kean0048/p/11046 ...

  8. matlab2018a安装后帮助文档打不开解决方法

    matlab2018a安装后帮助文档打不开解决方法 参考文章: (1)matlab2018a安装后帮助文档打不开解决方法 (2)https://www.cnblogs.com/luoxiaojuan/ ...

  9. windows安装TensorFlow和Keras遇到的问题及其解决方法

    windows安装TensorFlow和Keras遇到的问题及其解决方法 参考文章: (1)windows安装TensorFlow和Keras遇到的问题及其解决方法 (2)https://www.cn ...

最新文章

  1. [深度学习]Object detection物体检测之概述
  2. Bootstrap基础二十七 多媒体对象(Media Object)
  3. LuoguP1268树的重量【构造/思维】By cellur925
  4. 数据缓存 php,数据缓存 · ThinkPHP3.2.3完全开发手册 · 看云
  5. 1004 C语言设置测试数据个数和测试结束标志
  6. python 读取excel文件,并读成数据框格式输出
  7. buck电路_2步避免BUCK电路中的“地弹”
  8. Graphviz样例之有限状态自动机
  9. php养老院管理系统论文,养老院一卡通管理
  10. 单片机晶振电路的设计与计算
  11. 数学中几种积:点积(数量积/标量积/内积)、叉积(叉乘/向量积)、外积(张量积/Kronecker积)、哈达玛积(元素积)
  12. 集合框架ArrayList 源码分析(二)
  13. 黑马pink JavaScript笔记(7)-流程控制-循环
  14. qt程序报错error C2248: “ThreadTest::ThreadTest”: 无法访问 private 成员(在“ThreadTest”类中声明)
  15. linux 命令例子
  16. (信贷风控八)行为评分卡模型(B卡)的介绍
  17. sturts调用支付宝接口。
  18. 虚拟机服务器CPU授权,vSphere5全新的许可授权方式——CPU许可+vRAM授权
  19. IAR问题:Failed to get CPU status after 4 retries Retry?
  20. angelababy都靠它保持身材,只需10秒随时随地喝到新鲜果汁!

热门文章

  1. 9.谷歌浏览器最小字体尺寸
  2. 【python与数据分析】Matplotlib数据可视化
  3. 前端开发需要会什么?先掌握这三大核心关键技术
  4. 换个格式输出整数 蓝桥杯 C语言
  5. 云诊所管理系统(联合诊疗)支持远程高清视频会诊
  6. 【数据库】彻底理解外键的作用
  7. Wordpress 的删除和重新安装
  8. 设计兼容不同的屏幕尺寸的Android界面
  9. postgresql11.2修改分区表中复合索引字段长度遇到的BUG
  10. 小米人体感应器触发,随机播放网易云音乐