`
jacob__
  • 浏览: 6306 次
文章分类
社区版块
存档分类
最新评论

Linux 源码包安装

阅读更多


1、源码包的打包格式;

源代码一般以file.tar.gz file.tar.bz2或file.src.rpm 打包;file.tar.gz和file.tar.bz2格式的解包命令如下;

[root@localhost beinan]# tar jxvf file.tar.bz2
[root@localhost beinan]# tar zxvf file.tar.gz


至于file.src.rpm 的用法,请参见:linux .chinaitlab.com/set/39788.html">《file.src.rpm 使用方法的简介》

2、如何编译安装源码包;(大多数)


1)解开软件包查看帮助文档;

我们解开一个包后,进入解压包,一般都能发现README(或reame)和INSTALL( 或install);或doc(或DOC)目录;看名字就知道个差不多;

比如我们下载 一个比较新的fcitx 的软件包,比如是 fcitx-3.2-050827.tar.bz2

我们在解开这个软件包会会发现如下的文件;

 

[root@localhost fcitx]# tar jxvf fcitx-3.2-050827.tar.bz2
[root@localhost fcitx]#cd fcitx
[root@localhost fcitx]# ls
aclocal.m4 config.guess configure debian INSTALL Makefile.in src xpm
AUTHORS config.h.in configure.in depcomp install-sh missing THANKS
autogen.sh config.rpath COPYING doc lib mkinstalldirs TODO
ChangeLog config.sub data fcitx.spec.in Makefile.am README tools

所以我们就可以看fcitx的INSTALL 和doc目录的安装文档了;里面都告诉我们如何安装;

有时安装文档也会在开发者的主页上有详细的说明,及常见问题的处理等;比如 linux .chinaitlab.com/info/38307.html" target=_blank>LumaQQ

2)编译安装软件的条件;

首 先我们在Linux系统中至少得把开发工具安装上,比如 gcc ;perl;python;glibc;gtk;make ;automake 等开发工具或基础包;还要安装一些相应的开发包,一般是文件名包括dev的,比如kernel-devel;还有一些开发库,比如以lib开头的;如果您 在编译软件时,有时提示缺少什么东西之类的,大多少的是这些开发工具和开发库等;从光盘中找出安装就是了;有时光盘没有提供,请用google搜索相应的 软件包,有时可能也会用到源码包编译安装所依赖的包;

有时本来系统中已经安装了所依赖的包,但系统提示找不到应该怎么办?这时需要我们设置一下PKG_CONFIG_PATH的环境变量就行了;

#export PKG_CONFIG_PATH=/usr/lib/pkgconfig

#export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig
然后我们再来运行编译的./configure ;make ;make install ,尝试着来吧;

以java开发的工具开发的程序,要用到 jre或者jdk ;jdk已经包括jre了,所以如果我们只是要求有一个java程序运行的环境,只需要安装jre就行了;安装好jre,配置一下java的环境变量就可以用了。如果是图形界面的程序,点点鼠标就OK了;

用perl 开发的程序,是需要perl环境的,所以必须得把perl的包安装上,python 也同理;

3)编译安装软件的方法;

大多以tar.gz 和tar.bz2打包软件,大多是通过 ./configure ;make ;make install 来安装的;有的软件是直接make;make install ;

我们可以通过./configure --help 来查看配置软件的功能;大多软件是提供./configure 配置软件的功能的;少数的也没有,如果没有的就不用./configure ;直接make;make install 就行了;

./configure 比较重要的一个参数是 --prefix ,用--prefix 参数,我们可以指定软件安装目录;当我们不需要这个软件时,直接删除软件的目录就行了;

比如我们可以指定fcitx 安装到 /opt/fcitx 目录中;

[root@localhost fcitx]#./configure --prefix=/opt/fcitx

如果我们不需要fcitx 时,可以直接删除 /opt/fcitx 目录;

所以我们举这个例子中,fcitx如果定制安装到 /opt/fcitx目录中,完整的安装方法应该是:

[root@localhost fcitx]# tar jxvf fcitx-3.2-050827.tar.bz2
[root@localhost fcitx]#cd fcitx
[root@localhost fcitx]# ./configure --prefix=/opt/fcitx
[root@localhost fcitx]# make
[root@localhost fcitx]# make install

调用fcitx ,应该是

[beinan@localhost ~]#/opt/fcitx/bin/fcitx

如果您想要让fcitx 只要执行fcitx ,就能调用,请配置环境变量,或者在/usr/bin 中做一个fcitx 的链接;

[root@localhost beinan]# ln -s /opt/fcitx/bin/fcitx /usr/bin/fcitx

一般的情况下都有说,但大多软件没有提供源码包的卸载方法;我们可以找到软件的安装点删除。主要看你把它安装在哪了。

设置环境变量PATH,请参见:《在Fedora Core 中,有些常用命令怎么没有?解决办法设置PATH》

所以您的PATH可以设置成这样的;

export PATH=".:/bin:/usr/bin:/usr/local/bin:/usr/sbin:/usr/X11R6/bin:/sbin:/opt/fcitx/bin"

当然这只是举个例子,fcitx 可以进入桌面自动运行的,请参看 http://www.fcitx.org 官方站上的安装说明;举个例子只是让大家好理解一点;

再举一个例子,比如我想安装mlterm ;并指定安装目录为/opt/mlterm中; http://mlterm.sourceforge.net

 

#./configure --prefix=/opt/mlterm
#make
#make install


把源码包安装的软件,都指定安装在 /opt目录中,这样不就知道了软件安装在哪里了;也方便卸载;

3.其它类型软件;


1)基于perl 和python 的程序的安装;

一般情况下,用 #perl file.pl安装;比如:VMware 的Linux版本的安装;

[root@localhost vmware-distrib]# perl vmware-install.pl

基于python 开发,也得用 python file.py 来安装

一般软件包都有README和INSTALL 或者 DOC 文档,看文档安装;

分享到:
评论

相关推荐

    Linux内核源码包的安装及编译

    ### Linux内核源码包的安装及编译 在深入探讨如何进行Linux内核源码包的安装与编译之前,我们先明确几个关键概念: - **Linux内核**:是Linux操作系统的核心部分,负责管理和调度系统资源。 - **源码包**:包含了...

    linux源码包制作

    ### Linux源码包制作详解:从零开始到成品 在Linux环境下,源码包的制作是一项重要的技能,尤其对于开发者和系统管理员来说。通过本文,我们将深入探讨如何从头开始制作一个Linux源码包,以“helloworld”程序为例...

    pps linux源码包

    Linux源码包通常包含了编译源代码、配置文件、依赖关系说明以及安装指南等,它允许用户在本地环境中编译和定制软件,以适应特定的操作系统和硬件配置。PPS Linux源码包也不例外,用户可以通过下载源码,然后进行编译...

    Mysql源码包安装步骤

    MySQL源码包安装步骤是一个复杂的过程,涉及到许多技术细节,对于想要深入了解数据库系统或进行定制化配置的IT专业人员尤其重要。以下将详细介绍这个过程。 首先,安装MySQL源码包前,确保你的操作系统环境满足...

    sdl的linux源码包SDL2-2.0.2

    描述中的“sdl的linux源码包SDL2-2.0.2”进一步确认了这是针对Linux操作系统的SDL2库的特定版本。SDL2是SDL的第二个主要版本,它提供了一些新特性和改进,以适应现代开发需求。 **Linux运维与服务器关联** 在Linux...

    Linux源码编译安装postfix

    在提供的文件中,"Linux源码编译安装postfix.pdf"可能是详细的步骤指南,"教程相关.rar"可能包含其他辅助资料,而"Linux源码编译安装postfix.wmv"可能是视频教程,这些资源都可以进一步帮助理解和操作。请根据具体...

    源码包 linux C的

    标题 "源码包 Linux C的" 暗示了这是一个关于在Linux环境下使用C语言进行编程的源代码包。在Linux系统中,C语言是最基础且广泛使用的编程语言之一,适用于开发系统级软件、库、工具和其他应用程序。下面将详细讨论与...

    linux下socat源码包

    在Linux环境下,编译和安装socat源码包的一般步骤如下: 1. **解压源码**:`tar -zxvf socat-1.7.2.4.tar.gz` 2. **进入源码目录**:`cd socat-1.7.2.4` 3. **配置编译环境**:`./configure` 4. **编译源码**:`...

    Linux 系统top源码包

    `top`源码包的分析可以帮助我们深入了解其内部工作原理,以及如何有效地理解和优化系统的性能。 首先,让我们探讨`top`命令的核心功能。`top`主要关注以下几个方面: 1. **CPU使用率**:CPU使用率分为用户空间...

    mysql源码包安装

    在Linux系统中,MySQL数据库的源码包安装是一项复杂但重要的任务,特别是在需要自定义配置或特定环境的情况下。本文将详细介绍如何在Debian或CentOS系统上通过cmake编译安装MySQL 5.5.x。 首先,确保系统已经安装了...

    linux下源码安装mysql数据库

    - 将MySQL的源码包下载到系统中,然后解压到指定目录(如`/usr/src/`)。 ```bash [root@localhost ~]# cd /usr/src [root@localhost ~]# tar zxvf mysql-5.6.25.tar.gz [root@localhost ~]# cd mysql-5.6.25 ...

    iperf的Linux源码包与windows安装exe程序

    对于Linux源码包,`iperf-2.0.5.tar.gz`通常表示这是一个用tar打包,并通过gzip进行压缩的文件。在Linux系统中,你可以使用`tar -zxvf iperf-2.0.5.tar.gz`命令来解压。解压后,你会得到一个包含源代码的目录,其中...

    Linux如何编译安装源码包软件.pdf

    "Linux如何编译安装源码包软件" 一、什么是源码包软件 源码包软件是指源代码可见的软件包,基于 Linux 和 BSD 系统的软件最常见。源码包软件的特点是源代码可见,用户可以查看和修改软件的源代码。但是,软件的源...

    Linux 中util-linux 工具包的源码

    总而言之,`util-linux`工具包的源码是Linux系统管理和开发的宝贵资源。它不仅提供了大量实用工具的实现,还是学习Linux内核和系统级编程的实践教材。深入研究这些源码,可以提升我们的技能,帮助我们解决复杂问题,...

    linux平台下各种版本的parted、fdisk源码包下载地址及安装方法

    linux平台下各种版本的parted、fdisk源码包下载地址及安装方法链接

    cximage的linux版本源码

    【cximage的Linux版本源码】是一个专门为Linux操作系统编写的图像处理库的源代码包。在编程领域,尤其是在图形用户界面(GUI)开发或者图像处理软件的开发中,图像库扮演着至关重要的角色。`CxImage`是一个流行于...

    linux安装svn源码包以及安装步骤

    本文将详细讲解如何在Linux上安装SVN的源码包,并按照步骤进行配置。 首先,我们需要了解安装的基本流程,它包括下载源码、解压、编译、安装和配置几个步骤。下面,我们一步步来操作。 1. **下载源码** 在这个...

    linux 4.9源码包

    Linux 4.9源码包是2016年底发布的Linux内核版本,它包含了用于构建和理解Linux操作系统核心的全部源代码。这个版本在当时引入了许多改进和新特性,对于开发者来说,深入研究源码有助于理解Linux内核的工作原理,并...

    linux 源码PHP安装依赖包

    安装完依赖后,你可以从PHP官方网站下载最新的源码包,解压并进入目录,然后按照官方文档或README文件的指示进行配置、编译和安装。配置时可以使用`--with`选项指定需要的扩展和模块,例如: ```bash ./configure -...

Global site tag (gtag.js) - Google Analytics