欢迎来到皮皮网官网

【idea 如何导入源码】【git导入源码】【scalp指标源码】suse gcc源码安装教程

时间:2024-12-23 08:49:06 来源:android 电子导游源码

1.如何在Linux系统中安装应用软件
2.SUSE Linux Enterprise Server 11 SP3安装教程详解
3.如何在已安装的suselinux10.2下 安装g++
4.如何在linux suse中安装Oracle 11g安装准备

suse gcc源码安装教程

如何在Linux系统中安装应用软件

       ã€€ã€€æ–°çš„操作系统装好了,安装一些新的软件那是难免的。但是在Linux中,安装应用软件和Windows下有些不同哦。而且对于Linux初学者来说,安装软件是一件很让人头疼的事情。由于很多Linux应用软件都是以源代码的形式发布的,这就要求用户根据自己系统的实际情况和自身的需要来配置、编译源程序后,才能使用这些软件。  目前流行的软件包有两种比较常见的形式,一种是以 RPM、deb包为代表的智能软件包,另一种是file.tar.gz形式的压缩。本文将讨论file.tar.gz的安装方法以及智能软件包在文本环境和图形环境下的安装方法。  一、源代码安装  应用软件的源代码一般是file.tar.gz或者file.tgz格式,也就是说是以tar来打包,然后用gzip来压缩。  以应用软件xfce-3.8.7.tar.gz为例,先进入软件的当前目录,然后使用gzip解压:#gzip -d xfce-3.8.7.tar.gz(注:-d 代表解压)。然后用tar解包:#tar -xvf xfce-3.8.7.tar。由于tar和gzip经常一起使用,所以tar还提供了一个参数,它可以自动调用gzip来解压,即:# tar -xzvf xfce-3.8.7.tar.gz。  进入解压完成之后新建立的目录,一般的应用软件中都有一个用来配置软件的可执行文件configure,它的参数比较多,而且用法也非常灵活。当然,安装不同的软件参数也不相同,具体有些什么参数,可以用命令:#./configure help取得详细的帮助。例如./configure --prefix=/usr/local/mysql(表示设置软件的安装目录为:/usr/local/mysql)  在运行#./configure [options]配置软件后,它会根据你当前系统、编译、安装相关的信息,生成一个安装配置文件Makefile。Makefile文件通常是用来编译和安装软件的,运行make命令时系统会自动根据Makefile文件中的设置对软件进行编译和安装,如果编译能够顺利通过的话,运行#make install命令来安装。  二、智能包安装  RPM是RedHat Package Manager的缩写,它只能使用在安装了RPM软件的系统中,不过好像目前大多数中文Linux发行版本都支持RPM软件包。  1.用命令管理  #rpm [options] abc.rpm  例如安装python-1.5.2-.i.rpm软件时,可以使用如下命令:#rpm –ivh python-1.5.2-.i.rpm。  如果你想知道RPM软件包中的相关信息,可以使用命令:#rpm ivh python-1.5.2-.i.rpm。  RPM的参数很多,我们就不一一列举,想得到更多有关RPM的参数,可以用命令:#man rpm取得详细的帮助信息。    2.图形界面工具管理  相对命令方式来说,在图形环境下,安装、升级、卸载和查询RPM软件包是一件非常简单轻松的事情,因为Linux提供了几个功能强大的RPM包管理工具。我们推荐使用Linux的图形管理工具来维护RPM软件包,GNOME中的GnoRPM和KDE中的Kpackage就是功能强大的RPM 包管理工具。由于国内用户使用的中文Linux发行版本中最常见的窗口管理器是KDE,下面笔者就以KDE中Kpackage为例,介绍如何使用RPM包管理工具。  点击Start(开始)→System tools(系统工具)→Kpackage,出现Kpackage界面,同时分析Linux系统中的 RPM数据库。它将安装好的RPM包形式的软件按照功能分在Amusements、Application、Development、Document、 Extension、Extentions、Networking、System Environment、User Interface以及X等几个树形目录中,每个目录中有相应的文件图标和名称。要安装或升级软件,只要点击工具栏的相应按钮就会弹出打开文件的对话框,选中要安装的RPM文件,单击OK按钮,如果不缺必要的运行库,就开始安装软件了。

