zoukankan      html  css  js  c++  java
  • AADL的代码生成工具OCARINA的安装和使用教程

    OCARINA是法国ENST开发的AADL自动生成代码工具,能够将AADL模型自动生成POLYORB中间件及其上的C、ADA代码。下面将详细介绍OCARINA的安装和使用方法。

    一、Ocarina源码安装教程

    1.安装ada编译器

    因为ocarina是用Ada开发的,所以需要用Ada的编译器才能运行。在安装GCC的基础上,还需要安装gcc-gnat和GNAT.

    Ocarina支持编译器版本:gcc-gnat 4.4.0以上

                GNAT 2006以上,因此老系统(比如redhat9等)就不适用了

    GNAT目前最新版本见http://libre.adacore.com/libre/

    下载后tar压缩,执行doinstall即可安装。

    而对于gcc-gnat一般还需要依赖包libgnat,在linux盘中可以找到(如果找不到,可以在rpmfind.net网站下载),先用rpm命令安装libgnat后,再安装gcc-gnat,到此编译器安装完成。

    2.Ocarina的安装

    我下载的是ada源码,所以源码安装一般都是先configure,再make,再make install。下面是详细的命令(>是命令提示符,不需要输入):

    >tar -xzvf ocarina-2.0w-suite-src-20120203.tar.gz
    
    >cd ocarina-2.0w
    
    >./configure --enable-debug --prefix=/where/you/want/ocarina/to/install
    
    >make
    
    >make install
    

    3.Ocarina的使用

    #首先配置Ocarina的环境变量

    >export PATH=$PATH:/where/you/intall/ocarina/bin

    #使用Ocarina,将aadl文件转换成代码(必须在aadl文件目录下进行)

    >ocarina -g generator_name -f list_of_aadl_files 
    

     #generator_name是指Ocarina支持的三种中间件,可以是polyorb_hi_ada, polyorb_hi_c或pok-c

    #-f后面可以有多个aadl文件,支持批量生成

    4.Ocarina安装过程中可能出现的问题

    4.1./configure阶段提示找不到ada编译器

    解决方案:在出现的信息中查找,哪个编译器不存在,在rpmfind.net下载对应版本安装

    4.2../configure阶段提示找不到C头文件,即“What is the location of the directory of C header files that match your running kernel?”,这是当前kenel与kernel_devel版本不匹配,这种网上解决方案很多

    二、Ocarina的二进制版本安装

    相比于源码安装,binary版本省略了编译环节,也就省略了下载安装编译器的步骤,只需要解压并进行简单配置即可用。

    >tar -xzvf ocarina-2.0w-suite-20120203.tar.gz
    
    >cd ocarina-2.0w
    
    >./configure --enable-debug --prefix=/where/you/want/ocarina/to/install
    #下面这一步必须在aadl文件目录下进行
    >ocarina -g generator_name -f list_of_aadl_files 
     

     三、除此之外,官网还提供了eclipse版本和其它操作系统下的安装文件,在此省略。

  • 相关阅读:
    修改Tarsphp节点线程数避免请求阻塞
    Docker删除所有容器
    清理mysql数据库binlog日志
    查看centos磁盘情况,查找大文件路径
    winform窗体的生命周期和事件加载顺序是什么?
    数据库自增ID用完了会怎么样?
    MPFIT for python
    Plplot中line width 问题
    剪切Postscript图片中的多余边框
    嵌入式下的深度学习 Sparkfun Edge with TensorFlow(一)Hello World
  • 原文地址:https://www.cnblogs.com/jpcflyer/p/2339448.html
Copyright © 2011-2022 走看看