安装标准的arm-linux-gcc开发环境

安装标准的arm-linux-gcc开发环境
安装标准的arm-linux-gcc开发环境

1安装gcc

1:首先进入

https://www.360docs.net/doc/ae852325.html,/files/index.php?path=tools/

下载

arm-elf-gcc-3.2.1-full.tar.bz2

arm-linux-gcc-3.4.3-1.0.1.tar.bz2

两个文件

2:找一虚拟器,linux操作系统的,不需要图形界面,直接进入命令操作行(shell 环境)

注意此虚拟器里面的硬盘空间至少需要2G以上的可用空间

3:将

arm-elf-gcc-3.2.1-full.tar.bz2

arm-linux-gcc-3.4.3-1.0.1.tar.bz2

两个文件FTP到虚拟器里面,然后进行解压,命令行操作如下:

tar xvjf arm-elf-gcc-3.2.1-full.tar.bz2

tar xvjf arm-linux-gcc-3.4.3-1.0.1.tar.bz2

解压完后会在/usr/local目录看到

4:设置搜索路径,命令行操作如下:

PATH=/usr/local/arm/3.4/bin:/usr/local/arm/3.2.1-elf/bin:$PATH

1.安装标准的C开发环境,由于Red Hat Enterprise Linux安装默认是不安装的,所以需要先安装一下(如果已经安装好的话,就可以免去这一步了):

#sudo apt-get install gcc g++ libgcc1 libg++ make gdb

2. 下载arm-linux-gcc-

3.

4.1.tar.bz2到任意的目录下,我把它下载到了我的个人文件夹里 /home/steven

arm-linux-gcc-3.4.1.tar.bz2 的下载地址如下:

https://www.360docs.net/doc/ae852325.html,/download/projects/toolchain/arm-linux-gcc-3.

arm-linux-gcc -c myfpmatch.c

arm-linux-gcc -o myfpmatch myfpmatch.o c_serial.o libx_ut.a -lm -lpthread

/usr/local/arm/3.4/bin-ccache/../lib/gcc/arm-linux-uclibc/3.4.3/../.. /../../arm-linux-uclibc/bin/ld: ERROR: c_serial.o uses hardware FP,

whereas myfpmatch uses software FP

/usr/local/arm/3.4/bin-ccache/../lib/gcc/arm-linux-uclibc/3.4.3/../.. /../../arm-linux-uclibc/bin/ld: failed to merge target specific data of file c_serial.o

collect2: ld returned 1 exit status

make: *** [myfpmatch] Error 1

3. 解压 arm-linux-gcc-3.

4.1.tar.bz2

#tar -jxvf arm-linux-gcc-3.4.1.tar.bz2

解压过程需要一段时间,解压后的文件形成了 usr/local/ 文件夹,进入该文件夹,将arm文件夹拷贝到/usr/local/下(注意这个/usr/local/是在/home/steven/usr/local下)

# cd usr/local/

#cp -rv arm /usr/local/

现在交叉编译程序集都在/usr/local/arm/3.4.1/bin下面了

实际上是将/home/steven/usr/local/ 下的arm目录拷贝到 /usr/local/下

4.修改环境变量,把交叉编译器的路径加入到PATH。

(有三种方法,强烈推荐使用方法一)

方法一:修改/etc/bashrc文件 (linux是 /ect/bash.bashrc) #vim /etc/bashrc

在最后加上:

export PATH=$PATH:/usr/local/arm/3.4.1/bin

export PATH

方法二:修改/etc/profile文件:

# vim /etc/profile

增加路径设置,在末尾添加如下,保存/etc/profile文件:

export PATH=$PATH:/usr/local/arm/3.4.1/bin

方法三:#export PATH=$PATH:/usr/local/arm/3.4.1/bin注:(这只能在当前的终端下才是有效的!)

5.立即使新的环境变量生效,不用重启电脑:

对应方法一:

#source /root/.bashrc ??(#source /etc/bashrc)

对应方法二:

# source /etc/profile

6.检查是否将路径加入到PATH:

# echo $PATH

显示的内容中有/usr/local/arm/bin,说明已经将交叉编译器的路径加入加入加入加入PATH。至此,交叉编译环境安装完成。

(本文地址:https://www.360docs.net/doc/ae852325.html,/s/blog_5a155e330100bqjc.html) 7.测试是否安装成功

# arm-linux-gcc –v

上面的命令会显示arm-linux-gcc信息和版本,这是我显示的信息:

Reading specs from /usr/local/arm/3.4.1/lib/gcc/arm-linux/3.4.1/specs Configured with: /work/crosstool-0.27/build/arm-linux/gcc-3.4.1-glibc-2.3.2/gcc-

3.4.1/configure --target=arm-linux --host=i686-host_pc-linux-gnu --prefix=/usr/local/arm/3.4.1

--with-headers=/usr/local/arm/3.4.1/arm -linux/include --with-local-prefix=/usr/local/arm/3.4.1/arm-linux --disable -nls --enable-threads=posix --enable-symvers=gnu --enable-__cxa_atexit --enable- languages=c,c++ --enable-shared --enable-c99 --enable-long-long Thread model: posix gcc version 3.4.1

8.编译Hello World程序,测试交叉工具链

写下下面的Hello World程序,保存为hello.c

#include

int main()

{

printf("Hello World!\n");

return 0;

}

执行下面的命令:

# arm-linux-gcc -o hello hello.c

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

修改环境变量这一步修改/etc/profile文件

在path中添加arm-linux-gcc路径

if [ "`id -u`" -eq 0 ]; then

PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/

usr/local/arm/3.4.1/bin" else

PATH="/usr/local/bin:/usr/bin:/bin:/usr/games"

fi

再source /etc/profile就可以刷新环境变量其他方式试过好像不行........

2安装FTP服务器

1.准备工作

要运行FTP服务,先要安装FTP服务的服务器软件包.

在RHEL4中,该软件包在 disc 1中,包名为 : vsftpd-2.0.1-5.i386.rpm

在RHEL5中,该软件包在 disc 2中.

rpm -ivh vsftpd-2.0.1-5.i386.rpm //安装该软件包

正确安装软件包后,就可以对FTP服务器的主配置文件进行修改了

2.修改FTP服务器的主配置文件/etc/vsftpd/vsftpd.conf

该配置文件是在安装软件包的时候自动生成的,不要我们手动建立,我们只需要

3.启动vsftpd,运行FTP服务

service vsftpd restart

如果想让FTP服务器在系统启动时就提供服务,则需要修改其在系统级别下的运行状态

chkconfig --list vsftpd //查看在不同系统级别下,vsftpd的运行状态

chkconfig --level 35 vsftpd on //设置vsftpd在3 5 系统级别下自动运行

简单的FTP服务配置就完成了,在FTP配置过程中,FTP的主配置文件中有启用匿名帐户写入权限项,但是无论该项如何设置都不能让匿名登陆帐户有写入权限.

3解决客户端不能FTP到服务器的问题

最近在使用ftp过程中遇到这个问题,输入正确的用户名和密码依然提示500 OOPS: cannot change directory: 无法登陆.

服务器使用是Redhat搭建的vsftp,使用环境是从win7界面登入服务器,在输入用户名密码框无法进去,于是在CMD下登录查看错误信息.

随后远程登录linux服务器上,使用getsebool -a可以查看bool值相关设置信息,这里只需要更改ftp_home_dir 一项即可,(一开始是off)

命令如下:setsebool -P ftp_home_dir 1

将其改成on

再次使用getsebool -a查看发现 ftp_home_dir 显示为ON

重新在cmd下登录,OK 可以看到登录用户名下对应linux 家目录下的文件夹4MAKEFILE的编写

4.1 Makefile简介

什么是makefile?或许很多Winodws的程序员都不知道这个东西,因为那些Windows的IDE都为你做了这个工作,但我觉得要作一个好的和professional的程序员,makefile还是要懂。这就好像现在有这么多的HTML 的编辑器,但如果你想成为一个专业人士,你还是要了解HTML的标识的含义。特别在Unix下的软件编译,你就不能不自己写makefile了,会不会写

makefile,从一个侧面说明了一个人是否具备完成大型工程的能力。

因为,makefile关系到了整个工程的编译规则。一个工程中的源文件不计数,其按类型、功能、模块分别放在若干个目录中,makefile定义了一系列的规则来指定,哪些文件需要先编译,哪些文件需要后编译,哪些文件需要重新编译,甚至于进行更复杂的功能操作,因为makefile就像一个Shell脚本一样,其中也可以执行操作系统的命令。

makefile带来的好处就是——“自动化编译”,一旦写好,只需要一个make 命令,整个工程完全自动编译,极大的提高了软件开发的效率。make是一个命令工具,是一个解释makefile中指令的命令工具,一般来说,大多数的IDE 都有这个命令,比如:Delphi的make,Visual C++的nmake,Linux下GNU 的make。可见,makefile都成为了一种在工程方面的编译方法。

make命令执行时,需要一个 Makefile 文件,以告诉make命令需要怎么样的去编译和链接程序。

首先,我们用一个示例来说明Makefile的书写规则。以便给大家一个感兴认识。这个示例来源于GNU的make使用手册,在这个示例中,我们的工程有8个C文件,和3个头文件,我们要写一个Makefile来告诉make命令如何编译和链接这几个文件。

我们的规则是:

1)如果这个工程没有编译过,那么我们的所有C文件都要编译并被链接。2)如果这个工程的某几个C文件被修改,那么我们只编译被修改的C文件,并链接目标程序。

