C、Java、Python对ASN.1的编解码环境配置

前言:

除了python,c和java是通过ASN LAB提供的编译包和运行包进行编码的。
ASN LAB的页面提供了中文,十分友好,就是加载有点慢。
ASN.1 C编译器使用入门:http://www.asnlab.cn/asncc/gettingstarted.html
ASN lab下载:http://www.asnlab.cn/downloads.html#update_site
免费试用License:www.asnlab.cn/freetrial.html?product=asncc
主要来说,先通过Eclipse中的ASN lab提供的插件,进行编译,然后再进行运行(赋值和编码)

一、C语言

操作系统环境:Windows+Ubuntu
软件支持:Eclipse(Windows)+ASNlab插件、gcc(Ubuntu)

1.首先是安装Eclipse

可能遇到的问题:下载速度慢,可能需要FQ(???)

2.安装ASNlab插件
(1)点击Help->Install New Software

(2)新建一个work with

http://www.asnlab.org/updates

(3)选择需要的编译器和SDK

本文需要C和Java的编译器,需要只勾选这两个和下面的SDK

(4)插件的下载(我已经安装完了,会提醒我已经安装)

正常点击install就可以

(5)申请License并设置

首先进行申请www.asnlab.cn/freetrial.html?product=asncc
一次只能申请一个语言的编译器,C和Java需要分别进行申请。
然后是Eclipse设置
设置License步骤:
打开Eclipse,在Windows > Preferences, 复制并粘贴试用License到ASN.1 > > General > Serial Number.

3.ASN编译

如果上述步骤成功完成,就可以新建一个ASN.1的project
参考:http://www.asnlab.cn/asncc/gettingstarted.html
打开Eclipse,在File > New > Project.. > ASN.1 > ASN.1 project

(1)在source文件夹下,新建一个ASN Module

然后复制你需要的ASN文件
例:

RectangleModule DEFINITIONS ::= BEGIN

Rectangle ::= SEQUENCE {

    height  INTEGER,

    width   INTEGER,

    author  OCTET STRING

}

END

定义了两个INTEGER类型,一个 OCTET STRING类型。

(2)编译!

输入ASN之后,进行保存,正常情况会在ASN.1 project下的output文件件下的C和Java文件夹自动进行编译,输出结果。

posted on 2020-04-24 13:43  20175307GSC  阅读(964)  评论(0编辑  收藏  举报

导航