一、前言

  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. 阿里云ECS搭建kubernetes1.11

    环境信息 说明 1.使用kubeadm安装集群 虚拟机信息 hostname memory cpu disk role node1.com 4G 2C vda20G vdb20G master nod ...

  2. wordpress小程序安装教程

    推荐服务器特价优惠注册即可购买,1G双核一年只要88,真的是白菜价格,点击下面图片即可进入购买地址. 开源小程序发布一段时间了,很多人最近咨询了关于小程序的教程,实在太忙了,抽空写个基本的安装教程. ...

  3. 基于 HTML5 WebGL + VR 的 3D 机房数据中心可视化

    前言 在 3D 机房数据中心可视化应用中,随着视频监控联网系统的不断普及和发展, 网络摄像机更多的应用于监控系统中,尤其是高清时代的来临,更加快了网络摄像机的发展和应用. 在监控摄像机数量的不断庞大的 ...

  4. 软件测试必须掌握的抓包工具Wireshark,你会了么?

    作为软件测试工程师,大家在工作中肯定经常会用到各种抓包工具来辅助测试,比如浏览器自带的抓包工具-F12,方便又快捷:比如时下特别流行的Fiddler工具,使用各种web和APP测试的各种场景的抓包分析 ...

  5. .NET Core应用框架AA介绍(二)

    AA的开源地址 https://github.com/ChengLab/AAFrameWork AA框架是一个基础应用框架,是建立在众多大家熟知的流行工具之上并与之集成.比如:ASP.NET Core ...

  6. mysql 插入string类型变量时候,需要注意的问题,妈的,害我想了好几个小时!!

    很多人在用php+MySQL做网站往数据库插入数据时发现如下错误: 注册失败!Unknown column '1a' in 'field list' 结果发现用数字提交是没有问题的,其他如char型就 ...

  7. python_网络编程

    网络ISO(国际标准化组织)--->网络体系结构标准(OSI模型)OSI: 网络信息传输比较复杂需要很多功能协同-->将功能分开,降低耦合度,让每个模块完成一定的功能-->将这些模块 ...

  8. ThinkPHP3.2.2实现持久登录(记住我)功能的方法

    实现持久登录,即用户在登录时,勾选了"记住我"之后,无论是否关闭浏览器,只要不退出登录,在指定的时间内始终保持登录状态(缺点是在另一台电脑上登录过后,之前那台电脑就不能继续保持登录 ...

  9. CSRF的原理与防御 | 你想不想来一次CSRF攻击?

    CSRF是Cross Site Request Forgery的缩写,中文翻译过来是跨站请求伪造.这个漏洞往往能给用户带来巨大的损失,CSRF在等保安全检测中,也是一个非常重要的检测项.但是在我们的网 ...

  10. java.lang.ClassNotFoundException: com.demo.search.extractAbstract.service.ExtractAbstractServiceHandler

    在利用 Spring 对 thrift 进行集成时,出现错误: avax.servlet.ServletException: Servlet.init() for servlet search-nlp ...