3)如果这个工程的头文件被改变了,那么我们需要编译引用了这几个头文件的C文件,并链接目标程序。

只要我们的Makefile写得够好,所有的这一切,我们只用一个make命令就可以完成,make命令会自动智能地根据当前的文件修改的情况来确定哪些文件需要重编译,从而自己编译所需要的文件和链接目标程序。

以下各章我们将以实际例子详细介绍各类Makefile文件的书写规则。

4.2 一个简单的一个简单的C语言

Makefile 红色字体为makefile文件本身,黑色字体为解释。

.SUFFIXES:.ec

用伪目标SUFFIXES来让make知道特定的后缀.ec。后缀规则是一个比较老式的定义隐含规则的方法。后缀规则中,如果没有命令,那是毫无意义的。因为他也不会移去内建的隐含规则。而要让make知道一些特定的后缀,我们可以使用伪目标".SUFFIXES"来定义或是删除。

CL=/opt/K/SCO/unixds/5.1.2A/usr/ccs/bin/cc

用变量CL定义命令cc,以便在下面使用。

ECC=esql

用变量ECC定义命令esql,以便在下面使用。

INCLDIR=-I$(HOME)/src/include

用变量INCLDIR定义预编译目录,其中$(HOME)为引用根目录。

LIBDIR=-L$(HOME)/lib -lgrxml -lgrhcomm -lgrpublic –lsocket

为库文件 -lgrxml -lgrhcomm -lgrpublic –lsocket定义一个宏LIBDIR。BINDIR=$(HOME)/bin

用变量BINDIR重定义bin目录。

all: DayCheck Clean

all为伪目标,这个伪目标是所有目标的目标,其功能一般是编译所有的目标。最终生成可执行文件DayCheck,Clean为伪目标,这个伪目标功能是删除所有被make创建的文件。即生成DayCheck以后执行伪目标下的命令。

OBJ= DayCheck.o

将中间目标文件定义为变量OBJ,以便在下面使用此变量。

DayCheck:$(OBJ)

引用变量OBJ作为依赖文件生成可执行目标文件DayCheck。

@$(CL) -o $@ $(OBJ) $(LIBDIR)

利用依赖文件OBJ生成可执行文件的动作。通常make打印出要执行的命令,称之为回显,这和亲自敲命令的现象是一样的。当行之前有’@’字符时,命令不再回显,字符’@’在传递给shell前丢弃。-o为编译优化;"$@"表示所

有的目标的挨个值;从此行中可以看出生成过程中还通过调用宏LIBDIR用到了库文件-lgrxml -lgrhcomm -lgrpublic –lsocket。

@mv $@ $(HOME)/bin

将生成的可执行目标文件移到根目录的bin目录下。

Clean: @rm *.o

伪目标Clean下的动作,即生成DayCheck后将中间目标文件.o都删除。

.ec.o:

后缀规则中所定义的后缀应该是make所认识的,如果一个后缀是make所认识的,那么这个规则就是单后缀规则,而如果两个连在一起的后缀都被make所认识,那就是双后缀规则。例如:".ec"和".o"都是make所知道。因而,如果你定义了一个规则是".ec.o"那么其就是双后缀规则,意义就是".ec"是源文件的后缀,".o"是目标文件的后缀。

@$(ECC) -Aa $(INCLDIR) -c $<

这行就是如何将.ec文件生成.o文件的。"$<"表示了所有依赖目标的挨个值。@rm $*.c

将生成的中间目标文件*.c删除。

.c.o:

后缀规则定义将*.c文件生成.o文件

@$(CL) $(INCLDIR) -c -O $<

这行就是如何将*.c源文件生成.o的。

4.3 一个简单的EC程序程序程序程序Makefile

.SUFFIXES:.ec

用伪目标SUFFIXES来让make知道特定的后缀.ec。

INCL=$(HOME)/src/include

用变量INCL标示头文件目录。

LIBS=$(HOME)/lib

用变量LIBS标示库文件目录。

CL=cc

用变量CL标示cc命令。

EL=esql

用变量EL标示esql命令。

ALL: GrMain CLEAN

最终生成可执行文件GrMain,Clean为伪目标,即生成GrMain以后执行伪目标下的命令。

GrMain: CGrMain.o

由依赖文件CGrMain.o 生成目标文件GrMain。

@$(EL) -o$@ CGrMain.o -L$(LIBS) -lgrxml -lgrpublic –lsocket

通过使用变量EL调用命令esql生成GrMain, 从此行中可以看出生成过程中还通过调用LIBS用到了库文件-lgrxml -lgrhcomm -lgrpublic –lsocket。@mv $@ $(HOME)/bin

将生成的可执行文件GrMain移到根目录下的bin目录里。

CLEAN:

@rm *.o

伪目标ClEAN下的命令,在生成最终的目标文件GrMain后将*.o文件删除。.ec.o:

@$(EL) -c -I$(INCL) $<

@rm $*.c

.c.o:

@$(CL) -c -O -I$(INCL) $<

以上几行在上第二章中已做介绍。

4.4 一个简单的静态库Makefile

INCL=$(HOME)/src/include

用变量INCL标示头文件目录。

LIBS=$(HOME)/lib

用变量LIBS标示库文件目录。

CL=/opt/K/SCO/unixds/5.1.2A/usr/ccs/bin/cc

用变量CL标示cc命令。

ALL: CGrDaemon CLEAN

最终生成可执行文件CGrDaemon,Clean为伪目标,即生成CGrDaemon以后执行伪目标下的命令。

CGrDaemon: CProc_Daemon.o

$(CL) -dy CProc_Daemon.o -o$@ -L$(LIBS) -lsocket -lgrxml -lgrpublic –lsocket

通过链接动态库生成一个可执行目标文件CGrDaemon。

mv $@ $(HOME)/bin

.c.o: @$(CL) -c -O -I$(INCL) $<

CLEAN:

@rm *.o

以上几行在前几章中已有说明。

4.5 一个简单的动态库Makefile

.SUFFIXES:.ec

INCLDIR=-I$(HOME)/src/include

LIBDIR=-L$(HOME)/lib -lgrxml -lgrhcomm -lgrpublic -lsocket

BINDIR=$(HOME)/bin

CL=/opt/K/SCO/unixds/5.1.2A/usr/ccs/bin/cc

以上几行在第二章中已有说明。

INFORMIXC=$(CL) –G

此行为生成动态库的特别行,生成一个不可执行的动态库。

ECC=esql

all: libTrans1021.so Clean

生成的最终动态库。

OBJ = T1021_Proc.o Public.o autochkplc.o billuse.o

定义变量OBJ,后面几个.o文件都在T1021.o中被调用过。libTrans1021.so:$(OBJ)

@$(ECC) -o $@ $(OBJ) $(LIBDIR)

生成动态库的具体动作。

@mv $@ $(HOME)/lib

Clean:

@rm *.o

.ec.o:

@$(ECC) -Aa $(INCLDIR) -c $<

@rm $*.c

.c.o:

@$(CL) $(INCLDIR) -c -O $<

以上几行在前几章中已有相应说明。“伪目标”并不是一个文件,只是一个标签,由于“伪目标”不是文件,所以make无法生成它的依赖关系和决定它是否要执行。我们只有通过显示地指明这个“目标”才能让其生效。当然,“伪目标”的取名不能和文件名重名,不然其就失去了“伪目标”的意义了。这个伪目标是所有目标的目标,其功能一般是编译所有的目标。后缀规则是一个比较老式的定义隐含规则的方法。后缀规则中,如果没有命令,那是毫无意义的。因为他也不会移去内建的隐含规则。而要让make知道一些特定的后缀,我们可以使用伪目标".SUFFIXES"来定义或是删除。

5Vi文本编辑器使用

文本编辑器是所有计算机系统中最常用的一种工具。UNIX下的编辑器有ex,sed

和vi等,其中,使用最为广泛的是vi,而vi命令繁多,论坛里好像这方面的总结不多,以下稍做总结,以资共享!渴望更正和补充!

进入vi的命令

vi filename :打开或新建文件,并将光标置于第一行首

vi +n filename :打开文件,并将光标置于第n行首

