一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

Linux环境下基于图形界面的应用程序安装方法及系统与流程

2022-02-22 19:41:30 来源:中国专利 TAG:

linux环境下基于图形界面的应用程序安装方法及系统
技术领域
1.本公开属于计算机技术领域,尤其涉及一种linux环境下基于图形界面的应用程序安装方法及系统。


背景技术:

2.本部分的陈述仅仅是提供了与本公开相关的背景技术信息,不必然构成在先技术。
3.发明人发现,linux系统中官方应用程序通常从软件仓库中联网安装,而对于自己编写的应用程序一般打包为一个tar包,或者封装为系统采用的软件包格式,如deb、rpm,之后采用命令行安装,而命令行操作对用户的专业知识要求较高,对于普通用户来说无法进行操作;同时,利用命令行实现软件安装时,仅仅是解包软件包并放置到指定目录下,缺少与用户的交互,安装逻辑单一,不便于定制安装(如指定软件安装的目标目录以及是否创建桌面图标等)。


技术实现要素:

4.本公开为了解决上述问题,提供了一种linux环境下基于图形界面的应用程序安装方法及系统,所述方案通过构建图形界面安装程序并绑定待安装的应用数据,实现一些自定义或开源应用程序的图形界面安装,贴近用户的使用习惯,降低应用软件的安装门槛,通过简单的点击鼠标就能完成应用软件的安装,而无需记忆与输入一串复杂的命令。
5.根据本公开实施例的第一个方面,提供了一种linux环境下基于图形界面的应用程序安装方法,包括:
6.基于图形工具包,构建图形界面安装程序;
7.在待安装的应用数据中添加预先约定的执行命令,并对其进行打包;
8.将打包后的应用数据与图形界面安装程序进行捆绑,并添加数据偏移量,获得完整的安装程序;
9.对所述完整的安装程序进行发布,获得可执行的安装程序;
10.基于可执行的安装程序,实现基于图形界面的应用程序安装。
11.进一步的,所述图形界面安装程序的构建,具体为:
12.基于图形工具包,搭建图形开发环境;
13.调用图形工具包中的库函数进行图形界面安装程序的开发;
14.对图形界面安装程序进行编译,获得编译好的图形界面安装程序。
15.进一步的,所述应用程序安装时,执行如下操作:预先读取可执行的安装程序的最后预设数量的字节,获得应用数据的偏移量;基于所述偏移量从所述可执行的安装程序中剥离应用数据,写入临时文件中并解包。
16.进一步的,所述应用程序安装时,还执行如下操作:基于预先约定的执行命令,进行应用程序的安装,并对图形界面的展示进行处理。
17.根据本公开实施例的第二个方面,提供了一种linux环境下基于图形界面的应用程序安装系统,包括:
18.图形界面安装程序构建模块,其用于基于图形工具包,构建图形界面安装程序;
19.应用数据打包模块,其用于在待安装的应用数据中添加预先约定的执行命令,并对其进行打包;
20.捆绑模块,其用于将打包后的应用数据与图形界面安装程序进行捆绑,并添加数据偏移量,获得完整的安装程序;
21.发布模块,其用于对所述完整的安装程序进行发布,获得可执行的安装程序;
22.安装模块,其用于基于可执行的安装程序,实现基于图形界面的应用程序安装。
23.根据本公开实施例的第三个方面,提供了一种电子设备,包括存储器、处理器及存储在存储器上运行的计算机程序,所述处理器执行所述程序时实现所述的一种linux环境下基于图形界面的应用程序安装方法。
24.根据本公开实施例的第四个方面,提供了一种非暂态计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现所述的一种linux环境下基于图形界面的应用程序安装方法。
25.与现有技术相比,本公开的有益效果是:
26.本公开所述方案提供了一种linux环境下基于图形界面的应用程序安装方法,通过构建图形界面安装程序并绑定待安装的应用数据,实现一些自定义或开源应用程序的图形界面安装,贴近用户的使用习惯,降低应用软件的安装门槛,通过简单的点击鼠标就能完成应用软件的安装,而无需记忆与输入一串复杂的命令。
27.本公开附加方面的优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本公开的实践了解到。
附图说明
28.构成本公开的一部分的说明书附图用来提供对本公开的进一步理解,本公开的示意性实施例及其说明用于解释本公开,并不构成对本公开的不当限定。
29.图1为本公开实施例一中所述的linux环境下基于图形界面的应用程序安装方法流程图;
30.图2为本公开实施例一中所述的完整安装程序的结构示意图;
31.图3为本公开实施例一中所述的图形界面安装程序的界面示例。
具体实施方式
32.下面结合附图与实施例对本公开做进一步说明。
33.应该指出,以下详细说明都是示例性的,旨在对本公开提供进一步的说明。除非另有指明,本文使用的所有技术和科学术语具有与本公开所属技术领域的普通技术人员通常理解的相同含义。
34.需要注意的是,这里所使用的术语仅是为了描述具体实施方式,而非意图限制根据本公开的示例性实施方式。如在这里所使用的,除非上下文另外明确指出,否则单数形式也意图包括复数形式,此外,还应当理解的是,当在本说明书中使用术语“包含”和/或“包
括”时,其指明存在特征、步骤、操作、器件、组件和/或它们的组合。
35.在不冲突的情况下,本公开中的实施例及实施例中的特征可以相互组合。
36.术语解释:
37.图形界面安装程序:即安装程序运行时显示图形界面,与windows系统中的软件安装界面类似,之后通过简单的点击鼠标就能完成应用软件的安装。
38.命令行操作:即打开命令行窗口,输入特定的命令,以完成应用软件的安装,其不显示图形界面。
39.实施例一:
40.本实施例的目的是提供一种linux环境下基于图形界面的应用程序安装方法。
41.如图1所示,一种linux环境下基于图形界面的应用程序安装方法,包括:
42.步骤1:基于图形工具包,构建图形界面安装程序;
43.其中,在构建图形界面安装程序前,需要预先进行开发环境的搭建,即安装gtk(gimp toolkit)图形库,具体执行如下命令:
44.sudo apt install gcc libgtk2.0

