一种安装软件的方法和装置与流程

文档序号:15115561发布日期:2018-08-07 19:59阅读:299来源:国知局

本发明涉及计算机领域,尤指一种安装软件的方法和装置。



背景技术:

k-ux是浪潮信息推出的企业级unix操作系统,专门适配于浪潮高端主机k1,具有高性能、高可用性、高兼容性与便捷管理等特性。

目前,用户在使用浪潮高端主机k1,并在k-ux系统通过包括c、c++、objective-c、fortran、java、ada和go语言以及这些语言的库(如libstdc++、libgcj等等)进行程序开发时,需要使用gnu编译器套件(gnucompilercollection,简称gcc)等编译工具重复大量的校验及编译工作。

由于一般需要安装的软件包是从其他操作系统中迁移过来,每一个软件包需要人工手动一个一个打开编译后,再进行安装,然而,当安装的软件包数量较多时,如此一个一个重复工作,效率较低。



技术实现要素:

为了解决上述技术问题,本发明提供了一种安装软件的方法和装置,可以减少重复工作,提高效率。

为了达到本发明目的,第一方面,本发明提供了一种安装软件的方法,包括:

获取多个待安装的软件包信息;

按照预设顺序,依次安装与所述软件包信息匹配的每一个软件包。

第二方面,本发明提供了一种安装软件的装置,包括:

获取模块,用于获取多个待安装的软件包信息;

安装模块,用于按照预设顺序,依次安装与所述软件包信息匹配的每一个软件包。

第三方面,本发明提供了一种安装软件的装置,包括存储器和处理器,存储器用于存储执行指令;处理器调用所述执行指令,用于执行如第一方面实施例所述的安装软件的方法。

第四方面,本发明提供了一种计算机可读存储介质,其上存储有计算机指令,其特征在于,所述指令被处理器执行时实现第一方面实施例所述的方法的步骤。

本发明提供的安装软件的方法和装置,获取多个待安装的软件包信息,按照预设顺序,依次安装与软件包信息匹配的每一个软件包,能够自动批量安装软件,尤其是当需要安装的软件包为几十个或几百个时,可以减少重复工作,提高效率,避免人工手动一个一个打开编译后,再进行安装的缺陷本发明的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点可通过在说明书、权利要求书以及附图中所特别指出的结构来实现和获得。

附图说明

附图用来提供对本发明技术方案的进一步理解,并且构成说明书的一部分,与本申请的实施例一起用于解释本发明的技术方案,并不构成对本发明技术方案的限制。

图1为本发明实施例提供的安装软件的方法的流程图;

图2为本发明实施例一提供的安装软件的装置的结构示意图;

图3为本发明实施例二提供的安装软件的装置的结构示意图。

具体实施方式

为使本发明的目的、技术方案和优点更加清楚明白,下文中将结合附图对本发明的实施例进行详细说明。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互任意组合。

在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行。并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。

本发明是针对k-ux2.x中基于安腾架构的自动校验及通过gnu编译器套件编译软件及库包的方法,用户在使用浪潮高端主机k1,并在k-ux系统进行程序开发时,由于安腾架构的软件包及库包版本较少,需要自行编译。编译工作校验是否存在,版本是否符合要求,且工作重复性较大,本发明通过shell脚本的形式,用户根据提示输入需要安装的软件包或库包名称,实现自动校验并安装;且在安装的软件包为多个时,可以实现自动批量安装。

图1为本发明实施例提供的安装软件的方法的流程图,如图1所示,本发明实施例提供的安装软件的方法,应用于k-ux操作系统,包括:

s101:获取多个待安装的软件包信息。

具体的,在需要安装软件时,本发明实施例可通过以下方式获取待安装的软件包:一种实现方式是:向用户提供安装输入提示界面,用户根据提示输入需要安装的软件包或库包信息;另一种实现方式是:用户向系统发送软件包安装请求,该安装请求中携带有需要安装的软件包或库包信息。本发明实施例主要以需要安装的为软件包为例进行阐述,当需要安装的为库包时,其与软件包的实现原理和实现效果类似,本发明实施例在此不进行限定和赘述。