vi + filename :打开文件,并将光标置于最后一行首

vi +/pattern filename:打开文件,并将光标置于第一个与pattern匹配的串处

vi -r filename :在上次正用vi编辑时发生系统崩溃,恢复filename

vi filename....filename :打开多个文件,依次进行编辑

移动光标类命令

h :光标左移一个字符

l :光标右移一个字符

space:光标右移一个字符

Backspace:光标左移一个字符

k或Ctrl+p:光标上移一行

j或Ctrl+n :光标下移一行

Enter :光标下移一行

w或W :光标右移一个字至字首

b或B :光标左移一个字至字首

e或E :光标右移一个字至字尾

) :光标移至句尾

( :光标移至句首

}:光标移至段落开头

{:光标移至段落结尾

nG:光标移至第n行首

n+:光标下移n行

n-:光标上移n行

n$:光标移至第n行尾

H :光标移至屏幕顶行

M :光标移至屏幕中间行

L :光标移至屏幕最后行

0:(注意是数字零)光标移至当前行首

$:光标移至当前行尾

屏幕翻滚类命令

Ctrl+u:向文件首翻半屏

Ctrl+d:向文件尾翻半屏

Ctrl+f:向文件尾翻一屏

Ctrl+b:向文件首翻一屏

nz:将第n行滚至屏幕顶部,不指定n时将当前行滚至屏幕顶部。

插入文本类命令

i :在光标前

I :在当前行首

a:光标后

A:在当前行尾

o:在当前行之下新开一行

O:在当前行之上新开一行

r:替换当前字符

R:替换当前字符及其后的字符,直至按ESC键

s:从当前光标位置处开始,以输入的文本替代指定数目的字符S:删除指定数目的行,并以所输入文本代替之

ncw或nCW:修改指定数目的字

nCC:修改指定数目的行

删除命令

ndw或ndW:删除光标处开始及其后的n-1个字

do:删至行首

d$:删至行尾

ndd:删除当前行及其后n-1行

x或X:删除一个字符,x删除光标后的,而X删除光标前的

Ctrl+u:删除输入方式下所输入的文本

搜索及替换命令

/pattern:从光标开始处向文件尾搜索pattern

?pattern:从光标开始处向文件首搜索pattern

n:在同一方向重复上一次搜索命令

N:在反方向上重复上一次搜索命令

:s/p1/p2/g:将当前行中所有p1均用p2替代

:n1,n2s/p1/p2/g:将第n1至n2行中所有p1均用p2替代

:g/p1/s//p2/g:将文件中所有p1均用p2替换

选项设置

all:列出所有选项设置情况

term:设置终端类型

ignorance:在搜索中忽略大小写

list:显示制表位(Ctrl+I)和行尾标志($)

number:显示行号

report:显示由面向行的命令修改过的数目

terse:显示简短的警告信息

warn:在转到别的文件时若没保存当前文件则显示NO write信息nomagic:允许在搜索模式中,使用前面不带“\”的特殊字符nowrapscan:禁止vi在搜索到达文件两端时,又从另一端开始mesg:允许vi显示其他用户用write写到自己终端上的信息

最后行方式命令

:n1,n2 co n3:将n1行到n2行之间的内容拷贝到第n3行下

:n1,n2 m n3:将n1行到n2行之间的内容移至到第n3行下

:n1,n2 d :将n1行到n2行之间的内容删除

:w :保存当前文件

:e filename:打开文件filename进行编辑

:x:保存当前文件并退出

:q:退出vi

:q!:不保存文件并退出vi

:!command:执行shell命令command

:n1,n2 w!command:将文件中n1行至n2行的内容作为command的输入并执行之,若不指定n1,n2,则表示将整个文件内容作为command的输入

:r!command:将命令command的输出结果放到当前行

寄存器操作

"?nyy:将当前行及其下n行的内容保存到寄存器?中,其中?为一个字母,n为一个数字

"?nyw:将当前行及其下n个字保存到寄存器?中,其中?为一个字母,n为一个数字

"?nyl:将当前行及其下n个字符保存到寄存器?中,其中?为一个字母,n为一个数字

"?p:取出寄存器?中的内容并将其放到光标位置处。这里?可以是一个字母,也可以是一个数字

ndd:将当前行及其下共n行文本删除,并将所删内容放到1号删除寄存器中。

VI的使用

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

一、插入文本

┌──┬────────────┐

│命令│描述│

├──┼────────────┤

│i │在当前字符前插入文本│

├──┼────────────┤

│I │在行首插入文本│

├──┼────────────┤

│a │在当前字符后添加文本│

├──┼────────────┤

│A │在行末添加文本│

├──┼────────────┤

│o │在当前行后面插入一空行│

├──┼────────────┤

│O │在当前行前面插入一空行│

├──┼────────────┤

│R │以改写方式输入文本│

└──┴────────────┘

二、移动光标

┌─────┬───────────┐

│命令│描述│

├─────┼───────────┤

│j或下箭头│向下移动一行│├─────┼───────────┤

│k或上箭头│向上移动一行│├─────┼───────────┤

│h或左箭头│左移一个字符│├─────┼───────────┤

│l或右箭头│右移一个字符│├─────┼───────────┤

│w │右移一个词│

├─────┼───────────┤

│W │右移一个以空格分隔的词│

├─────┼───────────┤

│b │左移一个词│

├─────┼───────────┤

│B │左移一个以空格分隔的词│

├─────┼───────────┤

│0 │移到行首│

│Ctrl-F │向前翻页│

├─────┼───────────┤

│Ctrl-B │向后翻页│

├─────┼───────────┤

│nG │到第n行│

├─────┼───────────┤

│G │到最后一行│

└─────┴───────────┘三、替换文本

┌─────┬──────┐

│命令│描述│

├─────┼──────┤

│$ │到行尾│

├─────┼──────┤

│( │到句子的开头│

├─────┼──────┤

│) │到句子的末尾│

├─────┼──────┤

│{ │到段落的开头│

├─────┼──────┤

│} │到段落的末尾│

└─────┴──────┘

四、删除文本

┌───┬───────────┐

│命令│描述│

├───┼───────────┤

│r │替换一个字符│

├───┼───────────┤

│c │修改文本直到按下Esc健│

├───┼───────────┤

│cw │修改下一个词│

├───┼───────────┤

│cnw │修改接下来的n个词│

└───┴───────────┘

五、文本编辑

┌──┬──────────────────────┐

│命寺│描述│

├──┼──────────────────────┤

│yy │将一行文本移到缺省缓冲区中│

├──┼──────────────────────┤

│yn │将下一个词移到缺省缓冲区中│

├──┼──────────────────────┤

│ynw │将后面的n个词移到缺省缓冲区中│

├──┼──────────────────────┤

│p │如果缺省缓冲区中包含一行文本,则在当前│

│ │行后面插入一个空行井将缺省缓冲区中的声│

│ │容粘贴到这一行中;如果缺省缓冲区中包含│

│ │多个词,把这些词粘贴到光标的右边.│

├──┼──────────────────────┤

│P │如果缺省缓冲区中包含一行文本,则正当前│

││行前面插入一个空行井将缺省缓冲区中的内│

│ │容粘贴到这一行中;如果缺省缓冲区中包含│

││多个词,把这些词粘贴到光标的左边│

└──┴──────────────────────┘六、保存退出

┌───────────┬───────────────┐│命令│描述│├───────────┼───────────────┤│zz │保存并退出│├───────────┼───────────────┤│:w filename │写入文件│├───────────┼───────────────┤│:W │写入文件│

├───────────┼───────────────┤

│:x │保存(如果当前文件修改过)并退出│

├───────────┼───────────────┤

│:q! │不保存文件,直接退出│

├───────────┼───────────────┤

│:q │退出vi │

└───────────┴───────────────┘

VI常用技巧

ideal(2002-01-29 11:24)

〖返回〗〖转发〗

VI命令可以说是Unix/Linux世界里最常用的编辑文件的命令了,但是因为它的命令集众多,很多人都不习惯使用它,其实您只需要掌握基本命令,然后加以灵活运用,就会发现它的优势,并会逐渐喜欢使用这种方法。本文旨在介绍VI的一些最常用命令和高级应用技巧。

一、基本命令介绍

---- 1.光标命令

k、j、h、l——上、下、左、右光标移动命令。虽然您可以在Linux中使用键盘右边的4个光标键,但是记住这4个命令还是非常有用的。这4个键正是右手在键盘上放置的基本位置。

nG——跳转命令。n为行数,该命令立即使光标跳到指定行。

Ctrl+G——光标所在位置的行数和列数报告。

w、b——使光标向前或向后跳过一个单词。

---- 2.编辑命令

i、a、r——在光标的前、后以及所在处插入字符命令(i=insert、a=append、r=replace)。

cw、dw——改变(置换)/删除光标所在处的单词的命令 (c=change、d=delete)。x、d$、dd——删除一个字符、删除光标所在处到行尾的所有字符以及删除整行的命令。

---- 3.查找命令

---- /string、?string——从光标所在处向后或向前查找相应的字符串的命令。---- 4.拷贝复制命令

---- yy、p——拷贝一行到剪贴板或取出剪贴板中内容的命令。

二、常见问题及应用技巧

---- 1.在一个新文件中读/etc/passwd中的内容,取出用户名部分。

---- vi file

---- :r /etc/passwd 在打开的文件file中光标所在处读入/etc/passwd

---- :%s/:.*//g 删除/etc/passwd中用户名后面的从冒号开始直到行尾的所有部分。

---- 您也可以在指定的行号后读入文件内容,例如使用命令“:3r /etc/passwd”从新文件的第3行开始读入 /etc/passwd的所有内容。

---- 我们还可以使用以下方法删掉文件中所有的空行及以#开始的注释行。

---- #cat squid.conf.default | grep -v ^$ | grep -v ^#

---- 2.在打开一个文件编辑后才知道登录的用户对该文件没有写的权限,不能存盘,需要将所做修改存入临时文件。

---- vi file

---- :w /tmp/1 保存所做的所有修改,也可以将其中的某一部分修改保存到临时文件,例如仅仅把第20~59行之间的内容存盘成文件/tmp/1,我们可以键入如下命令。

---- vi file

---- :20,59w /tmp/1

---- 3.用VI编辑一个文件,但需要删除大段的内容。

---- 首先利用编辑命令“vi file”打开文件,然后将光标移到需要删除的行处按Ctrl+G显示行号,再到结尾处再按Ctrl+G,显示文件结尾的行号。

---- :23,1045d 假定2次得到的行号为23和1045,则把这期间的内容全删除,也可以在要删除的开始行和结束行中用ma、mb命令标记,然后利用“:a,bd”命令删除。

---- 4.在整个文件的各行或某几行的行首或行尾加一些字符串。

---- vi file

---- :3,$s/^/some string / 在文件的第一行至最后一行的行首插入“some string”。

---- :%s/$/some string/g 在整个文件每一行的行尾添加“some string”。---- :%s/string1/string2/g 在整个文件中替换“string1”成“string2”。---- :3,7s/string1/string2/ 仅替换文件中的第3行到第7行中的“string1”成“string2”。

---- 注意: 其中s为substitute,%表示所有行,g表示global。

---- 5.同时编辑2个文件,拷贝一个文件中的文本并粘贴到另一个文件中。---- vi file1 file2

---- yy 在文件1的光标处拷贝所在行

---- :n 切换到文件2 (n=next)

---- p 在文件2的光标所在处粘贴所拷贝的行

---- :n 切换回文件1

---- 6.替换文件中的路径。

---- 使用命令“:%s#/usr/bin#/bin#g”可以把文件中所有路径/usr/bin换成/bin。也可以使用命令“:%s//usr/bin//bin/g”实现,其中“”是转义字符,表明其后的“/”字符是具有实际意义的字符,不是分隔符。

6Linux 替换^M字符方法

替换^M字符

在Linux下使用vi来查看一些在Windows下创建的文本文件,有时会发现在行尾有一些“^M”。有几种方法可以处理。

1.使用dos2unix命令。一般的分发版本中都带有这个小工具(如果没有可以根据下面的连接去下载),使用起来很方便:

$ dos2unix myfile.txt

上面的命令会去掉行尾的^M。

2.使用vi的替换功能。启动vi,进入命令模式,输入以下命令:

:%s/^M$//g # 去掉行尾的^M。

:%s/^M//g # 去掉所有的^M。

:%s/^M/[ctrl-v]+[enter]/g # 将^M替换成回车。

:%s/^M/\r/g # 将^M替换成回车。

3.使用sed命令。和vi的用法相似:

$ sed -e ‘s/^M/\n/g’ myfile.txt

注意:这里的“^M”要使用“CTRL-V CTRL-M”生成,而不是直接键入“^M”。

转自:

https://www.360docs.net/doc/ae852325.html,/mofeis/blog/item/23c7b2fb92dc97234e4aea6d.html

安卓开发环境搭建教程及个人经验

安卓入门教程及环境搭建(附笔记) ------By 仙人张 需要的软件包有三个,截止到2012年7月这些软件都是最新版本的:分别是JDK、SDK、Eclipse(版本4.2 Juno)他们的名字和大小如下 一、软件包的下载 1、JDK的下载(jdk-7u5-windows-i586) https://www.360docs.net/doc/ae852325.html,/technetwork/java/javase/downloads/index.html

2、SDK的下载(installer_r20-windows)https://www.360docs.net/doc/ae852325.html,/sdk/index.html 3、Eclipse的下载(eclipse-jee-juno-win32)https://www.360docs.net/doc/ae852325.html,/downloads/

二、软件安装 说说我的文件夹是怎么安排的,软件安装前先在自己安装软件的那个盘新建一个文件夹名字可以取为Android,然后这三个软件分别安装到里面的三个文件夹里就可以了,然后在Android文件夹里新建一个文件夹专门放自己的工程文件。 1、JDK的安装 上面下载的jdk-7u5-windows-i586是一个安装包,直接双击就可以安装了,记得路径选择Android文件夹里的Java 文件夹。 2、Eclipse的安装 上面下载的eclipse-jee-juno-win32是一个压缩包,解压后就可以直接用了,将解压后的文件夹eclipse-jee-juno-win32也放在Android文件夹下。 3、SDK的安装 上面下载的installer_r20-windows是一个安装包,将它安装到Android文件夹里的android-sdk文件夹。 装好以后像我的文件夹就是这样了

开发环境搭建步骤

一、需要使用的工具 1.开发工具:Eclipse 3.2、MyEclipse 5.0GA 2.JDK V ersion:j2sdk1.4.2_08 3.J2EE Server:JBoss 4.20GA 4.Eclipse SVN plugin:Subclipse 1.2.4 二、集成调试环境搭建 1. 安装JDK 假设安装目录为:C:\Java Tools\JDK\j2sdk1.4.2_08 2. 安装Eclipse 假设安装目录为:C:\ec lipse 3.2\eclipse 3. 安装JBoss 假设安装目录为:C:\jboss-4.0.5.GA 4. 在Eclipse下配置JDK、JBoss 打eclipse后,进入Window-Preferences-Java-Installed JREs,做如下配置 单击Ok完成JDK配置,之后进入Window-Preferences-MyEclipse-Application Servers-JBoss 4,做如下配置

配置JBoss Server为Enable,配置JDK为j2sdk1.4.2_08,单击Ok完成JBoss的配置5. 安装Eclipse SVN plugin 进入Help-Software Updates-Find and Install…,做如下配置 选择Search for new features to install,并单击Next 单击New Archived Site..,选择SVN plugin包文件。 单击OK后,按提示操作完成SVN Plugin的安装。

三、工程环境搭建 该工程包括下列子工程:iTreasuryEJB、iTreasuryWEB、ebank、webdocs、Build、lib、properties、Workdoc。各子工程含义: ◆iTreasuryEJB:iTreasury工程JA V A代码; ◆iTreasuryWEB:iTreasur工程WEB部分代码; ◆ebank:ebank工程JA V A及WEB部分代码; ◆webdocs:js文件及图片; ◆Build:配置文件; ◆Lib:JAR包; ◆Properties:配置文件; ◆Workdoc:工程相关文档。 下面分别介绍各项目新建方法: 1. 新建iTreasuryEJB 选择SVN Repository的itreasuryEJB并右键单击Check out… 选择” Check out as a project configured using the New Project Wizard”,并单击 选择EJB Project并单击Next

实验1-Web开发环境的配置与使用

实验1 Web开发环境的配置与使用 一、实验目的 本实验的目的是让学生掌握Web应用开发环境的配置与使用。重点掌握如何在Eclipse 中配置Tomcat服务器,在服务器上部署和运行Web应用。 二、实验要求 要求学生掌握Web开发环境配置的基本过程,了解并掌握如何在Eclipse中配置Tomcat 服务器,如何管理和使用Tomcat服务器。 三、实验内容与步骤 1.JDK的安装与配置 ●下载并安装JDK。 运行JDK安装程序,按照提示进行安装,并记住JDK 的安装位置,比如:C:\Program Files\Java\jdk1.8.0_20。 ●为JDK配置环境变量: 打开控制面板,选择系统安全->系统,选择高级系统设置,打开系统属性对话框,然后选择环境变量,在系统环境变量中: (1)新建环境变量JA V A_HOME,值为JDK的安装目录,比如:C:\Program Files\Java\jdk1.8.0_20。 (2)新建环境变量classpath,值为:.;%JA V A_HOME%\lib\dt.jar;%JA VA_HOME%\lib\tools.jar; (3)修改环境变量path,在尾部添加:%JA V A_HOME%\bin,如果原来不是以分号结尾,则需要先添加一个分号。 2.Tomcat服务器的安装与配置 ●下载并安装Tomcat服务器 如果是解压版的安装程序,直接解压文件到指定位置,记录解压位置,比如:C:\apache- tomcat-8.0.15。 ●为Tomcat服务器配置环境变量 配置环境变量,变量名为CATALINA_HOME, 值为Tomcat的安装目录。 ●测试Tomcat服务器是否可用 (1)进入Tomcat安装目录的bin目录,运行,如果没出现异常信息并能够正确看到如下启动成功的界面,说明服务器启动没有问题。 (2)打开浏览器,在浏览器中输入http://localhost:8080,可以看到如下的Tomcat主页,

开发环境与测试环境搭建方案

开发环境与测试环境搭建方案 1. 总体原则 1.开发与测试环境单独搭建,开发与测试环境的分离便于利于重现开发环境无法重现的BUG 以及便于开发人员并行地修复BUG ,如果选择开发环境来进行测试,开发人员进行某项误操作后发生系统崩溃或者系统不能正常运行的意外,此时测试工作也不得不停止。 2.测试环境与测试数据库分离,测试环境与测试数据库分离保证测试数据库的稳定性、数据准确性以及今后性能测试指标值的准确性。 3.开发环境与开发数据库共用一台,由于开发环境对及其性能要求不高,因此应用与数据库采用共用。 4.测试环境WEB 应用部署与生产环境相同,测试数据库的配置(用户、表空间、表)也需与生产环境一致。 2. 环境管理 2.1. 系统架构 开发环境构架: 测试环境系统构架: 2.2. 硬件配置 从上述的系统架构图分析需要3台服务器组建开发与测试环境,机型选择普 通的PC Server 机器即可。 2.3. 安装软件 建议方案中给出是环境搭建的主要软件,其他的工具未在罗列中,根据具体 需要自行安装。 服务器 内存 CPU 硬盘 备注 开发服务器 2G 到4G 之间 4C ,主频2G 以上 300G 左右 测试服务器 8G-16G 之间 4C ,主频2G 以上 300G 左右 测试数据服务器 8G-16G 之间 4C ,主频2G 以上 500G 左右

3. 权限管理 3.1. 开发环境 开发人员均可访问开发服务器应用代码与开发数据库,可以修改代码与数据 以及发布部署开发版本以便自测。 3.2. 测试环境 测试环境由版本管理员管理,负责整个测试环境的管理,包括版本部署、服 务启停、数据变更等,测试环境对开发人员只开发查询权限,仅可查询应用日志,服务运行、测试数据。 4. 版本管理 开发与测试环境安装 SVN 版本管理软件,由版本管理员负责对开发与测 试环境的版本管理工作。 5. 备份管理 1.备份主要包括开发与测试环境的代码与配置,备份方式暂为全量备份。 2.每日凌晨3点系统自动对每个项目的代码已经配置文件自动备份,备份文件名:项目名称_code_yyyymmdd.tar ,备份完成后传至备份服务器(服务器待定)。 3.每当长假(元旦、清明、五一、端午、十一、中秋、春节)前期,需手工对开发与测试环境进行全量备份。 4. 服务器 操作系统 中间件 数据库 测试工具 版本管理 工具 开发服务器 RedHat Linux 5.4 64位 Weblogic 9 Oracle 10 无 SVN 测试服务器 RedHat Linux 5.4 64位 Weblogic 9 无 JIRA SVN 测试数据服务器 RedHat Linux 5.4 64位 无 Oracle 10

Vericut二次开发环境部署

How to build a plug-in library The plug-in format used by VERICUT is a "WIN32 Dynamic Linked Library" which can be built using MSVC. The following files/libraries are needed: opapi.h, optimport.h, opapi.lib, opapi.dll opapi_template.c The easiest way to build such a plug-in dll , for example, "opapi_usr.dll", is to start with creating a C/C++ file, like "opapi_usr.c", with the skeleton code found in "opapi_template.c". Include "opapi.h" and "optimport.h" in "opapi_usr.c". Compile and link all the usr files with "opapi.lib". This will generate a ".dll" library. Set system environment variable "CGTECH_OPAPI" set to where this dll is , for example, "c:\opapi\opapi_usr.dll" and place "opapi.dll" in the same directory where "CGTech.dll" is. OptiPath API mode is now ready to go. 将C:\Program Files\CGTech\VERICUT 7.2.1\windows\commands文件夹内的vericut.bat打开,将第140行"%CGTECH_JRE%\bin\javaw"改为"%CGTECH_JRE%\bin\java"

泛微oa开发环境搭建说明

泛微o a开发环境搭建 说明 文稿归稿存档编号:[KKUY-KKIO69-OTM243-OLUI129-G00I-FDQS58-

1.概述 本文档将介绍如何通过自己电脑搭建开发环境,实现开发过程可debug进行调试,从而达到提升开发效率。 2.准备工作 下载链接地址:密码:r96h 此次以本机的Win7+SQL SERVER 2008R2系统运行环境、Myeclipse8.5开发环境进行讲解。 ①在本机电脑安装好myeclipse8.5和SQL SERVER 2008R2。 myeclipse8.5注册码: 用户名:MyEclipse 注册码: ②下载WEAVER_E8.rar强烈建议将其解压的D盘的根目录,这样就不 用改什么东西了 ③ecology8.bak是数据库文件,如果想什么都不改,那么数据库命 名为ecology8,用户sa,密码123456,如果数据库改了,则修改D:\WEAVER_E8\ecology\WEB-INF\prop下面weaver.properties文件中的相关参数 ④如果电脑内存不够大,则修改一下内存, D:\WEAVER_E8\Resin\conf下的resin.conf文件的90行和91行,改小一点,根据自己电脑内存的实际情况进行设置,如果这里内存设置太大的话,resin可能到时候运行不起来的

⑤解压时,如果不是解压到D盘,或者文件解压后文件也不是叫 “WEAVER_E8”,那么需要修改D:\WEAVER_E8\Resin\conf下的resin.conf ⑥查看或者修改端口:D:\WEAVER_E8\Resin\conf下的resin.conf 文件 ⑦设置Java的环境变量 新建系统环境变量 新建好了后,通过dos窗口的Java和javac校验配置的环境变量是否成功 ⑧解压好了之后,可以进入D:\WEAVER_E8\Resin手工点击 httpd.exe 进行启动Resin服务,如图

开发环境搭建文档

开发环境搭建 jdk1.5环境的安装和配置 1.jdk1.5的安装 jdk的安装很简单,双击jdk1.5文件下面的jdk-1_5_0_07-windows-i586-p.exe文件,按照步骤一步一步安装即可。 2.jdk1.5的配置 找到jdk1.5的安装路径D:\Program Files\Java\jdk1.5.0_07\bin目录,将其配置到windows 的环境下。 右击“我的电脑”—>“属性”—>“高级” 选择Path点击编辑 将鼠标移到变量值的最前端,把D:\Program Files\Java\jdk1.5.0_07\bin拷贝进去并以分号结束。

配置CLASSPATH,单击新建按钮 输入变量名CLASSPA TH,变量值为“.”; 3.查看jdk是否安装成功 运行cmd,在命令行中输入java。查看命令行的提示信息。 输入javac,查看提示信息。

提示上述信息,则安装成功。 db2客户端环境的安装和配置 1.db2客户端的安装 db2客户端的安装很简单,双击db2 client目录下的setup.exe按提示一步一步安装即可。 2.db2客户端的配置 选择“开始”—>“所有程序”—>“IBM db2”—>“设置工具”—>“配置助手”,打开配置助手,如下图: 单击“选择”—>“使用向导来添加数据库”

选择“人工配置与数据库的连接”选择,单击“下一步”。 选择“TCP/IP”单击下一步。 主机名框中填写DB2服务器的IP地址,服务名保持默认值,端口号填写DB2端口号(默认为50000),单击“下一步”按钮,出现如下图所示界面。

开发环境与测试环境搭建方案

开发环境与测试环境搭建方案 总体原则 1.开发与测试环境单独搭建,开发与测试环境的分离便于利于重现开发环境无法重现的BUG 以及便于开发人员并行地修复BUG ,如果选择开发环境来进行测试,开发人员进行某项误操作后发生系统崩溃或者系统不能正常运行的意外,此时测试工作也不得不停止。 2.测试环境与测试数据库分离,测试环境与测试数据库分离保证测试数据库的稳定性、数据准确性以及今后性能测试指标值的准确性。 3.开发环境与开发数据库共用一台,由于开发环境对及其性能要求不高,因此应用与数据库采用共用。 4.测试环境WEB 应用部署与生产环境相同,测试数据库的配置(用户、表空间、表)也需与生产环境一致。 环境管理 1.1. 系统架构 开发环境构架: 测试环境系统构架: 1.2. 硬件配置 从上述的系统架构图分析需要3台服务器组建开发与测试环境,机型选择普 通的PC Server 机器即可。 1.3. 安装软件 建议方案中给出是环境搭建的主要软件,其他的工具未在罗列中,根据具体 需要自行安装。 服务器 内存 CPU 硬盘 备注 开发服务器 2G 到4G 之间 4C ,主频2G 以上 300G 左右 测试服务器 8G-16G 之间 4C ,主频2G 以上 300G 左右 测试数据服务器 8G-16G 之间 4C ,主频2G 以上 500G 左右

权限管理 1.4. 开发环境 开发人员均可访问开发服务器应用代码与开发数据库,可以修改代码与数据 以及发布部署开发版本以便自测。 1.5. 测试环境 测试环境由版本管理员管理,负责整个测试环境的管理,包括版本部署、服 务启停、数据变更等,测试环境对开发人员只开发查询权限,仅可查询应用日志,服务运行、测试数据。 2. 版本管理 开发与测试环境安装 SVN 版本管理软件,由版本管理员负责对开发与测 试环境的版本管理工作。 3. 备份管理 1.备份主要包括开发与测试环境的代码与配置,备份方式暂为全量备份。 2.每日凌晨3点系统自动对每个项目的代码已经配置文件自动备份,备份文件名:项目名称_code_yyyymmdd.tar ,备份完成后传至备份服务器(服务器待定)。 3.每当长假(元旦、清明、五一、端午、十一、中秋、春节)前期,需手工对开发与测试环境进行全量备份。 4. 服务器 操作系统 中间件 数据库 测试工具 版本管理 工具 开发服务器 RedHat Linux 5.4 64位 Weblogic 9 Oracle 10 无 SVN 测试服务器 RedHat Linux 5.4 64位 Weblogic 9 无 JIRA SVN 测试数据服务器 RedHat Linux 5.4 64位 无 Oracle 10

开发环境配置文档

Linux开发环境配置文档 1.配置网络 配置网络,包括配置 IP 地址、NFS 服务、防火墙。网络配置主要是要安装好以太网卡,对于一般常见的 RTL8139 网卡,REDHAT9.0 可以自动识别并自动安装好,完全不要用户参与,因此建议使用该网卡。然后配置宿主机 IP 为 192.168.0.121。如果是在有多台计算机使用的局域网环境使用此开发设备,IP 地址可以根据具体情况设置。如图 1.4.1 所示: 图 1.4.1 网络配置 双击设备 eth0 的蓝色区域,进入以太网设置界面,如图 1.4.2,1.4.3 所示:

图 1.4.2 以太网常规设置界面 图 1.4.3 以太网路由设置界面 对于 REDHAT9.0,它默认的是打开了防火墙,因此对于外来的 IP 访问它全部拒绝,这样其它网络设备根本无法访问它,即无法用 NFS mount 它,许多网络功能都将无法使用。因此网络安装完毕后,应立即关闭防火墙。操作如下:点击红帽子开始菜单,选择安全级别设置,选中无防火墙。如图 1.4.4 所示:

图 1.4.4 安全级别设置 在系统设置菜单中选择服务器设置菜单,再选中服务菜单,将 iptables 服务的勾去掉,并确保 nfs 选项选中。 2.配置NFS 点击主菜单运行系统设置->服务器设置->NFS 服务器(英文为:SETUP->SYSTEMSERVICE->NFS),点击增加出现如下在界面,在目录(Drictory):中填入需要共享的路径,在主机(Hosts):中填入允许进行连接的主机 IP 地址。并选择允许客户对共享目录的操作为只读(Read-only)或读写(Read/write)。如图 1.4.5 所示:

Eclipse开发环境配置-kepler

Eclipse开发环境配置 1、java环境 安装 本系统使用java6开发,老师使用1.6.0 _45版本开发,如下图所示: “开发工具”目录提供了1.6.0 _45版本32位和64位两个安装程序,大家根据自己电脑操作系统进行选择。 双击运行1.6.0 _45安装程序在自己的电脑上安装java6环境,注意安装时将jdk和jre全部安装。 配置 安装后需要配置环境变量,如下所示:

配置classpath,如下: 并在path中添加java6安装目录中的bin目录路径,如下所示:

检验是否安装成功,cmd进入命令行模式,输入java,出现如下画面表示安装java完成:

2、web容器 安装 本系统开发环境使用tomcat6及以上版本,“开发工具”目录提供了apache-tomcat-7.0.52.zip 和apache-tomcat-7.0.47-windows-x64.zip两个安装程序,分别为tomcat7的32位和64位安装包。 解压安装包到自己的电脑上,建议不要解压到中文目录下,老师的tomcat7放在了E盘根目录E:\apache-tomcat-7.0.52。 配置 网上有些安装教程提到需要配置CATALINA_HOME环境变量,此变量指向了tomcat 的目录,主要是为了方便tomcat运行使用,如果配置了,你的电脑上有多个tomcat目录时只能成功运行那个和CATALINA_HOME一致的tomcat,如果不配置,在你启动tomcat时它会自己确定tomcat目录,这里我们就不配置了。 运行 运行tomcat目录中的bin/startup.bat,启动tomcat,如果启动不起来就到logs查看错误日志,启动后有浏览器输入http://localhost:8080/,进入如下画面表示tomcat安装成功。

软件项目上线发布流程

布比项目上线部署发布流程 V1.0 2017/9/14

1、目的 规范公司项目和产品的上线流程,建立和完善产品的版本控制,保证软件产品质量。 2、范围 适用于公司所有项目和产品 3、发布人员 开发环境由开发人员内部负责(包括维护和管理开发分支和git 代码库)测试环境由测试人员负责 预热环境由运维人员负责 正式环境由运维人员负责 *数据库操作均由DBA统一负责(或运维人员) 4、发布流程在已开发完毕的各系统正式部署生产环境前要严格按照以下流程进行上线前检查。 一、提交测试 a)开发人员在功能开发完毕后首先配置开发环境,并将系统部署至开发环境。在开发环境经过自测通过后提交测试代码,并开始撰写上线方案。 (上线方案须包括新增的外部应用程序安装,应用程序部署顺序及应用关 联性、是否关闭其他应用服务,数据库脚本,制定合理的上线时间,涉及 的服务影响范围以及上线失败的回滚步骤。)并提交相关技术负责人审 核,在审核过后邮件给相关测试人员。 b)测试人员根据模块功能文档并制定测试方案,测试用例,特别注意临界点测试方案。 c)测试人员通过自动化部署平台根据提供的分支号依照上线方案

