常用的鲲鹏应用发布流程

举报
Jack20 发表于 2021/05/25 19:19:37 2021/05/25
【摘要】 应用与发布1、应用应用软件(互联网软件,办公室软件等)系统软件(os,中间件等)2、发布决定发布的内容(特定子版本应用系统,配置文件,帮助文档,安装手册,用户手册等)编写Release note,落实包装等发布相关事宜并实施发布。应用发布流程介绍应用开发按照需求,选择开发语言及开发环境进行开发如在鲲鹏平台使用c语言开发一个应用应用打包根据开发语言及需求进行应用程序的打包如c语言一般使用rpm...

应用与发布

1、应用

  • 应用软件(互联网软件,办公室软件等)
  • 系统软件(os,中间件等)

2、发布

决定发布的内容(特定子版本应用系统,配置文件,帮助文档,安装手册,用户手册等)编写Release note,落实包装等发布相关事宜并实施发布。


应用发布流程介绍

应用开发

  • 按照需求,选择开发语言及开发环境进行开发
  • 如在鲲鹏平台使用c语言开发一个应用

应用打包

  • 根据开发语言及需求进行应用程序的打包
  • 如c语言一般使用rpm打包、JAVA使用jar命令打包等。

配套文档编写

  • 应用发布前对配套文档的制作,如版本说明、使用说明、功能说明等

应用发布

  • 选择合适的途径和平台进行发


注:

  1. 我们知道编程语言分为编译型语言和解释型语言,C/C++、Go语言就是典型的编译型语言。编译型语言开发的程序从x86平台迁移到鲲鹏处理器上,需要进行重新编译。下面重点对C/C++这种编译型语言进行讲解,首先以一个简单例子来看下从源码到可执行程序的过程。
  2. 一份C/C++源码首先会经过编译器的预处理生成预编译文件,这一步主要处理以#开始的预编译指令,包括一些定义的编译宏等;接着由编译器对预编译文件进一步处理生成汇编代码,汇编代码由一些列汇编指令组成,这些汇编指令依赖机器属性生成;汇编代码在汇编器的编译下进一步翻译成机器可以执行的机器指令--目标文件;最后一步是进行链接操作,由于示例比较简单,并不涉及到一些自定义的外部依赖库( .so或.a),链接操作只是链接了默认的一些系统库生成了最终的可执行程序test.
  3. Java/python等属于解释型语言拥有良好的跨平台性。除了平台上调用so库以外,so库强依赖平台性。
  4. 虚拟机屏蔽了差异
  5. 开发语言的不同导致拥有自己的一套打包工具。
  6. 对于打包rpm的内容上来讲,原则上对编译型语言以及解释型语言都可以打包成rpm包。
  7. 对于实际的生产环境当中,rpm打包对于编译型语言上使用,是一种古老的打包方式。
  8. 对于解释型语言,可以打成rpm包,但有自己打包的规则,在实践的生产过程中更为通用。


主流开发语言常用应用打包工具和方法

一、c语言

  1. 工具: rpmbulid
  2. 方法:使用rpmbulid命令把编写好SPEC文件进行构建打包
  3. 输出: rpm包

二、JAVA

  1. 工具: Maven工具,Jar命令
  2. 方法:配置pom.xml文件,使用mvn package打包。
  3. 输出: jar文件

三、 Python

  1. 工具:原生库distutils,扩展库setuptools等。
  2. 方法:使用库编写打包脚本,使用命令打包。
  3. 输出: tar.gz文件

应用发布的三种途径

1、私有仓库

  • 公司自建私有仓库,发布镜像到公司的仓库中。

2、开源社区

  • 开源社区,发布帖子文档和说明发布包的使用。鲲鹏有自己强大的社区可以发布帖子以及文档发布包使用说明等。

3、开源组织

  • 开源组织,维持镜像仓库需要发布自己镜像,需管理员同意后发布。对于鲲鹏开源组织的仓库暂时还处于优化当中。
【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。