s102:按照预设顺序,依次安装与软件包信息匹配的每一个软件包。

具体的,当待安装的软件包有多个时,本发明实施例可以按照预设顺序自动批量的完成多个软件包的安装。

其中,预设顺序可以是管理人员根据经验预先设置的,也可以是根据多个软件包的依赖关系预设设置的;也可以是根据用户的软件包输入顺序预先设置的。可选的,当多个待安装的的软件包具有依赖关系时,预设顺序根据多个待安装的软件包的依赖关系而定,可以确保多个软件包的有序安装。比如,有三个待安装的软件包:软件包1、软件包2和软件包3,由于只有先安装了软件包2、软件包1和软件包3才能完成安装,此时,按照软件包2、软件包1和软件包3的顺序依次安装这三个软件包。

本发明实施例中,在安装与软件包信息匹配的每一个软件包之前,需要先调用或查找到与软件包信息匹配的每一个软件包。一种实现方式:本发明实施例可以先调用后安装软件包,具体为先调用或查找到所有的软件包,然后按照预设顺序依次安装每一个软件包;另一种实现方式:本发明实施例可以边调用边安装软件包,具体为按照预设顺序调用并安装对应的软件包。比如,以三个待安装的软件包:软件包1、软件包2和软件包3,预设顺序是软件包2、软件包1和软件包3,采用先调用后安装软件包的实现方式时,先调用到这三个软件包,然后按照软件包2、软件包1和软件包3的顺序依次安装;采用边调用边安装软件包的实现方式时,先调用和安装软件包2,然后再调用和安装软件包1,最后再调用和安装软件包3。

本发明提供的安装软件的方法,获取多个待安装的软件包信息,按照预设顺序,依次安装与软件包信息匹配的每一个软件包,能够自动批量安装软件,尤其是当需要安装的软件包为几十个或几百个时,可以减少重复工作,提高效率,避免人工手动一个一个打开编译后,再进行安装的缺陷。

进一步地,在上述实施例中,待安装的软件包的信息包括以下至少一种(任意一种或者任意组合):待安装的软件包的名称、待安装的软件包的存储路径和待安装的软件包的存储网址;

相应地,依次安装与软件包信息匹配的每一个软件包,包括以下至少一种(任意一种或者任意组合):

第一种:依次安装与待安装的软件包的名称匹配的每一个软件包。

具体的,本发明实施例可以预先存储软件包的名称与软件包存储路径的映射关系,当待安装的软件包的信息包括有待安装的软件包的名称,通过查找该映射关系,确定每一个软件包的调用路径,按照该调用路径调用需要安装的软件包,安装在该存储路径下的软件包。当系统中的服务器联网时,本发明实施例也可以预先存储软件包的名称与软件包存储网址的映射关系,当待安装的软件包的信息包括有待安装的软件包的名称,通过查找该映射关系,确定每一个软件包的存储网址,在该存储网址下调用需要安装的软件包,安装在该存储网址下的软件包。

第二种:依次安装在存储路径下的每一个软件包。

具体的,当安装包存储在光盘或某一固定存储路径下,本发明实施例中可以直接获取该安装包的存储路径,安装在该存储路径下的软件包。

第三种:依次安装在存储网址下的每一个软件包。

具体的,当系统中的服务器联网,或安装包存储在某与网盘时,本发明实施例中可以直接获取该安装包的存储网址,安装在该存储网址下的软件包。

进一步地,在上述实施例中,按照预设顺序,依次安装与软件包信息匹配的每一个软件包,包括:按照预设顺序,依次编译和安装与软件包信息匹配的每一个软件包。

具体的,由于安腾架构的软件包及库包版本较少,需要自行编译。本发明实施例对于与软件包信息匹配的每一个软件包,先进行编译,将编译后的软件包进行安装,可以实现软件包的自动编译。

进一步地,在上述实施例中,通过shell脚本的形式,实现上述任一实施例所述的安装软件的方法,具体实现为:

下述代码可在进入如操作系统root用户时进行操作执行,其中,root用户又被称为超级用户,是操作系统中权限最高的用户。

图2为本发明实施例一提供的安装软件的装置的结构示意图,如图2所示,本发明实施例提供的安装软件的装置,包括:获取模块21和安装模块22。