进行自动化部署,涉及数据库操作可提请DBA操作。 d)记录各种数据测试结果及测试问题,并交由相关开发人员进行二次迭代处 理,该点须交付测试结果报告。 e)内测完毕后交由相关业务及需求人员进行集成测试,并请测试人员记录测 试结果及问题,交由相关开发人员进行再次迭代。该点须交付测试方案测 试结果报告。 二、预热发布 a)测试人员在测试环境测试并跟踪修改bug 达到上线标准(没有A、 B级bug, C级bug达到要求)时。开始部署预热环境,测试人员对现有功 能在预热环境上进行验收测试(重新执行case )。紧 急Bug修改走补丁/hotfix 流程。不影响功能的bug留到下次版本解 决,确认达到上线标准。 b)如达到上线标准,测试人员发起邮件通知相关开发人员、产品人员,准备 正式上线发布流程。 三、正式上线 a) 在测试人员确认项目具备上线条件下,正式上线前,开发负责人须发起部 署大会,召集相关开发人员、测试人员、产品人员、运维人员讨论此次部 署事项(介绍项目的相应负责人员,数据库脚本执行,部署顺序,应用程序关联,部署时间点,部署回滚方案,包括数据库回滚和应用程序回 滚) ,最后生成会议纪要并发送邮件。 b) 确认上线之后,测试人员邮件上线方案,数据库脚本,应用分支 号给运维人员及DBA DBA应提前执行数据库脚本,应用部署须 通过自动化部署平台进行部署,部署系统应在应用系统中记录当

