当前位置:首页 » 编程软件 » 编译软件源码

编译软件源码

发布时间: 2023-09-15 17:38:18

Ⅰ 如何编译安装源码包软件

怎样安装以源码包打包的软件;

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 的用法,请参见:《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目录的安装文档了;里面都告诉我们如何安装;
有时安装文档也会在开发者的主页上有详细的说明,及常见问题的处理等;比如 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目录中,这样不就知道了软件安装在哪里了;也方便卸载;

Ⅱ 什么是源代码编译

零基础的人想要写代码首先需要进行一定的学习,了解一些基础的编程知识,选择适合自己的程序语言,之后通过不断的学习就可以写代码。

从简单的、直接的几行十几行程序开始,比如计算器;到复杂的小工具,比如大数计算器。这个过程中逐渐明白数组、指针、内存布局、函数,了解递归、栈、链表,然后学基本的数据结构。

C语言也好,python也好,得学会把自己的思考用程序实现。举个例子,想制定计划表,安排自己的时间,那这个问题就可以写个程序来实现;想做笔记、管理自己的文件,这也是一个程序。从简单的、直接的几行十几行程序开始,比如计算器;到复杂的小工具,比如大数计算器。

代码组合

源代码作为软件的特殊部分,可能被包含在一个或多个文件中。一个程序不必用同一种格式的源代码书写。例如,一个程序如果有C语言库的支持,那么就可以用C语言;而另一部分为了达到比较高的运行效率,则可以用汇编语言编写。

较为复杂的软件,一 般需要数十种甚至上百种的源代码的参与。为了降低种复杂度,必须引入一种可以描述各个源代码之间联系,并且如 何正确编译的系统。在这样的背景下,修订控制系统(RCS)诞生了,并成为研发者对代码修订的必备工具之一。

Ⅲ EXE文件反编译成源码

EXE文件可以通过步骤来反编译成源码,具体步骤如下:

1、在网络上搜索下载反编译工具ILSpy,ILspy是一个开源的.net反编译软件,使用十分方便。解压后如图,双击.exe文件打开解压工具。

(3)编译软件源码扩展阅读:

反编译也称为计算机软件还原工程,是指通过对他人软件的目标程序(比如可执行程序)进行“逆向分析、袭轿前研究”工作,以推导出他人的软件产品所使用的思路、原理、结构、算法、处理过程、运行方帆培法等设计要素,某些特拍清定情况下可能推导出源代码。

exe是编译好的程序文件 要看结构就得反编译 但是通常不能把可执行文件变成高级语言源代码,只能转换成汇编程序。 所以要要看结构不止要会反编译 还得精通汇编语言。

Ⅳ 自己可以编译安卓源码吗

用最新的Ubuntu 16.04,请首先确保自己已经安装了Git.没安装的同学可以通过以下命令进行安装:

sudo apt-get install git git config –global user.email “[email protected]” git config –global user.name “test”

其中[email protected]为你自己的邮箱.

简要说明

android源码编译的四个流程:1.源码下载;2.构建编译环境;3.编译源码;4运行.下文也将按照该流程讲述.

源码下载

由于某墙的原因,这里我们采用国内的镜像源进行下载.
目前,可用的镜像源一般是科大和清华的,具体使用差不多,这里我选择清华大学镜像进行说明.(参考:科大源,清华源)

repo工具下载及安装

通过执行以下命令实现repo工具的下载和安装

mkdir ~/binPATH=~/bin:$PATHcurl https://storage.googleapis.com/git-repo-downloads/repo > ~/bin/repochmod a+x ~/bin/repo

补充说明
这里,我来简单的介绍下repo工具,我们知道AOSP项目由不同的子项目组成,为了方便进行管理,Google采用Git对AOSP项目进行多仓库管理.在聊repo工具之前,我先带你来聊聊多仓库项目:

我们有个非常庞大的项目Pre,该项目由很多个子项目R1,R2,...Rn等组成,为了方便管理和协同开发,我们为每个子项目创立自己的仓库,整个项目的结构如下:


这里写图片描述

执行完该命令后,再使用make命令继续编译.某些情况下,当你执行jack-admin kill-server时可能提示你命令不存在,此时去你去out/host/linux-x86/bin/目录下会发现不存在jack-admin文件.如果我是你,我就会重新repo sync下,然后从头来过.