获取模块21,用于获取多个待安装的软件包信息;

安装模块22,用于按照预设顺序,依次安装与所述软件包信息匹配的每一个软件包。

本发明实施例提供的安装软件的装置用于执行图1所示方法实施例的技术方案,其实现原理和实现效果类似,此处不再赘述。

进一步地,在上述实施例中,预设顺序是根据多个待安装的软件包的依赖关系预先设置的。

进一步地,在上述实施例中,所述待安装的软件包信息包括以下至少一种:待安装的软件包的名称、待安装的软件包的存储路径和待安装的软件包的存储网址;

安装模块22依次安装与所述软件包信息匹配的每一个软件包,包括以下至少一种:

依次安装与待安装的软件包的名称匹配的每一个软件包;

依次安装在所述存储路径下的每一个软件包;

依次安装在所述存储网址下的每一个软件包。

进一步地,在上述实施例中,安装模块22按照预设顺序,依次安装与所述软件包信息匹配的每一个软件包,包括:

按照预设顺序,依次编译和安装与所述软件包信息匹配的每一个软件包。

图3为本发明实施例二提供的安装软件的装置的结构示意图,如图3所示,本发明实施例提供的安装软件的装置,包括:存储器31和处理器32。

存储器31用于存储执行指令,处理器32可以是一个中央处理器(centralprocessingunit,简称cpu),或者是特定集成电路(applicationspecificintegratedcircuit,简称asic),或者完成实施本发明实施例的一个或多个集成电路。当主控设备运行时,处理器32与存储器31之间通信,处理器32调用执行指令,用于执行以下操作:

获取多个待安装的软件包信息;

按照预设顺序,依次安装与所述软件包信息匹配的每一个软件包。

进一步地,所述预设顺序是根据多个待安装的软件包的依赖关系预先设置的。

进一步地,所述待安装的软件包信息包括以下至少一种:待安装的软件包的名称、待安装的软件包的存储路径和待安装的软件包的存储网址;

处理器32依次安装与所述软件包信息匹配的每一个软件包,包括以下至少一种:

依次安装与待安装的软件包的名称匹配的每一个软件包;

依次安装在所述存储路径下的每一个软件包;

依次安装在所述存储网址下的每一个软件包。

进一步地,处理器32按照预设顺序,依次安装与所述软件包信息匹配的每一个软件包,包括:

按照预设顺序,依次编译和安装与所述软件包信息匹配的每一个软件包。

本发明实施例还提供一种计算机可读存储介质,其上存储有计算机指令,所述指令被处理器执行时实现上述任一实施例所述的安装软件的方法的步骤。

本领域普通技术人员可以理解,上文中所公开方法中的全部或某些步骤、系统、装置中的功能模块/单元可以被实施为软件、固件、硬件及其适当的组合。在硬件实施方式中,在以上描述中提及的功能模块/单元之间的划分不一定对应于物理组件的划分;例如,一个物理组件可以具有多个功能,或者一个功能或步骤可以由若干物理组件合作执行。某些组件或所有组件可以被实施为由处理器,如数字信号处理器或微处理器执行的软件,或者被实施为硬件,或者被实施为集成电路,如专用集成电路。这样的软件可以分布在计算机可读介质上,计算机可读介质可以包括计算机存储介质(或非暂时性介质)和通信介质(或暂时性介质)。如本领域普通技术人员公知的,术语计算机存储介质包括在用于存储信息(诸如计算机可读指令、数据结构、程序模块或其他数据)的任何方法或技术中实施的易失性和非易失性、可移除和不可移除介质。计算机存储介质包括但不限于ram、rom、eeprom、闪存或其他存储器技术、cd-rom、数字多功能盘(dvd)或其他光盘存储、磁盒、磁带、磁盘存储或其他磁存储装置、或者可以用于存储期望的信息并且可以被计算机访问的任何其他的介质。此外,本领域普通技术人员公知的是,通信介质通常包含计算机可读指令、数据结构、程序模块或者诸如载波或其他传输机制之类的调制数据信号中的其他数据,并且可包括任何信息递送介质。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1