软件开发环境-开发环境、测试环境、生产环境的区别

软件开发环境-开发环境、测试环境、生产环境的区别 对于一个刚进入公司的新人来说,在熟悉工作环境的时候,会听着几个“老人”在自己可视范围之外或者轻松的讨论着业务,其措辞拿捏精准,期间,涉及到一系列的概念,可能会让你不觉明厉,暗叹:“高端,大气,上档次”。 有些术语,它既有官方称呼,也有通俗叫法,对于不觉明厉的我们只能在“不识庐山真面目,只缘身在此山中”的大山里漫步。(作为一名菜鸟,吐槽一下) 软件开发环境(Software Development Environment,SDE)是指在基本硬件和宿主软件的基础上,为支持系统软件和应用软件的工程化开发和维护而使用的一组软件,简称SDE。它由软件工具和环境集成机制构成,前者用以支持软件开发的相关过程、活动和任务,后者为工具集成和软件的开发、维护及管理提供统一的支持。 项目部署环境一般可分为三种:生产环境,测试环境,开发环境 开发环境:开发环境时程序猿们专门用于开发的服务器,配置可以比较随意,为了开发调试方便,一般打开全部错误报告和测试工具,是最基础的环境。开发环境的分支,一般是feature分支。 测试环境:一般是克隆一份生产环境的配置,一个程序在测

