【封装app源码】【励志墙源码】【视觉算法源码】安装程序制作软件源码_安装程序制作软件源码是什么

时间:2024-12-24 07:18:50 编辑:追书源码 来源:免费BT游戏源码

1.如何制作电脑软件
2.详解如何用源代码安装软件,安装安装以及如何卸载它
3.Linux系统下软件包的程序程序制作方法和过程
4.VB制作安装程序
5.Linux下源码安装的经验详解

安装程序制作软件源码_安装程序制作软件源码是什么

如何制作电脑软件

       åˆ¶ä½œç”µè„‘软件的方法如下:

       1、确定软件需求。

       2、设计软件架构。

       3、编写源代码。

       4、测试软件。

       5、发布软件。

详解如何用源代码安装软件,以及如何卸载它

       详解如何用源代码安装软件,制作制作以及如何卸载它

       Linux发行版的软件软件一大优势在于包管理器和相关软件库,它们能提供自动化下载和安装软件的源码源码方式。然而,安装安装封装app源码对于特定版本或自定义需求,程序程序从源代码安装软件仍是制作制作必要的。这篇文章将指导你完成从Linux系统中使用源代码安装程序,软件软件以及如何卸载这些程序。源码源码

       在开始之前,安装安装首先需要了解包维护者可能无法提供所有可用软件的程序程序编译版本。因此,制作制作当遇到特定版本或自定义需求时,软件软件从源代码编译软件成为了一种常见做法。源码源码对于多数Linux用户来说,初次接触源代码编译可能感觉有些复杂,但一旦掌握,你将能进入更深入的软件定制世界。

       在Linux中从源代码安装软件

       以安装NodeJS 8.1.1为例,本文将详细介绍此过程。NodeJS的源代码可在GitHub上的github.com/nodejs/node找到。

       步骤1:获取源代码

       直接从GitHub下载NodeJS 8.1.1版本的源代码。对于熟悉Git和版本管理的用户,推荐使用Git工具下载源代码。如果你更习惯于图形界面工具,使用ZIP文件同样可行。

       步骤2:理解构建系统

       构建系统负责编译源代码以生成可执行程序。NodeJS使用GNU风格的构建系统,其核心工具是configure和make。configure脚本检查系统配置并确保项目可以构建,而make工具则执行构建指令。

       步骤3:使用文件系统层次化标准(FHS)

       在Linux系统中,大部分遵循FHS标准来组织文件目录。对于从源代码安装的软件,推荐将它们安装在"/opt"目录下,以避免与系统软件包发生冲突,并便于管理。

       遇到错误时如何解决

       在源代码编译过程中,可能出现各种错误。文章将通过实际操作,在Debian 9.0和CentOS 7.0系统上演示如何诊断并解决常见的编译问题。

       如何从源代码中对软件进行修改

       从源代码安装软件后,励志墙源码你可以根据需要对其进行修改。以NodeJS为例,文章将指导你如何在源代码中进行微小的修改,并验证修改是否已纳入编译版本。

       让shell发现我们定制构建的软件

       安装完软件后,通常需要通过绝对路径启动它。但更简单的方法是将软件添加到PATH环境变量中,或创建符号链接到常用路径。

       如何卸载从源代码安装的软件

       卸载从源代码安装的软件只需删除安装目录,如"/opt/node-v8.1.1"。确保在操作前正确清理PATH环境变量,避免可能的依赖问题。

       依赖地狱在哪里?

       编译软件时,可能会遇到依赖地狱的情况,即需要先编译前提条件所需的库,这些库又可能依赖其他不兼容的库。这通常是软件包维护者需要解决的问题。在本文示例中,NodeJS的依赖已预置在源代码中,无需额外处理。

       通过遵循上述步骤,你可以熟练掌握从源代码安装和管理软件的技能。如果你对特定主题或更深入的讨论感兴趣,请在评论区分享,以便共同探讨。