SUSE Linux Enterprise Server SP3安装教程详解

       下载SUSELinux Enterprise Server,码安下载地址:

       最新的装教suse有2个安装盘,第一个为主要安装盘,码安一般下载这个即可第二个里面包含了一些常用软件,装教可选下载,码安下载需要注册;

       下载之后开始安装

       1,装教idea 如何导入源码选择从光盘启动,码安在弹出的装教界面,选择Installation选项开始安装:

       2,码安选择安装语言及键盘布局(这里服务器大多使用英文语言较多,装教中文可能会有一些兼容问题,码安个人用户可以选择中文,装教这个也可以在安装系统之后自行设定,码安影响不大)

       3.是装教否需要检查光盘,如不需要直接next即可:

       第四步不用选择,码安直接下一步。 我们进行的是全新安装

       第五步选择时区为亚洲上海,不使用UTC:

       第六步 选择默认的(物理机安装)

       第七步进入到安装配置选项了..我们先选择Partitioning,之后开始分区

       分区的git导入源码话,一般都会分一个swap,作为交换分区(大多为物理内存的1~1.5倍,不要太多,多的话会使系统变慢,一般设置1G~2G足够,尤其是有几十G上百G内存的情况,这个更不要设置太大)。然后是一个boot分区,这个一般是scalp指标源码作为系统的引导文件,~M足以;还有一个是根分区,系统的其他文件和软件之类都会放到这里,当然,还可以设置var,tmp,home等分区,具体可参见linux分区说明。这里我的硬盘有G,我的tb源码 样板分区为/bootMB,/swap1.5G,剩下全为/根分区

       第八步选择SoftWare钩上c/c++的软件安装(个人建议,一些编译需要,当然也可以在后面安装),之后选择选项卡里的booting,把floppy删掉。然后确定,下一步。。源码下载推荐安装。。

       之后是设置root(超级管理员)密码。。然后下一步下一步。。检测网卡等功能,,,下载一个小文件测试网络连接是否成功,跳过自动更新。。。

       创建一个普通用户。。输上用户名和密码下一步。。

       下面系统会自动检测显卡。。。等着他自动重启好了。。。后面一路都是下一步。。就安装成功了!!

       ​

       之后会重启,进入系统

这里有几点额外补充:

       1.如果之前的安装时候没有勾选安装c++组件的话,系统中安装软件有时候会提示找不到gcc,这里可以手动安装,安装软件已经继承在安装盘中了,方法如下:

       安装GCC(DVD1)也可以直接在软件管理中安装

       zypper in gcc

       2.有时候有的软件编译需要linux的内核源文件,这个默认是不安装的,可以选择手动安装,安装方法安装内核源文件(DVD1)

       zypperin linux-kernel-headers

       zypperinkernel-source