试环境工作不正常,那么肯定不能把它发布到生产服务器上,是开发环境到生产环境的过度环境。测试环境的分支一般是develop分支,部署到公司私有的服务器或者局域网服务器上,主要用于测试是否存在bug,一般会不让用户和其他人看到,并且测试环境会尽量与生产环境相似。 生产环境:生产环境是指正式提供对外服务的,一般会关 掉错误报告,打开错误日志,是最重要的环境。部署分支一般为master分支。 三个环境也可以说是系统开发的三个阶段:开发->测试->上线,其中生产环境也就是通产说的真实的环境,最后交给用户的环境。

集成开发环境的配置及使用说明

集成开发环境的配置及使用说明 本文讲解如何编写MSBuild脚本文件执行编译系统、运行FxCop检查代码、运行NUnit以及NCover进行单元测试、运行SandCastle生成帮助文档四项功能,并如何在集成开发环境中使用。 一、集成开发环境的配置 1.1 工具软件准备 1.1.1 MSBuild 只要安装过VS2005或VS2008后,就可以是路径C:\WINDOWS\https://www.360docs.net/doc/ae852325.html,\Framework中看到MSBuild的三人版本,本例中使用V3.5。另外还得从下面的网站下载一个https://www.360docs.net/doc/ae852325.html,munity.Tasks.msi文件,里面有MSBuild的已经编写好的各种任务。下载地址如下: https://www.360docs.net/doc/ae852325.html,/ 1.1.2 NCover NCover现有网上使用的主要有两个版本NCover3.1和NCover1.5.8,但由于后者是免费版本,所以本例中使用NCover1.5.8版本,下载地址如下:https://www.360docs.net/doc/ae852325.html,/download/community 1.1.3 其它软件 其它软件如下所示: NUnit 2.5.1 FxCop 1.36 HTML Help Compiler Sandcastle Help File Builder v 1.8.0.2 以上包括1.1.1和1.1.2的软件均可在Redmine项目管理的集成开发环境的配置的文件管理中下载,此处就不一一给链接了。下载后均按默认安装即可。但因为要在命令行中使用MSBuild和FxCopcmd命令,所在在环境变量Path中加入: C:\WINDOWS\https://www.360docs.net/doc/ae852325.html,\Framework\v3.5; C:\Program Files\Microsoft FxCop 1.36; 另外再增加两个新变量: DXROOT C:\Program Files\Sandcastle和 HHCEXE C:\Program Files\HTML Help Workshop

