• 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版本和其它操作系统下的安装文件,在此省略。

  • 相关阅读:
    RDA CoreDump 实例
    MQTT协议-MQTT协议简介及协议原理
    Android Framework中的Application Framework层介绍
    Shell 通配符、元字符、转义符*****
    RDA 多屏参流程
    makefile 参数
    Makefile 使用总结
    Oracle 补丁及opatch 工具介绍
    Oracle 块修改跟踪 (Block Change Tracking) 说明
    oracle手动删除数据库
  • 原文地址:https://www.cnblogs.com/jpcflyer/p/2339448.html
Copyright © 2020-2023  润新知