Linux系统下软件包的制作方法和过程

       总的情况下Linux下软件安装主要有三种方式:

       一种是源码安装,需要用户自己手动编译

       另一种是RPM包(RedHat Linux Packet Manager),通过RPM命令就可以实现安装

       还有一种为*.bin文件,安装方法与Windows下的安装过程类似

       通常情况下Linux 安装软件主要通过以下两种方式

       ① 文件名形如xxx.i.rpm ,软件包以二进制形式发布.

       ② 文件名形如xxx.tar.gz ,软件包多以源码的形式发布.

       Linux软件包管理可以分为三类:二进制包的管理,源代码包的管理,脚本安装

       另外值得注意的是目前存在各种Linux的发行版获取和安装软件的方式也有很多例如

       redhat/centos的yum安装(有专门的镜像源)

       Ubuntu/Fedora/Debian的sudo apt-get适用于deb包进行管理安装

       也有的软件是通过刻盘加密的形式然后进行安装的(例如cnyunwei)

       在系统运维管理人员方面也有通过ssh、C/C++语言或者py执行的一些软件命令进行自动化管理的应用,这里就不做详细介绍了。

       下面有一张图可以清晰地表示linux软件应用的架构关系:

           在Linux启动的时候。首先会启动内核(kernel),内核是一段计算机程序,这个程序直接管理管理硬件,包括CPU、内存空间、硬盘接口、网络接口等等。所有的计算机操作都要通过内核传递给硬件。我们可以看到,视觉算法源码Linux利用kernel实现软硬件的对话。通过系统调用的这个重要的接口,Linux将上层的应用与下层的kernel完全分离开,为程序员隐藏了底层的复杂性(相应的,也提高了上层应用的可移植性)。当我们在升级kernel的时候,也可以保持系统调用的语句不变,从而让上层应用不感受到下层的改变。库函数利用系统调用创造出模块化的功能,而shell则提供了一个用户界面,并让我们可以利用shell的语法编写脚本,以整合程序。有了这些思想我们可以快速地了解linux的软件应用的安装和工作原理,也因此为了方便和获取更多企业应用我们需要在linux系统上开发并且通过源码编译的方式制作各种软件包从而为信息化时代服务。

       本文主要介绍源码安装与RPM包的安装

       源码包和商业软件包根据各个公司或作者的实际情况出发(可以是tar等格式的压缩包,也可以是bin的源程序,可以是已经编译好了的直接拿来运行的文件,也可以是光盘虚拟化文件等其他介质来制作发布的iso文件等)封装成一种特定的格式发布从而进行相应的软件服务。其实通过yum或者make install命令安装的软件在系统都会自动生成rpm包(只是参数和功能模块差异和严谨的)

       简介:

       RPM(RedHat Package Manager,红帽子软件包管理器)用于软件包的安装、查询、升级、校验、卸载,以及生成.rpm格式的软件包 RPM的使用前

       挂载linux系统(centos4为例)的安装光盘,当然也可在网上下载免费的RPM包.

       # mount/dev/cdrom ---挂载光盘

       # cd/media/cdrom/CentOS/RPMS ---进入光盘中RPM包的目录(可以通过#mount命令来查看光盘的挂载点一般会在最后一行显示)

       # ls

       一、源码包安装

       1、*.src.rpm形式的源代码软件包

       用法:

       安装: rpm –rebuild *.src.rpm

       cd /usr/src/dist/RPMS

       Rpm –ivh *.rpm

       卸载: rpm –e packagename

       2、.tar.gz,*.tgz,*.bz2形式软件包的安装

       首先进行解压,命令如下

       tar zxvf *.tar.gz

       tar xvfz *.tgz

       tar xvfj *.tar.bz2

       解压之后进入解压目录,然后进行以下操作(一般情况,具体看软件包的文件名)

       配置:./configure

       编译:make

       安装:make install

       卸载:make uninstall

       源码安装有一定的难度,不同的软件可能有不同的安装,一般在解压之后应该先阅读说明文档,按照说明进行安装,上面说的只是一般情况。

       二、RPM包安装

       RPM安装包格式是由Redhat公司提出的,大大的简化了Linux下软件的安装,首先介绍一下通用选项。

       -v:显示附加信息

       -vv:显示调试信息

       --root directory:让RPM以directory作为根目录,这样预安装程序和后安装程序都会安装到这个目录下。

       1、videoview源码分析安装:rpm –i file.rpm

       Options:

       h:安装时输出hash记号

       test:只对安装进行测试,不真正安装

       --persent:以百分比形式显示安装进度

       --excludedocs:不安装软件包中的文档

       --replacepkgs:强制重新安装

       --replacefiles:替换属于其它软件包的文件

       --force:忽略软件包及文档冲突

       --ignorearch:不校验软件包结构

       --ignoreos:不检查软件包运行的操作系统

       --nodeps:不检查依赖性关系

       --noscripts:不运行预安装和后安装脚本程序

       2、删除rpm –e pkgname

       Option:

       --test:只做删除测试,不真正删除

       --noscripts:不运行预安装和后安装脚本程序

       --nodeps:不检查依赖性

       注意:pkgname是软件包的名字,不是rpm包名字,而是安装后软件包的名字,可以用查询命令来查询软件包名。

       3、升级rpm–U(或者—upgrade)file.rpm

       Option:

       基本与安装时的option一样,有几个特殊的:

       --oldpackage:允许一个旧版本

       4、查询rpm –q(或者--query)

       Option:

       -p PACKAGE_FILE:查询软件包的文件

       -f FIEL:查询FILE属于哪个软件包

       -a:查询所有安装的软件包

       -ggroup:查询属于group组的软件包

       --whatproVidesCAPABILITY:查询提供了CAPABILITY功能的软件包

       --whatrequiresCAPABILITY:查询所有需要CAPABILITY功能的软件包

       -i:显示软件包的概要信息

       -l:显示软件包中的文件列表

       -c:显示配置文件列表

       -s:显示文件列表

       -scripts:显示安装、卸载,校验脚本

       --qf:以用户指定的方式查询

       --dump:显示每个文件的校验信息

       --proVides:显示软件包提供的功能

       -R:显示软件包需要的功能

       5、校验已经安装的软件包 rpm –V(or –verify,or –y)

       Option选项与其它命令的类似

       6、校验软件包中的文件 rpm –K(or –checksig) file.rpm

       Option:

       -v:显示版本信息

       -vv:显示调试信息

       --rcfileFILELIST:设置rpmrc 文件为FILELIST

       7、其它RPM选项

       --rebuilddb:重建RPM资料库

       --initdb:创建一个新的RPM资料库

       --quiet:尽可能地减少输出

       --help:显示帮助文件

       --version:显示RPM当前版本

       上面只是对常用选项的总结,具体还有什么问题,可以用man rpm命令进行查看,官方文件永远最好的老师。

       三、*.bin格式安装文件的安装

       只需双击或单击*.bin文件就可以根据提示安装了,不再敷述。

       要想制作一个RPM格式的软件包,需要编写软件包描述文件。其标准命名格式为:软件名-版本号-释出号.spec(现在大多情况下都是直接用:软件名.spec),这个文件,详细描述了有关该软件包的诸多信息,如软件名,版本,类别,说明摘要,创建时要执行什么指令,安装时要执行什么操作,以及软件 包所要包含的文件等等。有了这个文件,RPM就可以制作出相应的包裹文件来。当然现在也有例如Source rpm这样开源的包制作辅助工具只要一个程序源即可通过向导下一步即可制作。

       简单的一个制作例子:

       其实最好的办法是做个软件包。我记得 rpm 和 debian 都有快速打包的开源软件可以直接拿来使用即可。

       eg将nginx的tar包制作为RPM包

       1. 下载nginx的源码包

       2. 将文件放到/usr/src/redhat/SOURCES/目录下

       3. 编写SPEC文件

       [root@mail SPECS]# vinginx-0.8..spec

       Summary:the first rpmpackage

       Name:nginx

       Version:0.8

       Release:

       Vendor:chenwei@corp.the9.com

       License:Share

       Group:Applications/Text

       Source0:nginx-0.8..tar.gz

       %description

       my test nginx

       %prep

       tar -zxvf $RPM_SOURCES_DIR/nginx-0.8..tar.gz

       %build

       cd$RPM_BUILD_DIR/nginx-0.8.

       ./configure

       make

       %install

       cd$RPM_BUILD_DIR/nginx-0.8.

       make install

       %clean

       rm -rf$RPM_BUILD_DIR/nginx-0.8.

       %files

       %defattr(-,root,root)

       /usr/local/nginx/sbin/nginx

       %doc $RPM_BUILD_DIR/nginx-0.8./README

       4. 制作RPM包

       [root@mail SPECS]#rpmbuild -ba nginx-0.8..spec

       若运行没有错误,则产生/usr/src/redhat/RPMS/i/nginx-0.8-.i.rpm和/usr/src/redhat/SRPMS/nginx-0.8-.src.rpm 两个文件。

       总结:rpm包如何制作之个人经验

       一 RPM介绍

       RPM 前是RedHat Package Manager 的缩写,本意是Red Hat 软件包管理,顾名思义是Red Hat 贡献出来的软件包管理;现在应为RPM Package Manager的缩写。在Fedora 、Redhat、Mandriva、SuSE、YellowDog等主流发行版本,以及在这些版本基础上二次开发出来的发行版采用; RPM包中除了包括程序运行时所需要的文件,也有其它的文件;一个RPM 包中的应用程序,有时除了自身所带的ios源码保护附加文件保证其正常以外,还需要其它特定版本文件,这就是软件包的依赖关系。

       RPM可以让用户直接以binary方式安装软件包,并且可替用户查询是否已经安装了有关的库文件;在用RPM删除程序时,它又会聪明地询问用户是否要删除有关的程序。如果使用RPM来升级软件,RPM会保留原先的配置文件,这样用户就不用重新配置新的软件了。RPM保留一个数据库,这个数据库中包含了所有的软件包的资料,通过这个数据库,用户可以进行软件包的查询。RPM虽然是为Linux而设计的,但是它已经移值到SunOS、Solaris、AIX、Irix等其它UNIX系统上了。RPM遵循GPL版权协议,用户可以在符合GPL协议的条件下自由使用及传播RPM。

       二 RPM包分类

       我个人认为rpm分为两大类,

       1 二进制类包,包括rpm安装包(一般分为i和x等几种)和调式信息包等。

       2 源码类包,源码包和开发包应该归位此类。

       它们之间的关系是,最先我们按rpm打包要求改造软件项目源码,当符合要求之后就可以使用rpmbuild命令来生成不同的rpm包,同时生成的包之间版本是直接对应的,比如相同的源码包将生成完全相同的二进制rpm包。当你在网上查找rpm包时,一般你可以在RPMS目录中找到预编译的二进制包,而源码包则会在SRPMS目录内。

       我们这里提到的RPM制作就是指改造软件源代码使之符合RPM打包要求的过程,这也可以等价为RPM源码包的制作过程,因为当你有了源码包就可以直接编译得到二进制安装包和其他任意包。

       三 RPM包制作介绍

       RPM包的制作,即是RPM源码包的制作。

       这里我想说说RPM包工作的原理,这将有助于全面的了解RPM包管理系统的知识。

       RPM是为解决源码包不易安装(需要编译)和软件包相互之间依赖(是RPM包管理器可以一定程度解决依赖问题)问题,它通过在探测源码包在build和install阶段的动作获得最终生成的需要安装的系统里的文件,并记录下一些必要的操作(比如安装完成后执行某项操作),然后把此组成为一个整体,当在用户安装此包时把前面获得的所有问题和记录的所有操作原原本本的作用的实际系统上。

       为一个普通的源码打RPM包,需要下面一些操作,首先需要对项目的Makefile作必要的改造以支持RPM打包操作(实际上此操作不是绝对的,SPEC文档和Makefile的是协调统一工作的,只要他们之间配合好了其他都无所谓,我们一般只是推荐大家尽量按行业标准规范操作而已);其次是针对当前项目撰写SPEC文档,SPEC文档包括了RPM打包过程的操作内容和新生成的RPM包的基本信息等,它的作用对象是打包程序rpmbuild。

       四 RPM包制作过程

       1 准备打包环境

       fedora系统下使用如下命令安装rpmbuild

       #yum install rpmbuild

       rpmbuild的工作目录如下,

       ~/rpmbuild

       ~/rpmbuild/SOURCES

       ~/rpmbuild/SPECS

       ~/rpmbuild/BUILD

       ~/rpmbuild/RPMS

       ~/rpmbuild/RPMS/i

       ~/rpmbuild/SRPMS

       如果你的用户目录主目录下没有类似目录结构,你可以通过一个工具软件来自动配置和生成,如下。

       #yum installrpmdevtools

       下了运行自动配置命令自动生成如上目录,并配置一些必要操作。

       #rpmdev-setuptree

       rpmdev-setuptree命令默认将再当前用户主目录下创建一个RPM构建根目录结构,

       如果需要改变次默认位置,可以修改配置文件:~/.rpmmacros中变量_topdir对应的值即可。

       一般rpmbuild会在当前用户的主目录下自动建立如上目录结构,如果在你对应用户的构建目录中没有自动建立如上目录,你可以通过手动方式建立。上面目录的使用是这样分配的,SOURCES放置打包资源,包括源码打包文件和补丁文件等;SPECS目录放置SPEC文档;BUILD打包过程中的工作目录;RPMS目录存放生成的二进制包,RPM包根据硬件平台不同分类,i表示生成i结构的包将存放在该目录下;SRPMS目录存放生成的源码包。

       2 撰写SPEC文档

       SPEC撰写是打包RPM的核心,也算是最难的一步,好在我们可以从参照一个简单的模板文件开始,在可以实现基本功能的基础上再一步一步的扩充文档内容,直至完全达到要求。下面是一个简单的SPEC文档,其中包括了一些说明信息(注:#后面的内容为说明信息),该SPEC文档是对一个测试的软件项目hellorpm写的,hellorpm软件包编译后仅有一个执行文件、一个手册文件和一个项目说文件。

       hellorpm.spec文档的内容如下:

       -----------------------------------------------------------------------------

       #软件包简要介绍

       Summary: hellorpm is atest program。

       #软件包的名字

       Name: hellorpm

       #软件包的主版本号

       Version:2.2.6

       #软件包的次版本号

       Release: 1

       #源代码包,默认将在上面提到的SOURCES目录中寻找

       Source0:%{ name}-%{ version}.tar.gz

       #授权协议

       License: GPL

       #定义临时构建目录,这个地址将作为临时安装目录在后面引用

       BuildRoot:%{ _tmppath}/%{ name}-%{ version}-%{ release}-root

       #软件分类

       Group:Development/Tools

       #软件包的内容介绍

       %description

       The hellorpm programis a test.

       #表示预操作字段,后面的命令将在源码代码BUILD前执行

       %prep

       #构建BUILD环境,将解压源码压缩包到BUILD目录

       %setup-q

       #BUILD字段,将通过直接调用源码目录中自动构建工具完成源码编译操作

       %build

       #调用源码目录中的configure命令

       ./configure

       #在源码目录中执行自动构建命令make

       make

       #安装字段

       %install

       #调用源码中安装执行脚本

       makeDESTDIR=$RPM_BUILD_ROOT install

       #文件说明字段,声明多余或者缺少都将可能出错

       %files

       #设置文件权限属性

       %defattr(-,root,root)

       #声明/usr/local/bin/hellorpm将出现在软件包中

       /usr/local/bin/hellorpm

       #声明并设置文件属性

       %doc%attr(,root,root) /usr/local/man/man1/hellorpm.1

       #同上,声明文档文件

       %docREADME

       -------------------------------------------------------------------------------

       这个文档需要说明的一点:

       BuildRoot:%{ _tmppath}/%{ name}-%{ version}-%{ release}-root

       上面BuildRoot变量表示的是源码的临时按照目录,rpmbuild就是通过次目录获得将要按照到系统中的所有文件,而在SPEC文档后面make install 命令中的参数DESTDIR=$RPM_BUILD_ROOT即是对该参数的引用,这个参数将传给Makefile文件一告诉自动构建工具应该安装文件那里(实际上我再前文提到过的Makefile需要作一些改造以适应RPM的构建就包括此操作,你的Makefile文件中至少要知道在RPM构建过程中引用此参数的值去控制安装操作的目标)。

       如上一个简单的SPEC文档撰写完成,下面把一个名为hellorpm-2.2.6.tar.gz的源码压缩文件放到

       rpmbuild根目录下的SOURCES目录下(注,确保此归档文件解压后的目录为hellorpm-2.2.6,否则会有问题)。

       到此一个完整的rpm打包环境已经构建完成,下面我们就可以开始构建二进制和源代码RPM包。

       3 构建RPM包

       构建RPM包是有命令rpmbuild在SPEC的指导下完成。

       开始构建操作,首先进入到当前用户的rpmbuild根目录(即上面提到的目录环境)。

       #cd ~/rpmbuild/

       执行如何命令,-ba表示build all,即生成包括二进制包和源代码包的所有RPM包,下来如果正常的话,rpmbuild将正常退出,同时在RPMS目录和SRPMS目录中将生成对应的RPM包。

       #rpmbuild -baSPECS/hellorpm.spec

       这里仅仅介绍了一个最简单软件的最简单的RPM的打包操作过程,诸如带有共享文件的需要进行复杂配置的具有复杂依赖关系的等等的项目的打包以及后期的维护,包括补丁的制作我将在下来的时间完成补充更新,今天时间不早了,该休息了!

       注:费了大半夜的功夫,搞出这么个令人不满意的文档,我思考着,这样做有多少意义呢?不敢重复发明轮子的,站到巨人的肩膀你才能看得更远,是这样吗?是不是下周开始立个计划,每周至少翻译三篇fedora官网的文档给自己练练手。

VB制作安装程序

       Visual Basic 安装程序制作

        安装程序制作是做项目必不可少的一道工序,网上的安装软件很多,可以用五花八门来开形容了~~~~

       åœ¨æ­¤ç¬”者介绍一个最简单的安装方法,就是用VB自带的打包程序进行打包,虽然比较普通,不过内部却有不少窍门,相信这一点知道的人可能不多吧!!(请大家一定看到最后,好戏在后头)好了,不废话了,开始进入正题。

        ①运行打包向导

        ②点击“浏览”按钮,选择要打包的工程。然后单击“打包”按钮(在此只介绍打包,其他的功能不做介绍)。进入下一个页面。

        ③选择要打包的类型,普通的EXE工程选择“标准安装包”就可以了,控件之类的看使用的地点,如果是在网页中使用,请选择“Internet软件包”,然后点击“下一步”按钮。

        ④选择包文件存放的位置(这一点不用多说了吧)

        ⑤向导自动找出了工程中应用的控件、DLL等文件,你需要自己到工程中检查一下,看看所包含的文件是否全,第三方控件所带的文件一定要带上,否则麻烦多多~~~,然后点击下一步。

        ⑥选择打包的文件类型,根据需要,如果你发布是用光盘,则选择单个的压缩文件,如果发布是用软盘之类的,则选择多个压缩文件。(当然,这不是绝对的,用光盘你也可以选择多个压缩文件,不过可能没有人这么干~~~)。然后单击“下一步”。

        ⑦确定安装程序的标题,就是在安装背景上显示的文字。然后单击“下一步”。

        ⑧在这里你可以设置在“开始菜单”中显示哪些项目,比如你可以加卸载程序项,可以选择“新建项”按钮,然后在“目标”栏中输入$(WinPath)\st6unst.exe -n "$(AppPath)\ST6UNST.LOG",包括双引号。在“开始”项目中选择“$(WinPath)”,不包括双引号。然后点击确定。

        ⑨在此你可以更改文件夹的安装位置,然后点击“下一步”。

        ⑩在此你可以将文件设置为共享(即文件可以被多个程序使用)。到此为止安装制作完成。

       å®‰è£…完之后会生成三个文件和一个文件夹:

       SERTUP.LST 安装信息文件

       .CAB文件包是数据文件,安装的文件全部在包里。

       Setup.exe是安装的主文件。

       Support是压缩包中所包含的所有文件。

       è¿™ä¸ªæ–‡ä»¶å¤¹é‡Œæœ‰ä¸€ä¸ªæ¯”较重要的文件就是“执照套打.BAT”这个批处理文件(不同的工程,文件名会不一样),当你的工程改动之后,你可以将工程重新编译一下,然后将执行文件拷贝到此SUPPORT目录下,执行这个批处理文件,就可以重新打包,而不需要每次改动都运行打包向导了。

        还有一个比较重要的文件就是SETUP1.EXE这个文件,他是安装的主文件,安装时我们看到的界面就是这个文件运行产生的。他是用VB写的,源程序在VB的安装目录下:“C:\Program Files\Microsoft Visual Studio\VB\Wizards\PDWizard\Setup1\SETUP1.VBP”,你可以用VB直接来编辑此工程(VB的安装界面太丑了,所以你可以自己改动,改的怎么样就要看你自己的能力了~~~),如果在安装之后想在桌面上加上程序的快捷方式,可以编译此工程,打开“frmSetup1”窗口,在其代码的第行的位置上加如下代码:

       Dim sProgramsPath As String

       Dim sDesktopPath As String

       sProgramsPath = GetSpecialFolder(sfidPROGRAMS)

       sDesktopPath = GetSpecialFolder(sfidDESKTOP)

       sProgramsPath = sProgramsPath & "\" & gstrAppName & "\" & gstrAppName & ".lnk"

       sDesktopPath = sDesktopPath & "\" & gstrAppName & ".lnk"

       FileCopy sProgramsPath, sDesktopPath

        下面对向导生成的SERTUP.LST(安装信息文件)进行一下介绍。

        这是文件的第一个区的内容,SetupTitle设置的是解压窗口的标题,SetupText设置的是解压窗口的内容。改动之后。

        接下来介绍一下SERTUP.LST文件Setup区的作用。

        改动Color为不同的值,可以改变安装窗口的背景色(默认为蓝色,看都看腻了)。改为之后为绿色(当然还有其他的颜色,你可以自己慢慢试~~~),效果如下图所示(这是我改动之后的VB自带的安装程序的安装界面,大家觉得怎么样,是不是不比其他的一些安装软件的界面逊色):

       å¥½äº†ï¼Œå®‰è£…程序就介绍到这了,当然了,VB的安装程序完全是VB自己做的,到底怎么改以及改动的漂亮与否,就要看你自己的水平与美术功底了,反正安装程序的源码都给你了,你想怎么做都行~~~~~

Linux下源码安装的经验详解

       在linux下安装软件,难免会碰到需要源码安装的,而就是这简简单单的./configure、make、sudo make install三步,却让不少人头疼不已,这里以安装X为例具体介绍下我在安装时的一点小经验,以便共同学习,共同进步!

       首先,我们要做些准备工作,源码安装少不了这几个工具pkg-config、libtool、autoconf和automake(当然,还有更基础的,像zlib、m4等,这里就略过啦),其中,pkg-config是相对比较重要的,它就是向configure程序提供系统信息的程序,如软件的版本、库的版本以及库的路径等信息,这些只是在编译期间使用。你可以打开/usr/lib/pkgconfig下任意一个.pc文件,就会发现类似下面的信息(X的pc文件):

       prefix=/usr

       exec_prefix=${ prefix}

       libdir=${ exec_prefix}/lib

       includedir=${ prefix}/include

       xthreadlib=-lpthread

       Name: X

       Description: X Library

       Version: 1.3.3

       Requires: xproto kbproto

       Requires.private: xcb = 1.1.

       Cflags: -I${ includedir}

       Libs: -L${ libdir} -lX

       Libs.private: -lpthread

       configure就是靠着这些信息来判断软件版本是否符合要求的。接着来看看pkg-config是怎样工作的,缺省情况下,pkg-config首先在usr/lib/pkgconfig/中查找相关包(譬如x)对应的相应的文件(x.pc),若没有找到,它也会到PKG_CONFIG_PATH这个环境变量所指定的路径下去找,若是还没有找到,它就会报错。所以这里就可以得到一些解决configure时提示**库未找到的办法了,先用命令ldconfig -p | grep 库名来分析该库是否安装及其路径,若返回空,则说明该库确实未安装,否则,可以根据该命令的返回结果找到库的安装地点,然后设置其环境变量,命令如下:

       export PKG_CONFIG_PATH=软件位置/lib/pkgconfig:$PKG_CONFIG_PATH,这里有个常识,软件安装后,.pc文件都是在安装目录下的lib/pkgconf中的。这样只会在当前命令窗口有效,当然,你也可以修改home文件夹下的.bashrc文件(带.的文件为隐藏文件,可以用命令vi .bashrc编辑),在文件末尾加上上面那句命令,重新登录即可。其他的几个在linux下也是不可或缺的,libtool为管理library时使用,没装的话错误提示如下:possibly undefined macro:AC_PROG_LIBTOOL。而autoconf和automake可以用于在某些没有configure的文件的源码包安装时使用(pixman就是个典型的例子,安装了二者后直接./autogen.sh就可以安装了)。

       准备工作做好后,就可以安装了,具体全部命令如下:

       tar vxf libX-6.2.1.tar.gz

       cd libX-6.2.1

       mkdir X-build

       cd X-build

       ../configure prefix=/usr/local/XR6

       make

       echo $

       sudo make install

       这里有一些好的安装习惯可以积累一下:1、建立一个临时编译目录,本例中为X-build,这样可以再安装完成后删除该目录,进而可以节省空间,而且保持了源码目录的整洁;2、安装到指定目录,本例中为/usr/local/XR6,最好把几个相关的安装在同一文件夹下,如这里的XR6文件夹,这样便于管理,否则全部默认安装在/usr/local下,很杂乱;3、编译完成后做检查,本例为echo $,表示检查上一条命令的退出状态,程序正常退出返回0,错误退出返回非0,也可以使用make check,主要为了防止make失败后直接install,进而出现了一些莫名其妙的错误。这里还介绍一种更方便快捷的安装方法,用将安装命令连接起来,如../configure prefix=**makesudo make install,这样,只有在前面的命令执行正确的情况下,后面的任务才会执行,多方便!

       除此之外,安装之前可以阅读下源码包中的readme和install等文档,往往有所需软件及其下载地址,还包括一些安装技巧和配置选项。另外,在configure前,先输入configure help,可以查看有哪些选项可以添加。还有几个关系安装成功的东西就是ldconfig了,在安装时如果提示找不到某个库或者在编译时提示找不到**.so文件,就要用到它了,最简单的解决办法就是sudo gedit /etc/ld.so.conf,在文件中加入**.so文件所在路径,再运行一下ldconfig就可以了,但是我对这个东西有阴影,不知道是因为用了虚拟机还是其他的原因,有7、8次我在运行完ldconfig后,Ubuntu就没办法打开任何窗口了,直接关机重启就更是进不去系统了,崩溃之,不知道有没有高手有解决办法。在这里提供一种代替ldconfig的办法,就是export LD_LIBRARY_PATH=*.so文件地址:$LD_LIBRARY_PATH,用它我就舒心多了,也就是麻烦点,哥忍了,总比系统崩溃强多了吧,呵呵!其实,在configure时碰到问题,你应该庆幸,因为你可以根据它很明显的提示找到缺失的东西装上,在配置下pkgconfig和ldconfig基本上就可以搞定了,但是make的时候就没那么简单了。

       编译时提示最多的就是**东西未找到了,要么是库文件,要么是头文件,库文件用上面的ldconfig基本上就可以搞定,头文件的话需要配置包含的路径,和库的类似,命令如下:

       export LD_INCLUDE_PATH=/usr/local/include:$LD_INCLUDE_PATH

       在这个时候最重要的就是淡定了,循着丫的error往上找,像No such file or directory这样的错误提示肯定就在附近,找到了,include之就可以咯!