Openfire调试、编译开发环境与安装

Openfire调试、编译开发环境与安装 自己实践: 讲明:开发环境(IDE):Eclipse 3.3.2+JDK1.6+Ant 1.7+Openfire_src_ 3_5_1.zip 1. 如果代码中使用了import testng.xxx语句,就需要导入testng-5.8-jd k15.jar类库; 2. 关于警告信息,是没有关系的。因为这些警告信息是使用1.5以上版本JDK时候才显现的,使用JDK1.4是可不能显现这些警告信息的。因为这些代码中的有些是使用JDK 1.4编写的,而JDK1.4不支持泛型,而J DK 1.5和JDK1.6是支持泛型的。这些警告信息要紧是提示将这些非泛型的代码修改为更加高级的方法——泛型,因此这些警告信息是不阻碍代码结果的。 如果需要修改为泛型也是能够,使用泛型来处理有关的集合类。 3. 在使用ant进行编译的时候,在ant视图中可能会显现警告如下信息: taskdef class com.install4j.install4jtask cannot found 那个要紧是要安装用来打包Java应用程序的install4j.exe程序,要安装到其默认的安装路径下。也确实是C:\Program Files\名目下即可。

4. 在源码里面有一个文件夹里有个打包的图标,双击那个图标,instal l4j就会读取你在build.xml文件里的信息、在里面完成做界面等打包工作。 编译调试的环境(IDE):Eclipse 3.3.2+JDK1.6+Ant(内置)+openfire _src_2008-06-04.zip 在Windows操作系统下编译、调试openfire之前,需要确保HTTP SS L服务差不多启动。否则,会显现各种错误信息。 猎取Openfire源代码 从官方网站上直截了当下载官方公布版本的源代码openfire_src_2008-06-04.zip源代码压缩包; 2. 创建openfire工程 将openfire_src_2008-06-04.zip解压后,名目下除了READEME.html、LICENSE.html和changelog.html三个网页文件之外,有下面四个子名目。 build名目:build名目下收录的是生成安装文件(例如:rpm)所要的一些文件,例如JRE等。 resources名目:resources名目下收录的是一些为实现国际化(i18n)和本地化的一些编码文件(例如:英文,中文,法文,德文等)。

实验1 开发环境安装与配置

实验一ArcGIS Server+Flex开发环境安装与配置 一、WebGIS示例 a)Oakland犯罪地图 b)OpenStreetMap c)在线专题图制作 d)地图故事 e)百度地图 f)谷歌地图 二、ArcGIS Server 概述 a)ArcGIS Server是一个基于企业级GIS解决方案。用户可以使用ArcGIS Server在企业内部网或整个互联网范围内恭喜GIS资源(专题地图、地 理数据、专业的空间分析工具等),可以把地图或者其他的地理信息资源 无缝地集成到普通的网站页面中。 b)ArcGIS Server特点(单选) i.集中式管理。数据的维护和管理以及系统升级都只需在服务器端进 行集中的处理,无需在每一个终端用户上做大量的维护工作。 ii.瘦客户端也可以使用复杂的GIS功能。 iii.使WebGIS具备灵活的数据编辑和复杂的GIS分析能力。 iv.支持大量的并发访问,具有复杂均衡能力。 v.可以根据工业标准很好地与其他的企业系统整合。 c)使用ArcGIS Server在Web应用上实现的常用GIS功能(简答) i.在浏览器中显示地图,控制各个图层的显示与隐藏; ii.在浏览器中缩放、漫游地图; iii.在地图上点击、拉框查询信息; iv.显示文本标注; v.在地图上叠加航片和卫片影像; vi.使用SQL语言查询要素; vii.使用多种渲染方式渲染图层;

viii.通过Internet编辑空间要素坐标位置信息和属性信息; ix.动态加载图层; x.显示实时的空间数据; xi.几何要素的空间分析(如缓冲区分析); xii.坐标的投影变换; xiii.扩展的网络分析和空间分析功能。 d)ArcGIS Server体系架构(单选) i.ArcGIS是一个分布式系统,由分布在多台机器上的各个角色协同工 作。 ii.浏览器:支持HTTP协议,支持RIA应用。 iii.Web Server:运行Web应用程序或Web Service的容器。Web应用程序或Web Service通过访问GIS Server中的对象来实现GIS功能,然 后把结果返回给客户端。.NET平台下只支持微软的IIS。 iv.GIS Server:由一个SOM(Server Object Manager)和若干个SOC (Server Object Container)两大部分组成。SOM负责管理、调度来 自Web服务器的请求,SOC是ArcObjects对象生存的空间。 v.桌面应用程序:ArcGIS Desktop或ArcGIS Engine应用程序。通过HTTP访问WebServer上发布的GIS网络服务,或者通过LAN/WAN 直接连接到GIS Server。一般通过ArcCatalog或ArcGIS Server Manger应用程序管理ArcGIS Server中的服务。 三、Flash Builder 4安装 a)直接安装Flash Builder 4。 b)在“C:\WINDOWS\system32\drivers\etc”目录下的hosts文件最后增加 “127.0.0.1 https://www.360docs.net/doc/ae852325.html,”。(需要先修改hosts文件的只读属性)。

泛微oa开发环境搭建说明