dev
45.上述命令的含义为安装libgtk2.0到当前系统中。
46.本实施例选择gtk2.0版本,具体版本可根据实际需求进行设定,所述gtk图形库中包含各种用于图形界面设计的库函数,通过对库函数的调用来实现图形界面安装程序的构建。
47.作为进一步的限定,所述图形界面安装程序的构建,具体为:
48.基于图形工具包,搭建图形开发环境;
49.调用图形工具包中的库函数进行图形界面安装程序的开发;
50.对图形界面安装程序进行编译,获得编译好的图形界面安装程序。
51.其中,所述编译过程采用如下命令行:
52.cc-o install_gui install_gui.c`pkg-config
‑‑
cflags
‑‑
libs gtk -2.0`
53.上述命令行的含义为:将构建的图形界面安装程序的“.c”文件编译为目标文件install_gui。
54.步骤2:在待安装的应用数据中添加预先约定的执行命令,并对其进行打包;
55.其中,所述打包过程采用tar命令,具体执行:
56.tar zcf data.tar.gz appdir
57.上述命令行的含义为将目录“appdir”下的应用数据文件打包成tar包,即data.tar.gz。
58.作为进一步的限定,所述在待安装的应用数据中添加预先约定的执行命令,本实施例中采用install.sh。
59.步骤3:将打包后的应用数据与图形界面安装程序进行捆绑,并添加数据偏移量,获得完整的安装程序;如图2展示了完整安装程序的结构。
60.其中,所述捆绑过程采用如下命令行:
61.cat data.tar.gz》》install_gui
62.上述命令行的含义为,将应用数据tar包连接到目标文件install_gui之后。
63.作为进一步的限定,所述添加数据偏移量采用如下命令行:
64.printf"%010d"${execlen}》》install_gui
65.上述命令行的具体含义为,在捆绑应用数据后的install_gui文件的尾部添加10字节表示的图形界面安装程序的文件大小数值;
66.其中,execlen=$(wc-c install_gui|awk'{print$1}'),即execlen表示图形界面安装程序的文件大小。
67.步骤4:对所述完整的安装程序进行发布,获得可执行的安装程序;
68.步骤5:基于可执行的安装程序,实现基于图形界面的应用程序安装。
69.其中,所述应用程序安装时,执行如下操作:预先读取可执行的安装程序的最后预设数量的字节,获得应用数据的偏移量(即execlen的值);基于所述偏移量从所述可执行的安装程序中剥离应用数据,写入临时文件中并解包;以及基于预先约定的执行命令,进行应用程序的安装,并对图形界面的展示进行处理。
70.具体的,所述基于所述偏移量从所述可执行的安装程序中剥离应用数据,写入临时文件中并解包,具体为:
71.获取可执行的安装程序文件的完整大小,记为la;
72.打开程序文件,移动文件指针至文件末尾之前的10个字节,读入偏移量大小(即execlen的值),记为lo;
73.计算应用数据的长度,l=la-10-lo
74.移动文件指针至lo表示的位置,分配l长度的缓存,读入l长度的文件数据,关闭程序文件;
75.打开一个临时文件,将上个步骤中的缓存数据写入临时文件,并关闭临时文件;
76.此时临时文件的内容就是干净的应用数据,图形界面安装程序调用tar命令对应用数据解包,并调用执行解包后的install.sh命令完成实际的安装操作;
77.图形界面安装程序捕获install.sh命令执行过程中的输出信息,实时显示在图形界面上,让用户对安装过程有一个直观的印象;
78.图形界面安装程序与捆绑的应用数据事先约定格式:应用数据包含install.sh命令文件,与其它所需文件一起用tar命令打包为一个完整的文件;
79.符合上述约定的应用数据都可以捆绑在图形界面安装程序上,更换应用数据可以不用修改图形界面安装程序;同时,所述图形界面安装程序可根据实际需求进行定制化设计(如图3所示为本实施例中设计的图形界面安装程序的界面示例),使应用数据能够根据用户需求进行定制化安装。
80.实施例二:
81.本实施例的目的是提供一种linux环境下基于图形界面的应用程序安装系统。
82.一种linux环境下基于图形界面的应用程序安装方法,包括:
83.图形界面安装程序构建模块,其用于基于图形工具包,构建图形界面安装程序;
84.应用数据打包模块,其用于在待安装的应用数据中添加预先约定的执行命令,并对其进行打包;
85.捆绑模块,其用于将打包后的应用数据与图形界面安装程序进行捆绑,并添加数据偏移量,获得完整的安装程序;
86.发布模块,其用于对所述完整的安装程序进行发布,获得可执行的安装程序;
87.安装模块,其用于基于可执行的安装程序,实现基于图形界面的应用程序安装。
88.在更多实施例中,还提供:
89.一种电子设备,包括存储器和处理器以及存储在存储器上并在处理器上运行的计算机指令,所述计算机指令被处理器运行时,完成实施例一中所述的方法。为了简洁,在此不再赘述。
90.应理解,本实施例中,处理器可以是中央处理单元cpu,处理器还可以是其他通用处理器、数字信号处理器dsp、专用集成电路asic,现成可编程门阵列fpga或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
91.存储器可以包括只读存储器和随机存取存储器,并向处理器提供指令和数据、存储器的一部分还可以包括非易失性随机存储器。例如,存储器还可以存储设备类型的信息。
92.一种计算机可读存储介质,用于存储计算机指令,所述计算机指令被处理器执行时,完成实施例一中所述的方法。
93.实施例一中的方法可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器、闪存、只读存储器、可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器,处理器读取存储器中的信息,结合其硬件完成上述方法的步骤。为避免重复,这里不再详细描述。
94.本领域普通技术人员可以意识到,结合本实施例描述的各示例的单元即算法步骤,能够以电子硬件或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本技术的范围。
95.上述实施例提供的一种linux环境下基于图形界面的应用程序安装方法及系统可以实现,具有广阔的应用前景。
96.以上所述仅为本公开的优选实施例而已,并不用于限制本公开,对于本领域的技术人员来说,本公开可以有各种更改和变化。凡在本公开的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本公开的保护范围之内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献