错误三:使用emulator时,虚拟机停在黑屏界面,点击无任何响应.此时,可能是kerner内核问题,解决方法如下:
执行如下命令:

  • ./out/host/linux-x86/bin/emulator -partition-size 1024 -kernel ./prebuilts/qemu-kernel/arm/kernel-qemu-armv7

  • 通过使用kernel-qemu-armv7内核 解决模拟器等待黑屏问题.而-partition-size 1024 则是解决警告: system partion siez adjusted to match image file (163 MB >66 MB)

    如果你一开始编译的版本是aosp_arm-eng,使用上述命令仍然不能解决等待黑屏问题时,不妨编译aosp_arm64-eng试试.

    结束吧

    到现在为止,你已经了解了整个android编译的流程.除此之外,我也简单的说明android源码的多仓库管理机制.下面,不妨自己动手尝试一下.

    Ⅳ Visual Studio 2019怎么编译C语言源程序

    1、首先,打开C语言编辑器工具,然后在该工具中编写程序的源代码,如下图所示,然后进入下一步。

    Ⅵ 如何在Ubuntu中通过编译源码包安装软件Pidgin

    步骤如下:
    1、首先,通过Ubuntu“菜单->添加/删除”或者是Ubuntu新立得软件包管理程序(通过搜索pidgin卸载已经安装的相关文档)删除老版本的Pidgin.
    2、然后使用下面命令配置相关编译环境:
    sudo
    apt-get
    build-dep
    pidgin
    3、接下来下载源码包并解压,打开终端,通过cd命令进入源码包解压的目录;
    运行./configure配置编译环境,如果成功,最后会有个“complete”并请运行“make”的提示;如果没有,如出现quote
    “XScreenSaver
    extension
    development
    headers
    not
    found.
    Use
    –disable-screensaver
    if
    you
    do
    not
    need
    XScreenSaver
    extension
    support,
    this
    is
    required
    for
    detecting
    idle
    time
    by
    mouse
    and
    keyboard
    usage.

    end
    of
    quote
    说明缺少“XScreenSaver”关联文件,可以通过新立得软件包管理程序搜索“XScreenSaver”安装相关的“XScreenSaver.dev”文件;实在没有XScreenSaver的dev文件,就按提示运行./configure
    --disable-screensaver;
    4、接下来就make;
    5、再
    make
    check;
    6、再
    sudo
    make
    install;
    7、再
    make
    clean;
    8、再
    make
    distclean;
    9、最后
    菜单->互联网->
    Pidgin,即可。

    Ⅶ linux中源码编译需要哪些软件

    一、程序的组成部分
    Linux下程序大都是由以下几部分组成:
    二进制文件:也就是可以运行的程序文件
    库文件:就是通常我们见到的lib目录下的文件
    配置文件:这个不必多说,都知道
    帮助文档:通常是我们在Linux下用man命令查看的命令的文档
    二、Linux下程序的存放目录
    Linux程序的存放目录大致有三个地方:
    /etc,
    /bin,
    /sbin,
    /lib
    :系统启动就需要用到的程序,这些目录不能挂载额外的分区,必须在根文件系统的分区上
    /usr/bin,/usr/sbin,/usr/lib:操作系统核心功能,可以单独分区
    /usr/local/bin,/usr/local/sbin,/usr/local/lib,/usr/local/etc,/usr/local/man:这个用于安装第三方程序,分别对应了二进制文件、库文件、配置文件、帮助文档的目录
    通常来说我们安装程序就安装在
    /usr/local目录下
    三、编译安装源程序
    1、使用如下命令查看当前是否安装了gcc编译器,没有可以先用yum安装gcc
    gcc
    --version
    #查看是否安装gcc
    2、解压源码包,例如:
    tar
    -xvf
    nginx-1.7.7.tar.gz
    #解压源码包
    3、进入解压好的源码包:
    cd
    nginx-1.7.7
    #进入源码包
    4、执行configure文件,此文件有两个功能:1、让用户选定编译特性;2、检查编译环境。configure执行后将生成MakeFile文件。例如:
    ./configure
    --prefix=/usr/local/nginx
    --conf-path=/etc/nginx/nginx.conf
    其中我们通过--prefix制定了安装路径,通过--conf-path制定了配置文件的具体位置。注意:不是所有的程序的configure参数都是一样的
    可以使用
    ./configure
    --help查看详细参数说明。如果该程序所依赖的库在当前系统中没有安装,则会导致configure最后报错,遇到这种情况就需要你先安装依赖库。
    5、执行make命令,编译程序
    make
    6、编译成功后就可以安装了,执行如下命令
    make
    install
    到此程序就算安装完成了,但是不要忘了还有后续的配置哦
    四、配置程序
    1、修改PATH环境变量,以能够识别此程序的二进制文件路径;
    修改/etc/profile文件,在文件中
    添加
    export
    PATH=$PATH:/path/to/somewhere#记得是可执行文件所在的目录,路径中不要包含可执行文件。
    然后执行

    source
    /etc/profile
    #是我们的修改生效

    2、默认情况下,系统搜索库文件的路径/lib,
    /usr/lib;
    要增添额外搜寻路径(注意:有的程序不提供库文件,那就不需要此设置了)
    在/etc/ld.so.conf.d/中创建以.conf为后缀名的文件,而后把要增添的路径直接写至此文件中;然后执行如下命令使其生效
    ldconfig
    3、如果程序提供了库文件,也会相应的提供头文件,一般在安装目录的include目录下,系统默认扫描头文件的路径是:/usr/include。我们可以在/usr/include下用链接连接到我们安装程序的头文件。
    ln
    -s
    /usr/local/nginx/include
    /usr/include/yourname
    4、可能程序还提供了帮助文档,一般是安装目录下的man目录,为了我们可以使用man命令查看我们程序的帮助文档,我们需要:在/etc/man.config中添加一条MANPATH,指向我们的文档目录

    热点内容
    android音乐播放器的实现 发布:2024-11-19 07:12:44 浏览:968
    传奇世界手游打架脚本 发布:2024-11-19 07:05:43 浏览:679
    小白电脑一般什么配置 发布:2024-11-19 06:50:19 浏览:386
    阿里的编程测验 发布:2024-11-19 06:50:10 浏览:43
    数据库优化教程 发布:2024-11-19 06:49:12 浏览:592
    android打开activity 发布:2024-11-19 06:41:36 浏览:78
    sql表的操作 发布:2024-11-19 06:36:27 浏览:138
    安卓手机用什么模拟器 发布:2024-11-19 06:36:27 浏览:859
    es文件夹就 发布:2024-11-19 06:27:13 浏览:541
    鸿蒙系统对比安卓哪个强大 发布:2024-11-19 06:22:22 浏览:178