一、前言

  Truetime的安装是为了完成课程相关需求,但在安装过程中遇到一些问题,想到自己之前注册了博客所以打算把这个作为第一篇的内容。请放心这个的安装过程并不困难,可以放心食用。

二、准备

  1. Truetime 2.0    http://www.control.lth.se/research/tools-and-software/truetime/
  2. matlab             (version >= 7.0)
  3. visual studio

注:Visual Studio版本需要使用Matlab支持版本,可以通过(https://ww2.mathworks.cn/support/requirements/previous-releases.html)查看自己的Matlab版本支持的c/c++编译器版本,然后下载安装即可,注意truetime只能用visual studio编译。

比如我的matlab版本是2015b,点击Support Compilers下的对应链接,在pdf中找到"For MEXfile..."的项下有对号的是支持的compiler:

可以看到Matlab2015b支持VS2015-VC2008之间的版本。

三、安装过程

假设Matlab的安装路径为${MATLABPATH} (eg: C:\Program Files\MATLAB\R2015b),如果为了图方便可以把这个作为环境变量

Step1:将TrueTime压缩包解压到matlab安装包下的toolbox文件夹下,即 ${MATLABPATH}\toolbox 中

Step2:添加环境变量TTKERNEL,值为 ${MATLABPATH}\toolbox\truetime-2.0\kernel(注意:如果没有设置环境变量MATLABPATH的话需要用绝对路径)

     如果设置的变量为用户变量则需要重启计算机,如果为系统变量则直接使用

Step3:以管理员方式打开Matlab,将TrueTime添加到Matlab路径中

添加路径:

${MATLABPATH}\toolbox\truetime-2.0\kernel
${MATLABPATH}\toolbox\truetime-2.0\kernel\matlab
${MATLABPATH}\toolbox\truetime-2.0\kernel\matlab\help

保存关闭即可,可以选择添加这三个文件夹,当然图方便也可以直接选择添加并包含子文件夹。

Step4:设置Matlab路径为 ${MATLABPATH}\toolbox\local ,打开 ${MATLABPATH}\toolbox\local\startupsav.m ,在文件头添加并保存:

addpath(getenv('TTKERNEL'))
init_truetime;

(如果无法保存说明没有用管理员模式打开)

Step5:打开 ${MATLABPATH}\toolbox\local\matlabrc.m ,用Save WorkSpace保存为matlab.mat

Step6:将 ${MATLABPATH}\toolbox\truetime\kernel 文件夹下的init_truetime.m文件拷到matlab安装目录下的toolbox下local文件夹中,注意是kernel文件夹下的init_truetime.m,然后在复制的init_truetime.m末尾添加代码

addpath(getenv('TTKERNEL'))

Step7:在matlab命令行输入下面,选择自己的编译器

mex -setup c++

我的结果如下所示,直接点击即可或输入提示命令,显示配置完成即可。

Step8:执行编译脚本开始编译

make_truetime

最终得到Successful证明你成功了,可以直接到第五部分执行例程

如果不那么幸运的话我们会得到这样的结果 Compilation using MEX failed! (Run ''mex -setup C++'' to configure your C++ compiler)

我们可以这样做,首先在matlab命令行输入:

open make_truetime

在脚本中我们用‘%’注释掉异常处理代码try...catch...end,保存后再次执行make_truetime,就会显示运行中出现的真实错误,根据提示处理问题。

四、处理问题

1. 找不到stdin.h,找不到UINT32_C

  将 ${MATLABPATH}\toolbox\truetime-2.0\kernel\include_msc 中的.h文件复制到 ${MATLABPATH}\extern\include,我们打开复制过去的stdint.h,找到INT32_C,然后将它的宏条件注释掉:

2. 找不到make_truetime

  没能把truetime的路径添加到matlab中

3. 路径错误

  环境变量TTKERNEL配置出错

4. 找不到SDK

  没有安装matlab相应版本的visual studio

5. 无法打开XXX.mexw64

  编译过程中出错,可以删除truetime文件夹,然后将新的truetime文件夹放到toolbox中

......其他问题可以留言学习

五、执行例程

设置matlab路径为truetime下的example中选择的例程路径,打开模型文件然后运行测试即可。

六、总结

  本来打算随便写一点,结果发现自己对很多步骤都遗忘了,看来以后做实验之类的还是需要用录屏方法记录,写这种文章可能没什么价值但是如果能够帮到你那是我的荣幸,仅此而已。

  如果有更好的方法或有问题,欢迎留言交流,祝好。

TrueTime的安装、运行例程的更多相关文章

  1. Windows OS上安装运行Apache Kafka教程

    Windows OS上安装运行Apache Kafka教程 下面是分步指南,教你如何在Windows OS上安装运行Apache Zookeeper和Apache Kafka. 简介 本文讲述了如何在 ...

  2. 您的 PHP 似乎没有安装运行 WordPress 所必需的 MySQL 扩展”处理方法

    转自:http://www.xuebuyuan.com/1549022.html 这已经是一个老掉牙的问题了,部分人使用自己的服务器安装WordPress程序之后,会出现“您的 PHP 似乎没有安装运 ...

  3. Android中插件开发篇之----动态加载Activity(免安装运行程序)

    一.前言 又到周末了,时间过的很快,今天我们来看一下Android中插件开发篇的最后一篇文章的内容:动态加载Activity(免安装运行程序),在上一篇文章中说道了,如何动态加载资源(应用换肤原理解析 ...

  4. 用JSON-server模拟REST API(一) 安装运行

    用JSON-server模拟REST API(一) 安装运行 在开发过程中,前后端不论是否分离,接口多半是滞后于页面开发的.所以建立一个REST风格的API接口,给前端页面提供虚拟的数据,是非常有必要 ...

  5. Mac 下安装运行Rocket.chat

    最近花了一周的时间,复习了HTML.CSS.原生JS,并学习了Node.js.CoffeeScript.js.MongoDB,入了下门. 因为准备在Rocket.chat 上做二次开发,所以先下载和安 ...

  6. 在Linux上rpm安装运行Redis 3.0.4

    http://www.rpmfind.net搜索redis,找到redis3.0.4的rpm源选做 wget ftp://fr2.rpmfind.net/linux/remi/enterprise/6 ...

  7. Linux通过docker安装运行酷Q--用QQ骰子君进行跑团

    Linux通过docker安装运行酷Q 文:铁乐与猫 需求:和小伙伴周末进行愉快的TRPG跑团,需要在QQ讨论组上加了qq小号后,将qq小号用酷Q配合投骰的应用变成骰子君. 限制:我个人的云计算服务器 ...

  8. Activity工作流(2)-入门安装运行第一个例子

    转: Activity工作流(2)-入门安装运行第一个例子 置顶 2017年05月24日 15:58:50 li_ch_ch 阅读数:24432   版权声明:本文为博主原创文章,未经博主允许不得转载 ...

  9. Phonegap项目创建 编译 安装 运行

    一.创建 Phonegap项目 1. cd workspace 2.创建phonegap项目 cordova create 目录 识别符 显示名 例如:cordova create hello com ...

随机推荐

  1. vuejs之路由应用之一

    什么是‘路由’,路由相当于一个映射,一个url地址对应一个组件,当url地址A变为url地址B,那么对应地址A的组件就会改变为对应地址B的组件.应用于spa,即:单页应用,url地址改变,它不会跳转页 ...

  2. python3 之 内置函数Zip

    python3 内置函数zip 一.简介: 该函数用于将多个可迭代对象作为参数,依次将对象中对应的元素打包成一个个元组,然后返回由这些元组组成的对象.二.实例1: name = ['张三','李四', ...

  3. 【论文阅读】The Contextual Loss for Image Transformationwith Non-Aligned Data(ECCV2018 oral)

    目录: 相关链接 方法亮点 相关工作 方法细节 实验结果 总结与收获 相关链接 论文:https://arxiv.org/abs/1803.02077 代码:https://github.com/ro ...

  4. scrapy抓取中国新闻网新闻

    目标说明 利用scrapy抓取中新网新闻,关于自然灾害滑坡的全部国内新闻:要求主题为滑坡类新闻,包含灾害造成的经济损失等相关内容,并结合textrank算法,得到每篇新闻的关键词,便于后续文本挖掘分析 ...

  5. centos7安装samba

    samba是一个实现smb协议的开源软件,为局域网内的不同计算机之间提供文件和打印机共享服务. 1.安装yum groupinstall “file-server” -y 2.配置cp /etc/sa ...

  6. Linux权限基础

    Linux权限基础 四种权限大类 基本权限 特殊权限 隐藏权限 file ACL权限 三种基本权限 r(read) 读是基本权限,没有读权限其他的一切操作都会被限制 读 4 w(write) 写 2 ...

  7. Find命令、文件名后缀、Linux和Windows互传文件 使用介绍

    第2周第5次课(3月30日) 课程内容: 2.23/2.24/2.25 find命令2.26 文件名后缀 2.27 Linux和Windows互传文件 find命令 文件查找: 1.which(一般用 ...

  8. PHP的array_walk和array_map函数实现数组值UTF-8转GBK编码

    在PHP中,array_walk() 和 array_map()两个函数都可以实现对数组中每个值的修改,比如本例就是将数组中所有的值,由UTF-8编码转成GBK编码. 当然,除了这两个函数,也可以用 ...

  9. vue中,使用element ui的弹窗与echarts之间的问题

    今天项目中有个需求,就是在页面中点击一个图标,弹出一个抽屉式的弹窗(弹窗是element UI的抽屉),弹窗里边是echarts呈现的数据,当我直接用echarts的时候,报错dom没有获取到: 这就 ...

  10. LVS+Keepalived-DR模式(Apache)

    Environment:4台CentOS机器 两台LVS 两台web服务器 LVS主备的操作,都需要安装ipvsadm和keepalived LVS主机操作 : 1.更改Keepalived的配置文件 ...