如何在已安装的suselinux.2下 安装g++

       EMAIL:mangohappy@qq.com

       ä½ ç¡®å®šé‡Œé¢æ²¡æœ‰å®‰è£…G++吗

       ç”¨å‘½ä»¤æŸ¥çœ‹æ˜¯å¦å·²ç»å®‰è£…了

       rpm -qa|grep gcc

       æœ‰äººç»™äº†rpm的,我给个deb的,在连接网络的情况下,用root

       apt-get install build-essential

       æˆ–

       g++ *.cpp -o runfile //编译C++程序

       gcc *.c -o runfile //编译C程序

       cygwin本来就自代了gcc编译器.

        命令行模式运行 gcc 1.c编译成功后./a.out执行.

       å®‰è£…g++ 后找不到g++命令

       ä½ å¯èƒ½å›žåˆ° /usr/bin/g++4.1 或者类似的文件 cd /usr/bin/ sudo ln -s g++4.1 g++ 这样就可以找到g++命令了。

       ä½ ç”¨LINUX吗。安装后直接可以在命令行使用。

        gcc简介

        Linux系统下的gcc(GNU C Compiler)是GNU推出的功能强大、性能优越的多平台编译器,是GNU的代表作品之一。gcc是可以在多种硬体平台上编译出可执行程序的超级编译器,其执行效率与一般的编译器相比平均效率要高%~%。

        gcc编译器能将C、C++语言源程序、汇程式化序和目标程序编译、连接成可执行文件,如果没有给出可执行文件的名字,gcc将生成一个名为a.out的文件。在Linux系统中,可执行文件没有统一的后缀,系统从文件的属性来区分可执行文件和不可执行文件。而gcc则通过后缀来区别输入文件的类别,下面我们来介绍gcc所遵循的部分约定规则。

        .c为后缀的文件,C语言源代码文件;

        .a为后缀的文件,是由目标文件构成的档案库文件;

        .C,.cc或.cxx 为后缀的文件,是C++源代码文件;

        .h为后缀的文件,是程序所包含的头文件;

        .i 为后缀的文件,是已经预处理过的C源代码文件;

        .ii为后缀的文件,是已经预处理过的C++源代码文件;

        .m为后缀的文件,是Objective-C源代码文件;

        .o为后缀的文件,是编译后的目标文件;

        .s为后缀的文件,是汇编语言源代码文件;

        .S为后缀的文件,是经过预编译的汇编语言源代码文件。

        gcc的执行过程

        虽然我们称gcc是C语言的编译器,但使用gcc由C语言源代码文件生成可执行文件的过程不仅仅是编译的过程,而是要经历四个相互关联的步骤∶预处理(也称预编译,Preprocessing)、编译(Compilation)、汇编(Assembly)和连接(Linking)。

        命令gcc首先调用cpp进行预处理,在预处理过程中,对源代码文件中的文件包含(include)、预编译语句(如宏定义define等)进行分析。接着调用cc1进行编译,这个阶段根据输入文件生成以.o为后缀的目标文件。汇编过程是针对汇编语言的步骤,调用as进行工作,一般来讲,.S为后缀的汇编语言源代码文件和汇编、.s为后缀的汇编语言文件经过预编译和汇编之后都生成以.o为后缀的目标文件。当所有的目标文件都生成之后,gcc就调用ld来完成最后的关键性工作,这个阶段就是连接。在连接阶段,所有的目标文件被安排在可执行程序中的恰当的位置,同时,该程序所调用到的库函数也从各自所在的档案库中连到合适的地方。

        gcc的基本用法和选项

        在使用gcc编译器的时候,我们必须给出一系列必要的调用参数和文件名称。gcc编译器的调用参数大约有多个,其中多数参数我们可能根本就用不到,这里只介绍其中最基本、最常用的参数。

        gcc最基本的用法是∶gcc [options] [filenames]

        其中options就是编译器所需要的参数,filenames给出相关的文件名称。

        -c,只编译,不连接成为可执行文件,编译器只是由输入的.c等源代码文件生成.o为后缀的目标文件,通常用于编译不包含主程序的子程序文件。

        -o output_filename,确定输出文件的名称为output_filename,同时这个名称不能和源文件同名。如果不给出这个选项,gcc就给出预设的可执行文件a.out。

        -g,产生符号调试工具(GNU的gdb)所必要的符号资讯,要想对源代码进行调试,我们就必须加入这个选项。

        -O,对程序进行优化编译、连接,采用这个选项,整个源代码会在编译、连接过程中进行优化处理,这样产生的可执行文件的执行效率可以提高,但是,编译、连接的速度就相应地要慢一些。

        -O2,比-O更好的优化编译、连接,当然整个编译、连接过程会更慢。

        -Idirname,将dirname所指出的目录加入到程序头文件目录列表中,是在预编译过程中使用的参数。C程序中的头文件包含两种情况∶

        A)#include

        B)#include “myinc.h”

        其中,A类使用尖括号(< >),B类使用双引号(“ ”)。对于A类,预处理程序cpp在系统预设包含文件目录(如/usr/include)中搜寻相应的文件,而对于B类,cpp在当前目录中搜寻头文件,这个选项的作用是告诉cpp,如果在当前目录中没有找到需要的文件,就到指定的dirname目录中去寻找。在程序设计中,如果我们需要的这种包含文件分别分布在不同的目录中,就需要逐个使用-I选项给出搜索路径。

        -Ldirname,将dirname所指出的目录加入到程序函数档案库文件的目录列表中,是在连接过程中使用的参数。在预设状态下,连接程序ld在系统的预设路径中(如/usr/lib)寻找所需要的档案库文件,这个选项告诉连接程序,首先到-L指定的目录中去寻找,然后到系统预设路径中寻找,如果函数库存放在多个目录下,就需要依次使用这个选项,给出相应的存放目录。

        -lname,在连接时,装载名字为“libname.a”的函数库,该函数库位于系统预设的目录或者由-L选项确定的目录下。例如,-lm表示连接名为“libm.a”的数学函数库。

        上面我们简要介绍了gcc编译器最常用的功能和主要参数选项,更为详尽的资料可以参看Linux系统的联机帮助。

        假定我们有一个程序名为test.c的C语言源代码文件,要生成一个可执行文件,最简单的办法就是∶

        gcc test.c

        这时,预编译、编译连接一次完成,生成一个系统预设的名为a.out的可执行文件,对于稍为复杂的情况,比如有多个源代码文件、需要连接档案库或者有其他比较特别的要求,就要给定适当的调用选项参数。再看一个简单的例子。

        整个源代码程序由两个文件testmain.c 和testsub.c组成,程序中使用了系统提供的数学库,同时希望给出的可执行文件为test,这时的编译命令可以是∶

        gcc testmain.c testsub.c □lm □o test

        其中,-lm表示连接系统的数学库libm.a,这个过程可以用图-1框图描述。

       gcc的错误类型及对策

        gcc编译器如果发现源程序中有错误,就无法继续进行,也无法生成最终的可执行文件。为了便于修改,gcc给出错误资讯,我们必须对这些错误资讯逐个进行分析、处理,并修改相应的语言,才能保证源代码的正确编译连接。gcc给出的错误资讯一般可以分为四大类,下面我们分别讨论其产生的原因和对策。

        第一类∶C语法错误

        错误资讯∶文件source.c中第n行有语法错误(syntex errror)。这种类型的错误,一般都是C语言的语法错误,应该仔细检查源代码文件中第n行及该行之前的程序,有时也需要对该文件所包含的头文件进行检查。有些情况下,一个很简单的语法错误,gcc会给出一大堆错误,我们最主要的是要保持清醒的头脑,不要被其吓倒,必要的时候再参考一下C语言的基本教材。

        第二类∶头文件错误

        错误资讯∶找不到头文件head.h(Can not find include file head.h)。这类错误是源代码文件中的包含头文件有问题,可能的原因有头文件名错误、指定的头文件所在目录名错误等,也可能是错误地使用了双引号和尖括号。

        第三类∶档案库错误

        错误资讯∶连接程序找不到所需的函数库,例如∶

        ld: -lm: No such file or directory

        这类错误是与目标文件相连接的函数库有错误,可能的原因是函数库名错误、指定的函数库所在目录名称错误等,检查的方法是使用find命令在可能的目录中寻找相应的函数库名,确定档案库及目录的名称并修改程序中及编译选项中的名称。

        第四类∶未定义符号

        错误资讯∶有未定义的符号(Undefined symbol)。这类错误是在连接过程中出现的,可能有两种原因∶一是使用者自己定义的函数或者全局变量所在源代码文件,没有被编译、连接,或者干脆还没有定义,这需要使用者根据实际情况修改源程序,给出全局变量或者函数的定义体;二是未定义的符号是一个标准的库函数,在源程序中使用了该库函数,而连接过程中还没有给定相应的函数库的名称,或者是该档案库的目录名称有问题,这时需要使用档案库维护命令ar检查我们需要的库函数到底位于哪一个函数库中,确定之后,修改gcc连接选项中的-l和-L项。

        排除编译、连接过程中的错误,应该说这只是程序设计中最简单、最基本的一个步骤,可以说只是开了个头。这个过程中的错误,只是我们在使用C语言描述一个算法中所产生的错误,是比较容易排除的。我们写一个程序,到编译、连接通过为止,应该说刚刚开始,程序在运行过程中所出现的问题,是算法设计有问题,说得更玄点是对问题的认识和理解不够,还需要更加深入地测试、调试和修改。一个程序,稍为复杂的程序,往往要经过多次的编译、连接和测试、修改。下面我们学习的程序维护、调试工具和版本维护就是在程序调试、测试过程中使用的,用来解决调测阶段所出现的问题。

       å¸Œæœ›å¯¹ä½ æœ‰å¸®åŠ©ã€‚