1.概述 本文档将介绍如何通过自己电脑搭建开发环境,实现开发过程可debug进行调试,从而达到提升开发效率。 2.准备工作 下载链接地址:/1ciEI8u 密码:r96h 此次以本机的Win7+SQL SERVER 2008R2系统运行环境、Myeclipse8.5开发环境进行讲解。 ①在本机电脑安装好myeclipse8.5和SQL SERVER 2008R2。 myeclipse8.5注册码: 用户名:MyEclipse 注册码:ZLR8ZC-8510 ②下载WEAVER_E8.rar强烈建议将其解压的D盘的根目录,这样就不用改什么东西了 ③ecology8.bak是数据库文件,如果想什么都不改,那么数据库命名为ecology8,用户 sa,密码123456,如果数据库改了,则修改D:\WEAVER_E8\ecology\WEB-INF\prop 下面weaver.properties文件中的相关参数 ④如果电脑内存不够大,则修改一下内存,D:\WEAVER_E8\Resin\conf下的resin.conf 文件的90行和91行,改小一点,根据自己电脑内存的实际情况进行设置,如果这里内存设置太大的话,resin可能到时候运行不起来的 ⑤解压时,如果不是解压到D盘,或者文件解压后文件也不是叫“WEAVER_E8”,那么 需要修改D:\WEAVER_E8\Resin\conf下的resin.conf ⑥查看或者修改端口:D:\WEAVER_E8\Resin\conf下的resin.conf文件 ⑦设置Java的环境变量 ⑧解压好了之后,可以进入D:\WEAVER_E8\Resin手工点击httpd.exe 进行启动Resin 服务,如图 备注:若双击httpd.exe后dos窗口闪退,则可能是环境变量未设置成功 当dos窗口出现了Resin start in XXXms ,则表示启动已完成,输入地址访问OA系统

史上最全ProE二次开发测试及环境配置方法

32位系统preo5.0二次开发测试及环境配置 首先,proe5.0是配合VC++2008来进行二次开发的,因此首先得安装VS2008,其次,要确保proe5.0中已经安装了protoolkit,安装方法略。 如何测试Pro/Toolkit安装成功 第一步,找到proe安装目录下的protooltik文件夹,并找到..\protoolkit\i486_nt\obj这个路径下的一个叫做make_install的文件,用写字板打开,找到如下 # Pro/Toolkit Source & Machine Loadpoint (EXTERNAL USE - DEFAULT) 这么一行字,然后把它下面的PROTOOL_SRC=../..改成PROTOOL_SRC = ...\PTC\protoolkit,保存下关闭就好了。 第二步,在“开始”中找到Microsoft Visuall Studio Tools→Visual Studio Tools→Visual Studio Tools2008命令提示符,打开。 第三步,在打开的这个界面里面敲下如下字符cd ...\PTC\protoolkit\i486_nt\obj,然后回车,再敲上如下字符:nmake /f make_install dll,然后再回车,等其运行完毕,关掉命令提示符,然后再回到...\PTC\protoolkit\i486_nt\obj文件夹中,会发现多了一个pt_inst_test.dll文件,证明前面的工作全是成功的。 第四步,回到...\PTC\protoolkit文件夹,找到protk.dat文件,用写字板打开,将第二行和第三行前面的“.”改成路径...\PTC\protoolkit,将第五行后面的“18”改成“wildfire5.0”,其他保持不变,保存,关闭。 第五步,启动proe5.0,找到工具→辅助应用程序,打开,点“注册”,找到...\PTC\protoolkit,里的protk.dat,打开,选中,点“启动”,发现左上角出现“’pt_inst_test.dll’启动成功”。关闭“辅助应用程序”。 第六步,打开“文件”菜单栏,会有一个“安装检测”,点击后,会出现“PRO/PROTOOLKIT 安装检测成功”。至此,PRO/PROTOOLKIT安装检测全部完成。 配置VC++2008 Debug模式配置 第一步,加上PRO/TOOLKIT的包含文件和库文件,打开工具→选项→项目与解决方案→VC++目录显示以下内容的目录→包含文件,添加如下文件: ...\PTC\protoolkit\includes ...\PTC\protoolkit\protk_appls\includes ...\PTC\prodevelop\includes ...\PTC\prodevelop\prodev_appls\includes 将包含文件换为库文件,添加如下文件: ...\PTC\protoolkit\i486_nt\obj ...\PTC\prodevelop\i486_nt\obj

部署开发环境Phenix

1部署开发环境 1.1前提条件 ●Phenixヾ搭建在Microsoft Visual Studio 2010之上,并以Addin、组件、控件等方式整合到 IDE中,辅助代码编写、界面设计,以达到快速开发的目的。 ●Phenixヾ的界面开发框架,整合的是Developer Express v10.1.X版本。如希望在你的应用系 统中使用其他版本的DEV控件,需改写Phenix.Windows.DevExpress.v10.1.csproj并重新编译即可。 ●Phenixヾ仅限于支持Oracle9i以上、SQLServer 7.0以上的数据库。 ●Phenixヾ需要在数据库中构建一套配置库,才能在此基础上开发、运行应用系统。 1.2注册Addin工具 运行应用服务程序Phenix.Services.Host.exe(Win7操作系统下请用系统管理员身份运行),会弹出“连接数据库”对话框: 请根据需要以DBA权限用户登录数据库,填充好参数后点击“确认”按钮登录。 首次登录数据库时,如果未曾构建过配置库,则会在主界面的提示栏中显示“取版本号出错,可能需要构建配置库”。此时程序会再次弹出上述对话框,需要你重新填充一遍数据库登录参数,点击“确认”后,程序会在这个数据库中构建一遍Phenixヾ需要用到的表结构和存储过程。如果已构建过配置库,程序会忽略这个过程。 登录数据库的过程如无异常,则在主界面的提示栏中显示如下类似的信息: 2012-01-19 13:58:12 初始化 - 构建子目录... 2012-01-19 13:58:13 初始化 - 配置系统... 2012-01-19 13:58:13 设置版本号 - 成功 2012-01-19 13:58:13 检查版本 - 完毕

Qt开发环境下载和安装

Qt开发环境下载和安装 (2015.01.18 by Winland) Qt是跨平台的图形开发库,目前由Digia全资子公司Qt Company 独立运营,官方网址:http://www.qt.io/ 也可以访问Qt项目域名:https://www.360docs.net/doc/ae852325.html,/ Qt本身支持众多操作系统。从通用操作系统Linux、Windows,到手机系统Android、iOS、WinPhone,嵌入式系统支持QNX、VxWorks,应用非常广泛。 基于Qt的软件非常多,其中最知名的要数Linux桌面系统KDE(涵盖无数以K打头的应用软件)。国内WPS for Linux版本、360 for Linux也是使用Qt库开发的界面。只要有C++基础,Qt是很容易学的,而且开发跨平台的程序也容易。目前主流使用的Qt库有Qt4和Qt5两个大版本,下面介绍其在Windows系统里的下载和安装。 一、Qt4开发环境下载安装 首先进入下载页面http://www.qt.io/download/ 有四个使用方式,开源社区版、移动版、专业版、企业版,后面几个要钱的,这里选择第一个GPL/LGPL的下载就行了。 进入开源版页面: http://www.qt.io/download-open-source/

上面大按钮Download Now是下载在线安装版,其实只是一个下载工具,并不是真正的Qt 开发库。可以自己下载离线安装包,注意页面的“View All Downloads”,点开之后就能看 到离线包。目前看到的全是Qt5.4.0版本的,那Qt4的在哪呢? 把上面页面拖到最下面: 旧版本包就是最后一个链接:http://download.qt.io/archive/

在Eclipse下搭建Android开发环境教程

在Eclipse下搭建Android开发环境教程 我们昨天向各位介绍了《在NetBeans上搭建Android SDK环境》,前不久也介绍过《在MyEclipse 8.6上搭建Android开发环境》,都受到了读者的欢迎。但是很多朋友都认为NetBeans在中国用户不多,MyEclipse 又是收费产品,都没有Eclipse好,很多读者都希望我们介绍一下Eclipse下搭建的Android开发环境,本文将全程演示Android开发环境的搭建过程,无需配置环境变量。所有软件都是写该文章时最新版本,希望大家喜欢。 一相关下载 (1)Java JDK下载: 进入该网页: https://www.360docs.net/doc/ae852325.html,/javase/downloads/index.jsp (或者直接点击下载)如下图: 选择 Download JDK 只下载JDK,无需下载jre. (2)Eclipse下载 进入该网页: https://www.360docs.net/doc/ae852325.html,/downloads/ (或者直接点击下载:BT下载 HTTP下载)如下图:

我们选择第一个(即eclipse IDE for java EE Developers) (3)下载Android SDK 说明: Android SDK两种下载版本,一种是包含具体版本的SDK的,一种是只有升级工具,而不包含具体的SDK版本,后一种大概20多M,前一种70多M。 完全版下载 (android sdk 2.1 r01) 升级版下载 (建议使用这个,本例子就是使用这个这里面不包含具体版本,想要什么版本在Eclipse里面升级就行) 二软件安装 (1)安装jdk 6u19安装完成即可,无需配置环境变量 (2)解压eclipse eclipse无需安装,解压后,直接打开就行 (3)解压android sdk 这个也无需安装,解压后供后面使用 (4)最终有三个文件夹,如下图:

相关文档
最新文档