如何在linux suse中安装Oracle g安装准备

       1.Linux环境配置准备环境:Linux:Redhat Enterprise 5.4,DB:Oracle g R2 X,Oracle安装到/home/oralce_目录下。

       é…ç½®è¿‡ç¨‹å¦‚下:(大部分是网上的内容,个人也是按照网上步骤来的)

       1) 检查基本需求(对于牛逼的服务器来说,这个肯定是满足要求的,可以跳过)

       å†…存大小

       grep MemTotal /proc/meminfo

       äº¤æ¢åˆ†åŒºå¤§å°

       grep SwapTotal /proc/meminfo

       å¢žåŠ äº¤æ¢åˆ†åŒº

       åˆ›å»º/home/swap这么一个分区文件。文件的大小是个block,一般情况下1个block为1K,所以这里空间是5G。

       dd if=/dev/zero of=/home/swap bs= count=

       æŽ¥ç€å†æŠŠè¿™ä¸ªåˆ†åŒºå˜æˆswap分区。

       mkswap /home/swap

       ç„¶åŽæŠŠå®ƒåŠ åˆ°fstab里面

       echo "/home/swap swap swap defaults 0 0" >> /etc/fstab

       2) 检查软件需求,没有的yum install安装

       rpm -q binutils compat-libstdc++- elfutils-libelf elfutils-libelf-devel glibc glibc-common glibc-devel gcc- gcc-c++ libaio-devel libaio libgcc libstdc++ libstdc++-devel make sysstat unixODBC unixODBC-devel pdksh

       ï¼ˆè¿™é‡Œå¦‚果出现没有安装的,那么就要把Linux光盘放入,进入Server文件夹,找到对应的RPM包,运行RPM命令来进行安装,如果喜欢图形界面的话,在图像界面也可以通过双击对应的RPM包来安装。需要注意的是在安装libaio-devel unixODBC unixODBC-devel 这3个软件包的时候,除了安装X的包以为,还要安装i的包,不能因为是X的系统,就不装i的包了。 )

copyright © 2016 powered by 皮皮网   sitemap