实验1 交叉编译工具链建立实验

实验1 交叉编译工具链建立实验
实验1 交叉编译工具链建立实验

实验1交叉编译工具链建立实验

1.1实验目的

?熟悉Linux操作系统;

?掌握交叉编译工具链的建立过程;

?掌握通过gdb调试程序的方法;

?掌握makefile文件的写法。

1.2实验设备

?硬件:PC机;

?软件:Windows操作系统、VMware虚拟机和Linux操作系统,或直接安装于硬盘的Linux操作系统,arm-linux-gcc安装文件。

1.3实验内容

?安装Linux操作系统;

?建立交叉编译工具链;

?编写解决八皇后问题的程序。

1.4实验原理

1.4.1交叉编译工具链的简介

交叉编译通俗地讲就是在一种平台上编译出能运行在体系结构不同的另一种平台上的程式,例如我们试验中在Linux平台上编译出能运行在ARM为内核的CPU平台上的程式,编译得到的可执行文件是不能在Linux环境下运行的,必须放到ARM平台上才能运行。这种方法在异平台移植和嵌入式研发时非常有用的。

交叉编译工具链是由编译器、连接器和解释器组成的综合研发环境,交叉编译工具链主要由binutils、gcc和glibc三个部分组成。有时出于减小libc库大小的考虑,也能用别的C库来代替glibc,例如uClibc、dietlibc和newlib。

1.4.2交叉编译工具链部分组件的介绍

GCC属于GUN工具链中的编译开发工具,它可以把源程序编译为可执行文件。GCC是支持支持Ada语言、C++语言、Java语言、Objective C语言、Pascal语言、COBOL语言,以及支持函数式编程和逻辑编程的Mercury语言,等等的编译器。GCC是可以在多种硬体平台上编译出可执行程序的超级编译器,其执行效率与一般的编译器相比平均效率要高20%~30%。GCC主要包括:

?cpp:GNU C编译器的预处理器

?gcc:符合ISO标准的C编译器

?g++:基本符合ISO标准的C++编译器

?gcj:GCC的java前端

?gnat:GCC的GNU ADA95的前端

binutils是一组二进制工具程序集合,是辅助GCC的主要软件,其中主要包括:

?as:GNU汇编器

?ld:GNU链接器

?ar:创建归档文件,向库中添加/提取obj文件

?nm:列出obj文件中的符号

?objcopy:复制和转化obj文件

?objdump:显示对象文件的信息

?ranlib:根据归档文件中的内容建立索引

?readelf:显示elf格式执行文件中的各种信息

?size:显示object文件和执行文件各段的总大小

?strings:显示文件中可以打印的字符

?strip:去掉执行文件中多余的信息(如调试信息)

?gprof:用来显示图表档案数据。

1.4.3Linux常用开发工具的介绍和使用

上面我们对交叉编译工具链做了概述,下面我们再给出linux下常用开发工具的介绍和使用。

1.vi(vim)

vi是linux下一种功能强大的,快速命令驱动的全屏幕编辑器,可以类比DOS的edit。vi有三种操作模式:一是命令模式(或称指令模式),在此模式下的按键当作指令来处理;一种是输入模式(或称插入模式),此模式的按键作为真正的输入;另外一种是底行模式,在该模式下,光标位于屏幕的底行。用户可以进行文件保存或退出操作,也可以设置编译环境,如寻找字符串、列出行号等。初始启动vi时处于命令模式。表1.1中列出了vi(vim)常用的命令。

r修改光标所在处的字符

x删除光标处的一个字符

dd删除光标所在的整行内容

:5d删除第五行

o在光标所在行下增加一行并进入输入模式

u撤销最后一个更改操作

yy复制当前行

p粘贴当前行

rm替换当前字符为m,替换后仍处于命令模式下

表1.1vi(vim)常用命令

vi的命令有很多,我们需要经常使用来熟悉这些命令,当你得心应手的时候你会发现vi 相比其他文本编辑器有很多优点,是一个非常高效的文本编辑器。

2.arm-linux-gcc

我们需要编译出运行在ARM平台上的代码,所使用的交叉编译器为arm-linux-gcc。下面将arm-linux-gcc编译工具的一些常用命令参数介绍给大家。首先介绍下编译器的工作过程,在使用GCC编译程序时,编译过程分为四个阶段:(1)预处理(Pre-Processing)(2)编译(Compiling)(3)汇编(Assembling)(4)链接(Linking)Linux程序员可以根据自己的需要让GCC在编译的任何阶段结束,以便检查或使用编译器在该阶段的输出信息,或者对最后生成的二进制文件进行控制,以便通过加入不同数量和种类的调试代码来为今后的调试做好准备。和其它常用的编译器一样,GCC也提供了灵活而强大的代码优化功能,利用它可以生成执行效率更高的代码。

下面以文件example.c文件为例来说明它的命令用法:

(1)arm-linux-gcc-o example example.c

不加-c、-S、-E参数,编译器将执行预处理、编译、汇编、连接操作直接生成可执行代码。-o参数用于指定输出的文件,输出文件名为example,如果不指定输出文件,则默认输出a.out。

(2)arm-linux-gcc-c-o example.o example.c

-c参数将对源程序example.c进行预处理、编译、汇编操作,生成example.0文件。去掉指定输出选项“-o example.o”自动输出为example.o,所以在这里-o加不加都可以。

(3)arm-linux-gcc-S-o example.s example.c

-S参数将对源程序example.c进行预处理、编译,生成example.s文件。-o选项同上。

(4)arm-linux-gcc-E-o example.i example.c

-E参数将对源程序example.c进行预处理,生成example.i文件(不同版本不一样,有的将预处理后的内容打印到屏幕上),就是将#include,#define等进行文件插入及宏扩展等操作。

(5)arm-linux-gcc-v-o example example.c

加上-v参数,显示编译时的详细信息,编译器的版本,编译过程等。

(6)arm-linux-gcc-g-o example example.c

-g选项,加入GDB能够使用的调试信息,使用GDB调试时比较方便。

(7)arm-linux-gcc-Wall-o example example.c

-Wall选项打开了所有需要注意的警告信息,像在声明之前就使用的函数,声明后却没有使用的变量等。

(8)arm-linux-gcc-Ox-o example example.c

-Ox使用优化选项,X的值为空、0、1、2、3,0为不优化,优化的目的是减少代码空间和提高执行效率等,但相应的编译过程时间将较长并占用较大的内存空间。

(9)arm-linux-gcc-I/home/include-o example example.c

-Idirname:将dirname所指出的目录加入到程序头文件目录列表中。如果在预设系统及当前目录中没有找到需要的文件,就到指定的dirname目录中去寻找。

(10)arm-linux-gcc-L/home/lib-o example example.c

-Ldirname:将dirname所指出的目录加入到库文件的目录列表中。在默认状态下,连接程序ld在系统的预设路径中(如/usr/lib)寻找所需要的库文件,这个选项告诉连接程序,首先到-L指定的目录中去寻找,然后再到系统预设路径中寻找。

(11)arm-linux-gcc–static-o libexample.a example.c

静态链接库文件

3.gdb

gdb是GNU发布的linux下的字符界面调试工具,它的功能非常强大,其中主要有:?按用户的要求启动程序

?让被调试的程序在任意断点处停止(断点可以是条件表达式)

?程序暂停时可检查运行环境

?程序暂停时可动态改变运行环境

要使用gdb调试程序,在用gcc编译源文件时要指定-g选项,以使程序中包含必要的信息。

?gcc–g program.c//使用gdb的前提

?gdb program(gdb)file p//启动gdb

?(gdb)help command//查看命令

gdb中程序的暂停方式(或称停止点)有以下几种:

?断点(breakpoint)

?观察点(breakpoint)

?捕捉点(catchpoint)

?信号(signals)

?线程停止(thread stops)

可以用c命令恢复程序的运行。其中用break命令设置断点,有以下几种方法:

?break function//执行到某函数终止

?break linenum//执行到某行终止

?break+offset//在当前行后offset行停止

?break-offset//在当前行前offset行停止

?break filename:linenum//执行到指定文件中的某行终止

?break filename:function//执行到指定文件中的某函数终止

?break*address//执行到某地址处终止

?tbreak//仅中断一次,中断后断点自动删除

?break..if condition//条件断点

例如:设置条件断点:break18if i==50,用condition命令可以修改条件(condition bnum expression);清除停止条件可以用condition bnum;ignore命令可以指定程序运行时忽略条件几次(ignore bnum count);使用info命令可以查看断点。表1.2给出了gdb

一些常用的命令:

基本gdb命令命令描述

file装入想要调试的可执行文件

kill终止正在调试的程序

list或l列出产生可执行文件的源代码的一部分

next或n执行一行源代码但不进入函数内部

step或s执行一行源代码而且进入函数内部

run或r执行当前被调试的程序

quit或q退出gdb

watch监视一个变量的值而不管它何时被改变

break或b在代码里设置断点

make使不退出gdb就可以重新产生可执行文件

shell使不必离开gdb就能执行shell命令。

表1.2gdb常用命令

总之,gdb的功能非常的强大,可以根据我们的需求启动,停止程序

4.gedit

gedit是一个GNOME桌面环境下兼容UTF-8的文本编辑器。它使用GTK+编写而成,因此它十分的简单易用,有良好的语法高亮,对中文支持很好,支持包括gb2312、gbk在内的多种字符编码。gedit是一个自由软件。是Linux下的一个纯文本编辑器,但你也可以把它用来当成是一个集成开发环境(IDE),它会根据不同的语言高亮显现关键字和标识符。

5.tar

tar可以为文件和目录创建档案。利用tar,用户可以为某一特定文件创建档案(备份文件),也可以在档案中改变文件,或者向档案中加入新的文件。tar最初被用来在磁带上创建档案,现在,用户可以在任何设备上创建档案,如软盘。利用tar命令,可以把一大堆的文件和目录全部打包成一个文件,这对于备份文件或将几个文件组合成为一个文件以便于网络传输是非常有用的。Linux上的tar是GNU版本的。

语法:tar[主选项+辅选项]文件/目录。使用该命令时,主选项是必须要有的,它告诉tar要做什么事情,辅选项是辅助使用的,可以选用。

M创建多卷的档案文件,以便在几个磁盘中存放

v详细报告tar处理的文件信息

w每一步都要求确认

z用gzip来压缩/解压缩文件,加上该选项后可以将档案文件进行压

缩,但还原时也一定要使用该选项进行解压缩

表1.3tar常用命令

6.makefile

Makefile文件描述了整个工程的编译、连接等规则。其中包括:工程中的哪些源文件需要编译以及如何编译、需要创建那些库文件以及如何创建这些库文件、如何最后产生我们想要的可执行文件。尽管看起来可能是很复杂的事情,但是为工程编写Makefile的好处是能够使用一行命令来完成“自动化编译”,一旦提供一个(通常对于一个工程来说会是多个)正确的Makefile。编译整个工程你所要做的唯一的一件事就是在shell提示符下输入make 命令。整个工程完全自动编译,极大提高了效率。

make是一个命令工具,它解释Makefile中的指令(应该说是规则)。在Makefile文件中描述了整个工程所有文件的编译顺序、编译规则。Makefile有自己的书写格式、关键字、函数。像C语言有自己的格式、关键字和函数一样。而且在Makefile中可以使用系统shell所提供的任何命令来完成想要的工作。Makefile(在其它的系统上可能是另外的文件名)在绝大多数的IDE开发环境中都在使用,已经成为一种工程的编译方法。

1.5实验步骤

1.5.1交叉编译工具链的建立

Linux系统中的一些操作需要获得root权限才能进行,通过su root命令,输入密码获得root权限即可进行相关操作,如图1.1。

图1.1root权限获得

1.建立工作目录

在Ubuntu操作系统的/tmp/test目录下建立test1目录以作为放置arm-linux交叉编译工具的位置。

将arm-linux交叉编译工具源码包arm-linux-gcc-4.4.3.tgz,通过虚拟机共享文件夹/mnt/hgfs/share拷贝到此目录下,具体操作如下:

#mkdir/tmp/test/test1

#cp/mnt/hgfs/share/arm-linux-gcc-4.4.3.tgz/tmp/test/test1

如图1.2所示:

图1.2arm-linux-gcc安装所用文件

2.解压缩包

使用tar命令对arm-linux交叉编译工具源码包进行解压,如图1.3所示:

图1.3解压

3.系统配置

解压结束后,需要对系统进行简单配置。使用vi或者gedit编辑root用户的配置文件.bashrc,该文件是一个隐藏文件。在该文件最后一行添加上arm-linux交叉编译工具的存放路径,然后保存退出,添加的内容为:export PATH=$PATH:/opt/FriendlyARM/toolschain/4.3.2/bin,该路径应根据解压的4.4.3文件所在路径决定,不同的解压方法可能解压的路径各不相同,需要注意。如图1.2所示。

图1.4交叉编译工具存放路径

保存退出后,使用source命令,使修改生效,再运行arm-linux-gcc–v命令,此时有arm-linux-gcc版本和配置信息输出即说明交叉工具链安装完成。

如图1.3所示:

图1.5版本信息

1.5.2编写hello文件进行交叉编译

编写hello.c文件代码如下图所示:

图1.6hello.c文件代码

请自行将hello world改为每组两位同学的姓名与学号,并拍照,将图片嵌入实验报告中。

保存退出。使用arm-linux交叉编译工具对写好的hello.c程序进行交叉编译,生成可执行文件hello,在hello.c文件目录下执行代码为:arm-linux-gcc–o hello hello.c。在当前目录下生成可执行文件hello,如图1.5所示。

图1.7编译hello.c

1.5.3编写8皇后问题程序

1.题目说明

八皇后问题是一个古老而著名的问题,是回溯算法的典型例题。该问题是十九世纪著名的数学家高斯1850年提出:在8×8格的国际象棋上摆放八个皇后,使其不能互相攻击,即任意两个皇后都不能处于同一行、同一列或同一斜线上,问有多少种摆法,并输出这些摆法的棋谱,放置皇后的位置输出‘@’,其他位置输出‘*’。

为解决这个问题,把棋盘的横坐标定为i,纵坐标定为j,i和j的取值范围是从1到8。当某个皇后占了位置(i,j)时,在这个位置的垂直方向、水平方向和斜线方向都不能再放其它皇后了。

首先,可以定义四Queen[8][8]、a[8]、b[15]和c[15]分别用来存放棋盘,棋盘的列状态,棋盘的主对角线状态和棋盘的从对角线状态。其中:

a[j-1]=1第j列上无皇后

a[j-1]=0第j列上有皇后

b[i+j-2]=1(i,j)的对角线(右上至左下)无皇后

b[i+j-2]=0(i,j)的对角线(右上至左下)有皇后

c[i-j+7]=1(i,j)的对角线(左上至右下)无皇后

c[i-j+7]=0(i,j)的对角线(左上至右下)有皇后

为第i个皇后选择位置的算法伪码如下:

for(j=1;j<=8;j++)/*第i个皇后在第j行*/

if((i,j)位置为空))/*即相应的三个数组的对应元素值为1*/ {

占用位置(i,j)/*置相应的三个数组对应的元素值为0*/

if i<8

为i+1个皇后选择合适的位置;

else输出一个解

}

在终端下,运行自己的程序,显示如下的结果:

…省略…

**@*****

*******@

*****@**

@*******

****@***

*@******

*****@**

@*******

******@*

***@****

*******@

**@*****

53

****@***

*@******

*******@

@*******

***@****

******@*

**@*****

…省略…

最后一行,应输出每组两位同学的姓名与学号,并拍照,将图片嵌入实验报告中。

请大家按照以上说明编写相应源程序,并编译执行。

2.利用make来管理工程

关于make的原理和使用方法,已经在前面的实验原理部分介绍了,接下来,给出一个本节实验的Makefile。请同学自行分析下面的Makefile并逐行注释:

#Makefile for eightqueen

#make DEBUG构造调试版本

#make构造优化版本

#make clean清除构造生成的文件

CC=gcc

AS=as

EXEC=eightqueen

OBJS=eightQueen.c

MACRO=

ifdef DEBUG

else

CFLAGS=-O2

endif

INCLUDES=

CRYPT=

LIBDIR=

all:compile

compile:eightQueen.c

$(CC)-o eightqueen$(OBJS)

debug:eightQueen.c

$(CC)-g-o eightqueen$(OBJS)

clean:

rm./eightqueen

#End Makefile

3.程序调试

调试程序是编程过程中重要的一个步骤。Linux下使用gdb来调试程序,注意,在调试之前,需要重新编译一遍程序,把调试选项打开,执行命令如下:

gcc-g-o eightqueen eightQueen.c

gdb eightqueen

屏幕回显示如下信息:

GNU gdb(Ubuntu7.8-1ubuntu4)7.8.0.20141001-cvs

Copyright(C)2014Free Software Foundation,Inc.

License GPLv3+:GNU GPL version3or later This is free software:you are free to change and redistribute it.

There is NO WARRANTY,to the extent permitted by law.Type"show copying"

and"show warranty"for details.

This GDB was configured as"i686-linux-gnu".

Type"show configuration"for configuration details.

For bug reporting instructions,please see:

.

Find the GDB manual and other documentation resources online at:

.

For help,type"help".

Type"apropos word"to search for commands related to"word"...

Reading symbols from eightqueen...(no debugging symbols found)...done.

(gdb)

此时,就处在gdb的提示符下了,以上的信息包括gdb的版本和版权信息。可以直接在此处输入命令进行调试了。首先输入list或l命令来查看部分源代码,例如程序可能有如下显示:

/*eightQueen.c*/

#include

static char Queen[8][8];/*存放棋盘*/

static int a[8];/*存放棋盘列的状况*/

static int b[15];/*存放棋盘主对角线的状况*/ static int c[15];/*存放棋盘从对角线的状况*/ static int queenNum=0;/*存放方法次数*/

void queen(int i);

(gdb)

注:在gdb提示符下按回车键,能够继续执行上一次执行的命令。这样,多按几次回车键就能浏览程序的全部源代码了。

根据源代码的行号,在程序的第八行设置一个断点,看程序运行到此处时是否能够停下来:

(gdb)b8

观察一下此时gdb中已经注册过的断点都有哪些,思考用什么命令。如果我想看当前的局部变量值,应该用什么命令?继续尝试前面给出的gdb的各种命令,设置条件断点,使程序中断在第五次循环处,显示当前系统全部局部变量的内容。

测序实验室操作手册

测序实验室操作手册 文件编号: 版次: 编制: 审核: 批准: 日期:

测序实验室标准操作手册 一、健康中心实验室介绍.............................................................................................. .. (2) 二、实验室管理 (2) 2.1 实验室行为管理 (3) 2.2 实验室出入管理 (4) 2.3 实验室清洁卫生管理 (6) 2.4 仪器试剂使用管理 (10) 2.5 实验室安全管理 (11) 2.6 实验室紧急事故处理 (14) 2.7 实验室物料管理 (15) 三、实验室保密制度管理 (17) 四、测序实验室仪器操作规程 (17) 超净台操作规程.....................................................................................................................18 微量台式离心机使用规程.....................................................................................................20 移液枪使用维护规程.............................................................................................................21 冰箱使用维护规程.. (26) PCR 仪使用规程 (29) 五、高通量测序标准操作规程 (32) 5.1 模板制备标准操作规程 (32) 5.2 上机测序标准操作规程 (41) 六、测序人员考核标准 (47) 七、实验室管理考核标准 (48) 八、测序实验室工作时间表 (50) 九、附录 (50)

Ubuntu8.04下的ARM交叉编译工具链(arm-linux-)详细介绍.

原文链接与:https://www.360docs.net/doc/bc2561168.html,/u1/58901/showart_1335004.html 实验室的机器配置太低,速度太慢实在是受不了。说是已经升级了,内存从128M升级到了256M。My god!这年头还能到什么地方找那么多128的内存条去阿?哇嘎嘎。真是服了。。。哈哈 打开一个pdf文件要等老半天。基本上没有办法工作。于是想在自己的笔记本上做一个交叉编译环境。我的机器配置也不高,但是相对于实验室的机器来说已经相当不错了。我的机器是单操作系统:只有Ubuntu8.0.4。感觉和windows XP差不多。XP下有的东西,ubuntu下基本上也有。 ps:昨天是我的生日。昨天上午有课,一下午还有今天上午就是在交叉编译的过程中度过的。感觉整个过程挺考验耐心的。下面进入正题。 待续。。。最近两天内补充完整。 ************************************************************************************* 在进行嵌入式在进行嵌入式开发之前,首先要建立一个交叉编译环境,这是一套编译器、连接器和libc库等组成的开发环境。本文结合自己做嵌入式交叉编译开发工作的经验,同时结合自己的体会,做了一个介绍 随着消费类电子产品的大量开发和应用和Linux操作系统的不断健壮和强大,嵌入式系统越来越多的进入人们的生活之中,应用范围越来越广。 在裁减和定制Linux,运用于你的嵌入式系统之前,由于一般嵌入式开发系统存储大小有限,通常你都要在你的强大的pc机上建立一个用于目标机的交叉编译环境。这是一个由编译器、连接器和解释器组成的综合开发环境。交叉编译工具主要由binutils、gcc 和glibc 几个部分组成。有时出于减小libc 库大小的考虑,你也可以用别的c 库来代替glibc,例如uClibc、

Arm linux交叉编译

1、编译C++程序,链接是需要添加 -lstdc++ g++和gcc本质一样的,本质上还是gcc,我们实验室所有的c++程序都是用gcc编译的,一般的程序用gcc足够了。对于C++ 程序,编译的时候用gcc 或者g++ 都可以。但是在进行连接的时候最好用g++,因为用g++ 会自动进行C++ 标准库的连接;用gcc 连接C++ 程序也可以,但是需要人为指定连接C++ 标准库,否则就会出现 undefined reference to `__gxx_personality_v/0' 之类的错误。可见-lstdc++ 所对应的是标准C++库。 2、linux OpenCV 静态链接错误,链接是需要添加–ldl undefined reference to `dlopen' undefined reference to `dlerror' undefined reference to `dlsym' 对dlopen, dlerror, dlsym 未定义的引用,缺少链接库,链接时加上选项-ldl 3、对icvPuts, icvGets, gzputs, gzgets, gzopen, gzclose 未定义的引用,编译错误如下 ./obj/local/armeabi-v7a/libopencv_core.a(persistence.cpp.o): In function `icvPuts(CvFileStorage*, char const*)':persistence.cpp:(.text._ZL7icvPutsP13CvFileStoragePKc+0x20): undefined reference to `gzputs'./obj/local/armeabi-v7a/libopencv_core.a(persistence.cpp.o): In function `icvGets(CvFileStorage*, char*, int)':persistence.cpp:(.text._ZL7icvGetsP13CvFileStoragePci+0x26): undefined reference to `gzgets'./obj/local/armeabi-v7a/libopencv_core.a(persistence.cpp.o): In function 缺少zlib库引起的,编译链接时加上-lz 4、如何在configure时,将编译参数传入,改变默认的编译器gcc成arm-linux编译器 按照INSTALL中的介绍,也是常用的方法,在configure的时候,加上–host=arm-linux,结果没有实现我们要的效果,没有将编译器从默认的gcc改成arm-linux-gcc,编译器还是用的默认的gcc。 参数传递必须像CFLAGS=-O2 ./configure一样,将参数设置放在configure的前面: CC=arm-linux-gcc ./configure才能识别的。(如果CC参数放在configure后面:./configure CC=arm-linux-gcc 则不能识别。) –prefix=/usr/crifan/lrzsz,表示具体安装到哪里 完整的配置: CFLAGS=-O2 CC=arm-linux-gcc ./configure–cache-file=cache_file_0 –prefix=/usr/crifan/lrzsz 5、zlib的交叉编译 交叉编译zlib-1.2.3.tar.bz2:

交叉编译几种常见的报错

交叉编译几种常见的报错 由于是第一次交叉编译,不知道会出现什么问题,思路就是先把gcc和ld都改成arm的,然后遇到什么问题在解决什么问题,以下过程都是在这个思路下进行。 1.指定arm的编译器和连接器: 只是把gcc改为arm-none-linux-gnueabi-gcc,ld改为arm-none-linux-gnueabi-ld,其他的都没有 修改。出现以下错误: arm-none-linux-gnueabi-ld: warning: library search path "/usr/local/lib" is unsafe for cross-compilation arm-none-linux-gnueabi-ld: skipping incompatible /usr/local/lib/libfreetype.so when searching for -lfreetype arm-none-linux-gnueabi-ld: skipping incompatible /usr/local/lib/libfreetype.a when searching for -lfreetype arm-none-linux-gnueabi-ld: cannot find -lfreetype 分析原因是:链接的这些库文件都是在PC编译器下编译出来的,现在把它们和用arm-none-linux-gnueabi-gcc编译出来的文件做链接,当然会出错。 解决方法:这些库重新用arm-gcc重新编译生成相应的库。 下面使用是重新编译库文件的过程: 重新编译freetype 根据交叉编译的文档,我创建了一个文件夹/usr/local/arm-linux来存放编译后的库文件。执行: ./configure –host=arm-none-linux-gnueabi –prefix=/usr/local/arm-linux 注意:host的参数应该是交叉编译环境的前缀。 另外,freetype自动生成的include文件夹有点小问题,编译完成后的include目录结构是 /include/ft2build.h和

交叉编译器简介

交叉编译器 在一种计算机环境中运行的编译程序,能编译出在另外一种环境下运行的代码,我们就称这种编译器支持交叉编译。这个编译过程就叫交叉编译。简单地说,就是在一个平台上生成另一个平台上的可执行代码。这里需要注意的是所谓平台,实际上包含两个概念:体系结构(Architecture)、操作系统(Operating System)。同一个体系结构可以运行不同的操作系统;同样,同一个操作系统也可以在不同的体系结构上运行。举例来说,我们常说的x86 Linux平台实际上是Intel x86体系结构和Linux for x86操作系统的统称;而x86 WinNT平台实际上是Intel x86体系结构和Windows NT for x86操作系统的简称。 有时是因为目的平台上不允许或不能够安装我们所需要的编译器,而我们又需要这个编译器的某些特征;有时是因为目的平台上的资源贫乏,无法运行我们所需要编译器;有时又是因为目的平台还没有建立,连操作系统都没有,根本谈不上运行什么编译器。 交叉编译这个概念的出现和流行是和嵌入式系统的广泛发展同步的。我们常用的计算机软件,都需要通过编译的方式,把使用高级计算机语言编写的代码(比如C代码)编译(compile)成计算机可以识别和执行的二进制代码。比如,我们在Windows平台上,可使用Visual C++开发环境,编写程序并编译成可执行程序。这种方式下,我们使用PC平台上的Windows 工具开发针对Windows本身的可执行程序,这种编译过程称为native compilation,中文可理解为本机编译。然而,在进行嵌入式系统的开发时,运行程序的目标平台通常具有有限的存储空间和运算能力,比如常见的ARM 平台,其一般的静态存储空间大概是16到32MB,而CPU的主频大概在100MHz到500MHz之间。这种情况下,在ARM平台上进行本机编译就不太可能了,这是因为一般的编译工具链(compilation tool chain)需要很大的存储空间,并需要很强的CPU运算能力。为了解决这个问题,交叉编译工具就应运而生了。通过交叉编译工具,我们就可以在CPU能力很强、存储控件足够的主机平台上(比如PC上)编译出针对其他平台的可执行程序。 要进行交叉编译,我们需要在主机平台上安装对应的交叉编译工具链(cross compilation tool chain),然后用这个交叉编译工具链编译我们的源代码,最终生成可在目标平台上运行的代码。常见的交叉编译例子如下: 1、在Windows PC上,利用ADS(ARM 开发环境),使用armcc编译器,则可编译出针对ARM CPU的可执行代码。 2、在Linux PC上,利用arm-linux-gcc编译器,可编译出针对Linux ARM平台的可执行代码。

Vmware安装Ubuntu及交叉编译器

在虚拟机下Linux(Ubuntu)的安装 1.创建新的虚拟机 2.点击自定义 3、选Workstation版本的兼容性,然后点击下一步

4、选择稍后安装操作系统,然后下一步。 也可以选择第二项“安装程序光盘映像文件ISO”,之后会VMware会自动得知你的iso是Linux(Ubuntu),只要求你输入全名,和用户名密码等简单的用户设定,这是一个简单安装,可以跳过下面的步骤。我觉得是因为这个OS的自动安装,不完全,导致一些核心命令无法使用、无反应等一些问题。所以有更高要求,不能选这项,需要完全、自定义的安装。 5、客户机操作系统选择Linux,版本选择Ubuntu 64位,然后下一步。

6、设置虚拟机名称(即每次启动VMware左上方显示的名字),之后选择你想的在WINDOWS操作系统里的安装路径(默认在C 盘,很不方便,不要安装在C盘)。 7、设置虚拟机处理器数量,选择处理器数量为2(看情况而定,我是i7处理器,配置较好无压力的,感觉双核比单核好一些)

8、.内存大小选择,使用自动推荐的1G内存(本机内存8G)。 9、网络类型选择,本次选择默认的“NAT”

注:使用“NAT”的话,需要外面的WIN7使用一根线连接上网,才能在Ubuntu里上网(如同Ubuntu是你的真正OS的感觉,不需要手工配置任何IP信息),不能默认使用无线连接。这点对有些笔记本同学可能会造成麻烦。当然不是说不能通过手动配置IP相关解决,但是为了避免每次都配置的麻烦,请直接使用“bridged”桥接手动配置。 9. 默认即可,直接“下一步”

10、选择“将虚拟磁盘存储为单个文件” 11.虚拟机文件的存放地址,点击“下一步”即可 12、点击“完成”

生物实验室操作规范安全手册(20201101121416)

实验室操作规范 本规程中列出了最基本的实验室操作和程序,他们是微生物学操作技术规范的基础。在规划实验室和国家级实验室项目时,可以根据这些规程来制订实验室安全操作的书面程序。每个实验室都应该采用“安全手册”或“操作手册”,其中定义了已知的和潜在的危害,并规定了特殊的操作程序来避免或尽量减小这种危害。规范的微生物学操作技术是实验室安全 的基础,而专门的实验设备仅仅是一种补充,绝不能替代正确的操作规范。下面列出了一些 最重要的概念。 进入规定 1在处理危险度2级或更高危险度级别的微生物时,在实验室门上应标有国际通用的生物危害警告标志(图1)。 2、只有经批准的人员方可进入实验室工作区域。 3、实验室的门应保持关闭。 4、儿童不应被批准或允许进入实验室工作区域。 5、进入动物房应当经过特别批准。 6、与实验室工作无关的动物不得带入实验室。 人员防护 1在实验室工作时,任何时候都必须穿着连体衣、隔离服或工作服。 2、在进行可能直接或意外接触到血液、体液以及其他具有潜在感染性的材料或感染性动物 的操作时,应戴上合适的手套。手套用完后,应先消毒再摘除,随后必须洗手。 3、在处理完感染性实验材料和动物后,以及在离开实验室工作区域前,都必须洗手。 4、为了防止眼睛或面部受到泼溅物、碰撞物或人工紫外线辐射的伤害,必须戴安全眼镜、面罩(面具)或其他防护设备。 5、严禁穿着实验室防护服离开实验室,(如去餐厅、咖啡厅、办公室、图书馆、员工休息室和卫生间)。 6、不得在实验室内穿露脚趾的鞋子。 7、禁止在实验室工作区域进食、饮水、吸烟、化妆和处理隐形眼镜。 8、禁止在实验室工作区域储存食品和饮料。 9、在实验室内用过的防护服不得和日常服装放在同一柜子内。 操作规范 1严禁用口吸移液管。 2、严禁将实验材料置于口内。严禁舔标签。 3、所有的技术操作要按尽量减少气溶胶和微小液滴形成的方式来进行。 4、应限制使用皮下注射针头和注射器。除了进行肠道外注射或抽取实验动物体液,皮下注射针头和注射器不能用于替代移液管或用作其他用途。 5、出现溢出、事故以及明显或可能暴露于感染性物质时,必须向实验室主管报告。实验室应保存这些事件或事故的书面报告。 6、必须制订关于如何处理溢出物的书面操作程序,并予以遵守执行。 7、污染的液体在排放到生活污水管道以前必须清除污染(采用化学或物理学方法)。根据所处理的微生物因子的危险度评估结果,可能需要准备污水处理系统。 8、需要带出实验室的手写文件必须保证在实验室内没有受到污染。 实验室中标本的安全操作 实验室标本的收集、运输和处理不当,会带来使相关人员感染的危险。

ARM、linux常用服务器+交叉编译工具链

ARM、linux常用服务器+交叉编译工具链 1. tftp服务器在安装linux时通常可供选择是否安装tftp服务器 启动后可通过在控制终端输入netstat -a|grep tftp查看是否已经安装若已安装则为如下打印信息: [root@localhost /]# netstat -a|grep tftp 若没有安装则可使用 –ivh tftp-server-0.42-3.1.i386.rpm 进行安装然后建立主要工作目录mkdir /tftpboot 接下来配置tftp服务器 /etc/init.d/tftp # default: off # description: The tftp server serves files using the trivial file transfer \par # protocol. The tftp protocol is often used to boot diskless \par # workstations, download configuration files to network-aware printers, \par # and to start the installation process for some operating systems. tftp _type = dgram

= udp = yes = root = /usr/sbin/in.tftpd _args =-s /tftpboot = no _source = 11 = 100 2 = IPv4 注意修改server_args = -s /tftpboot为你tftp工作目录。 接下来便是重启tftp 服务器了/etc/init.d/xinetd restart打印出如下信息[root@localhost /]# /etc/init.d/xinetd restart xinetd: [ OK ] xinetd: [ OK ] 表示重启成功接下来便可查看是否已经安装成功 [root@localhost /]# netstat -a|grep tftp

实验室相关标准操作规程完整

实验室生物安全实施标准操作规程 1、目的:预防与控制院感管理工作达到预期目标,防止医务人员发生职业暴露。 2、适用范围:检验部门工作人员。 3、定义:无 4、管理要求: 4.1进入规定 4.1.1在实验室入口处应贴生物危害警告标志。注明病原微生物、实验室生物安全等级和负责人电话。 4.1.2未经许可,非授权人员不应进入实验室。 4.1.3. 实验室门应保持关闭状态。 4.1.4. 与实验室工作无关的动物、个人衣物不应带入实验室。 4.2.个人防护 4.2.1.工作服 4.2.1.1. 在实验室工作时,应穿着工作服。 4.2.1.2. 不应穿着实验室工作服离开实验室。 4.2.1.3. 实验室工作服不应与日常服装放在一起。 4.2.2.手套 在进行可能直接或意外接触到血液、体液以及其他具有潜在感染性材料的操作时,应戴上合适的手套。脱手套后应洗手。用过的一次性手套应丢入感染性医疗废物袋内。 4.2.3.洗手 脱手套后以及离开实验室前,都应洗手。 4.2.4.其他防护 4.2.4.1. 当有可能受到喷溅物污染、碰撞或人工紫外线辐射伤害时,应戴合适的护目镜。 4.2.4.2. 不应再实验室内穿露脚趾的鞋子。 4.2.4.3. 不应在实验室工作区域进食、饮水、吸烟、化妆和处理接触镜(隐形眼镜)。 4.2.4.4. 不应在实验室工作区域内储存食品和饮料。 4.3.实验室工作区 4.3.1. 实验室应保持清洁整齐,严禁摆放和实验无关的物品。 4.3.2. 每天工作结束后,应消毒工作台面和生物安全柜台面。活性物质溅出后要随时消毒。 4.3.3. 所有受到污染的材料、标本和培养物应废弃于医疗废物容器内,不得与普通垃圾混放。需要清洁再利用的材料,应先压力蒸汽灭菌处理。 4.3.4. 需要带出实验室的手写文件应保证在实验室内没有受到污染。 参考文献:[1] WHO. 实验室生物安全手册,第3版.2004. 5、标准无 6、流程(无) 7、表单(无) 8、相关文件 8.1参考文献:[1] 中华人民共和国卫生部. 公共场所集中空调通风系统卫生规范[S].2006. [2] 中华人民共和国卫生部.医院空气净化管理规范[WS/T 368-2012].

嵌入式Linux开发交叉编译器的安装

实验三嵌入式Linux开发交叉编译器的安装 班级:B08511 姓名:张媛媛学号:20084051112 成绩: 一、实验目的 安装ARM平台下的嵌入式Linux开发的交叉编译器arm-linux-gcc,编译简单的程序并通过NFS方式运行于开发板上,比较与gcc生成的可执行文件的不同; 二、实验设备 硬件:PC机开发板 三、实验原理 嵌入式系统的交叉开发环境一般包括交叉编译器、交叉调试器和系统仿真器,其中交叉编译器用于在宿主机上生成能在目标机上运行的代码,而交叉调试器和系统仿真器则用于在宿主机与目标机间完成嵌入式软件的调试。在采用宿主机/目标机模式开发嵌入式应用软件时,首先利用宿主机上丰富的资源和良好的开发环境开发和仿真调试目标机上的软件,然后通过串口或者用网络将交叉编译生成的目标代码传输并装载到目标机上,并在监控程序或者操作系统的支持下利用交叉调试器进行分析和调试,最后目标机在特定环境下脱离宿主机单独运行。 本次实验涉及到的是嵌入式Linux开发的交叉编译器arm-linux-gcc,从体系结构角度来讲,借助其编译生成的程序是由ARM平台下机器指令构成的可执行程序。 四、实验内容 (1)arm-linux-gcc-3.4.1.tgz为编译器的文件压缩包(实验室机器中位于windows系统的“c:\嵌入式Linux实验\Tools”),为3.4.1版本的交叉编译工具,用来编译常用的一些代码;可通过虚拟机与Windows系统的共享文件夹将其拷贝到Linux系统中; 安装命令:tar xvfz arm-linux-gcc-3.4.1.tgz –C / (2)设置环境变量 可以在/etc/bash.bashrc文件中加入: export PATH=$PATH:/usr/local/arm/3.4.1/bin 就可以直接使用arm-linux-gcc的一些命令; (3)查看arm-linux-gcc编译器版本 输入arm-linux-gcc –v可查看编译器版本,如图3-1: 图3-1 编译器版本

实验室管理和使用操作手册

实验室管理和使用操作手册

实验室管理和使用操作手册 一、做好实验室的布置 1、门牌 2、管理制度 3、标语 4、课程表、座位表 管理规范 实验室内的各种配套设施要巧安排,要适合实验室管理与使用的要求,做到布局合理,整齐划一。如在实验教学及仪器药品保管过程中会产生各种有害气体,因此实验室都要建立良好的通风排气装置,以便及时把有害气体排出室外。中小学一般采用比较经济的排气扇通风装置,有条件的学校应采用先进的、吸气能力强、噪声低的管道汇流式通风装置。实验教师要经常检查通风设施,检查是否完好,发现问题及时采取相应措施。实验室应配备废液处理装置,实验中废液应收集,经集中处理后排入污水管道;防火设施到位;实验室前后标语与环境相符;实验室有关制度齐全;课程表、座位表张贴醒目。 二、做好实验设备的管理 1、安全管理:水、电、消防、危险品、防

潮、防尘、防霉 2、实验设备管理:教师演示台学生分组实验台、准备台、凳子、水槽、综合布线、仪器柜、药品柜、标本柜 管理规范 (一)仪器橱窗的管理 存放仪器的橱柜要色调一致,摆放整齐,仪器橱摆放时应注意采光、通风、美观和方便等要求,同时还应考虑便于仪器分类存放。一般情况下仪器橱呈一字形排列,橱门要与窗户垂直,便于通风。各排仪器橱之间要留有不少于1 米的通道,便于取放。仪器橱一般不要靠墙摆放,非靠墙不可的,橱与墙之间应留有10cm 左右的通风空间。一般新旧仪器橱要相对分开,高矮、式样相近的仪器橱要放在同一排或同一室。仪器橱定位后要编序号,序号一般编在仪器橱正面上方。 (二)实验桌凳的管理 学生实验桌应排列整齐,色调一致,每张实验桌应编有序号。要教育学生爱护实验桌、凳,不要在实验桌、凳上乱涂乱写,实验完成后要保持桌面的洁净。 (三)实验室水电设施的管理

交叉编译工具链的安装配置

交叉工具链的生成 https://www.360docs.net/doc/bc2561168.html,/uid-9185047-id-3158569.html 软件平台:ubuntu 10.10 主机编译器:gcc 4.5.1 硬件平台:s3c2410 1、准备环境 sudo apt-get install bison flex texinfo automake libtool cvs patch libncurses5-dev aria2 curl g++ subversion gawk cvsd expat gperf libexpat-dev 注:有的没安装,第4步无法生成makefile,要先安装gperf 2、下载crosstool-ng软件包 crosstool-ng-1.17.0.tar.bz2 3、相应目录的建立 sudo mkdir -p /usr/local/arm sudo chmod 777 /usr/local/arm // 将arm目录权限设置为777 cd /usr/local/arm mkdir 4.7.2 sudo mkdir -p /home/crosstool cd /home/s3c2410/crosstool sudo mkdir crosstool-build crosstool-install src-4.7.2 (编译目录、安装目录、目标源码目录) 4、安装crosstool-ng cp crosstool-ng-1.17.0.tar.bz2 /home/s3c2410/crosstool/ 解压crosstool-ng-1.17.0.tar.bz2, tar -xvf crosstool-ng-1.17.0.tar.bz2 进入目录,进行配置: cd /home/s3c2410/crosstool/crosstool-ng-1.17.0 将/home/s3c2410/crosstool/crosstool-install/lib/ct-ng.1.17.0/下的https://www.360docs.net/doc/bc2561168.html,p cp到/etc/bash_completion.d 配置安装目录为/home/s3c2410/crosstool/crosstool-install 注:有的没安装gperf,无法生成makefile,要先安装gperf sudo ./configure --prefix=/home/crosstool/crosstool-install sudo make --编译 sudo make install --安装

了解Linux安装ARM交叉编译器的步骤

了解Linux安装ARM交叉编译器的步骤 安装交叉编译环境 gcc是linux环境下的asm和c语言编译器,生成的是可以在x86平台上运行的可执行程序;而在开发板上运行的程序则需要arm平台专用的编译器,也称为交叉编译器; 交叉编译器可以由开发人员手工定制,也可用使用别人已经编译好的,比如arm-linux-gcc; (1)安装交叉编译器 ---------------------- $>cd /home/zhang/tools/ $>tar xzvf crosstools-451.tar.gz -C /usr/local/ $>cd /usr/local $>ls 可以看到一个子目录toolschain/,该目录下存放了用于arm平台的交叉编译器和其他工具。arm-linux-gcc等可执行程序位于bin子目录下。 (2)环境变量的设置 ---------------------- 如果希望在控制台中直接运行arm-linux-gcc,则必须把arm-linux-gcc所在的路径记录到控制台的默认环境变量PATH中,这需要修改某些配置文件。 如果使用root用户,则可以修改如下文件: $>vim ~/.bashrc 在文件的最后加入以下内容: export PATH=/usr/local/toolschain/4.5.1/bin:$PATH //写入/etc/profile或/etc/bashrc也可 退出vim后,使新的环境变量生效: $>source ~/.bashrc 可以用如下命令验证是否可直接运行交叉编译器: $>which arm-linux-gcc 如显示/usr/local/toolschain/4.5.1/bin/arm-linux-gcc则说明环境变量配置好;

实验室操作手册

1微生物鉴定 1.1 显微镜相关操作 1.1.1 简单染色 实验步骤: 涂片:取干净载玻片一块,在载玻片上加一滴蒸馏水,用接种环取菌涂在载玻片上,做成菌悬液。 晾干:让载玻片自然晾干或者在酒精灯火焰上方用火缓慢烘干。 固定:拿住载玻片一端,让菌膜朝上,通过火焰2~3次固定(以不烫手为宜)。染色:将固定过的载玻片加复红染色1~2min。 水洗:用蒸馏水洗去载玻片上的染色液。 干燥:将载玻片放在空气中晾干或用吸水纸吸干。 镜检:先用低倍镜观察,再切换到高倍镜观察,并在找到视野后,将高倍镜转出,在载玻片上加入一滴香柏油,将油镜浸入油滴中仔细调焦观察细菌的形态。 1.1.2 革兰氏染色 实验步骤: 涂片:取干净载玻片一块,在载玻片上加一滴蒸馏水,用接种环取菌涂在载玻片上,做成菌悬液。 晾干:让载玻片自然晾干或者在酒精灯火焰上方用火缓慢烘干。 固定:拿住载玻片一端,让菌膜朝上,通过火焰2~3次固定(以不烫手为宜)。结晶紫染色:在载玻片上加适量(盖满细菌涂面)的结晶紫染色液染色1min。水洗:用蒸馏水洗去结晶紫染液。 媒染:滴加碘液,媒染1min。 水洗:用蒸馏水洗去碘液。 脱色:将载玻片倾斜,连续滴加95%乙醇脱色20~25s至流出液无色,立即水洗。复染:滴加番红复染5min。

水洗:用蒸馏水洗去番红染液。 晾干:将染色好的载玻片放在空气中晾干或用吸水纸吸干。 镜检:先用低倍镜观察,再切换到高倍镜观察,并在找到视野后,将高倍镜转出,在载玻片上加入一滴香柏油,将油镜浸入油滴中仔细调焦观察细菌的革兰氏染色反应性。 1.1.3 扫描电镜样品制备 取材:选取培养良好的微生物菌液约5~7mL。分装到1mL离心管中,12000rpm 离心5min,弃置上清液,收集菌体。 清洗:用PBS缓冲液(pH=7.2)清洗菌体,12000rpm离心5min,弃置上清液,收集菌体,重复5~7次,确保菌液中没有残留培养基。 固定:常用固定剂有 2.5%戊二醛,1%四氧化锇。在4℃下固定一晚上。次日用PBS缓冲液(pH=7.2)清洗样品。 脱水:用40%、70%、90%和100%的乙醇分别依次脱水,每次15min。经脱水后的样品应马上干燥,若无法进行干燥操作,应当将脱水后的样品放置在-80℃冰箱中保存。 干燥:菌体样品一般采用真空冷冻干燥法、临界点干燥法对菌体进行干燥处理。镀膜:将菌体样品放在真空镀膜机内,把金喷镀到样品表面后。镀膜完成后取出样品制备完毕。 1.1.4 透射电镜样品制备 超薄切片技术是为透射电镜观察提供薄样品的专门技术,广泛应用于生物体的各种细胞的超微结构观察。一般厚度在10~100nm的切片称为超薄切片,制作这种切片的技术叫做超薄切片技术。 样品制备步骤: 取材:选取培养良好的微生物菌液约5~7mL。分装到1mL离心管中,12000rpm 离心5min,弃置上清液,收集菌体。 清洗:用PBS缓冲液(pH=7.2)清洗菌体,12000rpm离心5min,弃置上清液,

ARM、linux常用服务器+交叉编译工具链

1.tftp服务器在安装linux时通常可供选择是否安装tftp服务器 启动后可通过在控制终端输入netstat -a|grep tftp查看是否已经安装若已安装则为如下打印信息: [root@localhost /]# netstat -a|grep tftp udp 0 0 *:tftp *:* 若没有安装则可使用 rpm –ivh tftp-server-0.42-3.1.i386.rpm 进行安装然后建立主要工作目录mkdir /tftpboot 接下来配置tftp服务器 vim /etc/init.d/tftp # default: off # description: The tftp server serves files using the trivial file transfer \ # protocol. The tftp protocol is often used to boot diskless \ # workstations, download configuration files to network-aware printers, \ # and to start the installation process for some operating systems. service tftp { socket_type = dgram protocol = udp wait = yes user = root server = /usr/sbin/in.tftpd server_args = -s /tftpboot disable = no per_source = 11 cps = 100 2 flags = IPv4 } 注意修改server_args = -s /tftpboot为你tftp工作目录。 接下来便是重启tftp 服务器了/etc/init.d/xinetd restart打印出如下信息 [root@localhost /]# /etc/init.d/xinetd restart Stopping xinetd: [ OK ] Starting xinetd: [ OK ] 表示重启成功接下来便可查看是否已经安装成功 [root@localhost /]# netstat -a|grep tftp udp 0 0 *:tftp *:* 2.nfs服务器 首先查看nfs服务器是否被安装(这里为red-had5)rpm –q nfs-utils若打印出如下信息则表示已经被安装 [root@localhost ~]# rpm -q nfs-utils nfs-utils-1.0.9-24.el5 若没有安装nfs服务器则先下载相应的nfs服务器包百度一个即可 然后rpm –ivh nfs- utils-1.0.9-24.el5.i386.rpm这里使用的nfs版本为utils-1.0.9-24.el5故不同版本安装不同,然后进入nfs配置

实验室设备操作规程完整

低速台式大容量离心机操作规程 操作步骤: (1)插上电源,待机指示灯亮;打开电源开关,此时数码管显示的闪烁数字为机器工作转速的出厂设定值。 (2)设定机器的工作参数,如何运转时间,工作转速等。 (3)按控制面板上的运转键,离心机开始运转。在预先设定的加速时间,其转速升至预先设定值。时数码管显示的闪烁数字为机器工作转速的出厂设定值。 (4)在预先设定的运转时间到后(不包括加速时间),离心机开始减速,其转速在预先设定的减速时间降至零。 (5)按控制面板上的停止键(stop),数码管显示dcdT,数秒钟后即显示闪烁的转速值,恢复待机状态,这时机器已准备好下一次工作。

高压灭菌器操作规程 操作步骤: (1)将待灭菌的物品予以妥善包扎,各包之间留有间隙顺序地放入灭菌桶的带板上。 (2)在主体加清水6升,在继续使用的情况下,应保持此位置。(3)将灭菌桶放入主体,然后把盖上的放气饮管插入桶侧的圆槽,对正盖主体的螺栓槽,顺序地将相对方位的翼形螺母予以均质旋紧,使盖与主体密合。 (4)加热开始时应将放气阀摘不放在垂直“开放”方位,排出桶空气,当有较急的蒸汽喷出时,即将该摘子扳回水平“关闭”方位。此时压力表加热针会随之逐渐上升,指示出灭菌的压力。(5)灭菌终了时,应首先将热源熄灭,使它自然冷却直至压力表指针回复至零位,再待数分钟后,打开放气阀,排出余冷后,才能将盖开启。

干燥箱操作规程 操作步骤: (1)把待灭菌物品放入箱时,应留有一定空隙,使空气能自然流通。(2)将玻璃门与外门关上,并将箱顶上的冈顶活门适当旋开。(3)接通电源后,根据物品灭菌所需温度选择不同档,加温灭菌,温度较高时,小心烫伤。 (4)开启鼓冈开关,鼓风机工作。 (5)温度设定,揿进控温仪器设定,测量按钮开关,旋转设定按钮,设定所需温度值。设定完毕,再揿一下设定,测量按钮开关, 是其伸出时,则显示箱测量温度。 (6)当指示灯指示恒温或加热状态时,说明仪器正常工作。 培养箱操作规程

交叉编译mtd-utils工具(linux下flash工具)

一、下载源码包并解压 wget ftp://https://www.360docs.net/doc/bc2561168.html,/pub/mtd‐utils/mtd‐utils‐1.5.1.tar.bz2 wget https://www.360docs.net/doc/bc2561168.html,/zlib‐1.2.8.tar.gz wget https://www.360docs.net/doc/bc2561168.html,/opensource/lzo/download/lzo‐2.03.tar.gz wget https://https://www.360docs.net/doc/bc2561168.html,/pub/linux/utils/util‐linux/v2.21/util‐linux‐2.21.1.tar.gz tar zxvf zlib‐1.2.8.tar.gz tar zxvf lzo‐2.03.tar.gz tar jxvf mtd‐utils‐1.5.1.tar.bz2 tar zxvf util‐linux‐2.21.1.tar.gz 二、编译安装zlib 1) cd zlib‐1.2.8 CC=arm‐none‐linux‐gnueabi‐gcc ./configure ‐‐prefix= /usr/local/arm‐2007q1/arm‐none‐linux‐gnueabi ‐‐shared (注意:这里的/usr/local/arm‐2007q1/arm‐none‐linux‐gnueabi是交叉编译工具默认目录。) 2) make make install cd .. 3) 安装完成后会在/usr/local/arm‐2007q1/arm‐none‐linux‐gnueabi /目录下生成三个目录:include、lib、share。 安装完后检查一下目录/usr/local/arm‐2007q1/zlib/ 假如 include 中没有 zlib.h 之类的头文件,lib 中没有 libz.so.1.2.3 ,那就自己手动拷到这些目录下去,记着拷的时候把所有的 *.h 都需要拷过去,在拷库的时候用 cp ‐Ca libz.* /…./lib 就行,要用上 ‐Ca 选项。 三、编译安装lzo 1) cd lzo‐2.03/ CC=arm‐none‐linux‐gnueabi‐gcc ./configure ‐‐host=arm‐none‐linux‐gnueabi ‐‐prefix=/usr/local/arm‐2007q1/arm‐none‐linux‐gnueabi

实验室管理手册

实验室管理手册 1.实验室简介 本公司实验室创建于2007年,隶属于质检科,为满足各类产品的开发及生产中各项测试需求而设立。 实验室具有一定的检测能力,拥有国际、国内较为先进的检测设备和高精度的量检具,还配备了高素质、业务精的实验室人员。 实验室开设了拉、压力试验、高低温实验等检测项目。为增强我公司的检测能力,公司正准备购买一些国际、国内先进的检测设备。凭借实验室精良的设备和ISO/TS16949管理体系以及实验室全体人员的共同努力,我们正在一步一步地向更高的目标迈进。 2.实验室质量方针、大纲 方针:提高工作水平和服务质量,为各项测试提供及时、准确、可靠的试验数据。 大纲:实验条件先进化,操作规程标准化,管理制度规范化。 3.实验室组织机构图:

4.实验流程图: 5.实验室人员岗位职责 5.1实验室主管 5.1.1熟悉国际、国内颁布的有关质量、标准、计量等方面的政策和法令、法规。 5.1.2负责实验室人员素质需求策划、试验设备仪器配置。 5.1.3熟悉各项试验环境条件,掌握实验室仪器工作状况,制订并监督执行各类仪器设备的操作、维护、保养。 5.1.4签发实验室各项测试规程、操作规程等内部文件。 5.1.5负责实验室人员安全和劳动保护。 5.1.6批准实验室试验报告以及向上级有关领导汇报实验室运行状况。 5.2实验室试验人员 5.2.1严格执行国家颁布的有关质量、计量方面的政策和法令、法规。 5.2.2严格按各项试验规程和试验设备操作规程进行试验,确保试验数据真实可靠。 5.2.3负责提出人员配置,仪器、环境条件改善和安全方面的建议。

5.2.4待测试件和测试完成件应定置摆放,进行编号标识管理。 5.2.5严格、认真作好各项测试记录,并妥善保存。 5.2.6超过保存期限的测试件定期清理、合理处理,确保实验室5S工作要求。 6.实验室人员资格要求 6.1实验室主管 6.1.1达到相关专业大学专科以上学历和文化程度。 6.1.2掌握有关的质量、标准、计量等方面的政策和法令、法规。 6.1.3了解实验室基本知识和有关技术知识与理论。 6.1.4熟悉管理,尤其是实验室管理的基本理论及技能,有解决有关问题的能力。 6.1.5了解企业的基本状况及对实验室的要求。 6.1.6不断学习新技术、新法规。 6.2试验人员 6.2.1达到中等以上文化程度。 6.2.2经过岗位培训,考核取得所从事项目的上岗证。 6.2.3熟悉有关试验和计量法令、法规。 6.2.4掌握有关基础知识及所从事专业的基本理论、技术规范、操作技能及新技术。 7.实验室人员培训 7.1新职员的培训 7.1.1理论培训:新职员进入实验室后必须全面学习操作规程,并对有关的实验理论进行学习。 7.1.2操作培训:指定一个实验技术员对新职员的操作进行指导,并定期进行考核,直到达到独立上岗操作的要求。 7.1.3资格培训:当新职员能进行独立实验以后,向办公室提出申请,将其送有关部门培训合格,并授资格证书。 7.2新测试程序的培训:组织所有实验技术人员对新测试程序进行学习,同时根据新测试程序进行实验,各自记录其中经验,定期对其进行讨论学习。 7.3新设备操作培训 7.3.1由办公室派人到有关单位进行培训,并获取有关设备操作证。

相关文档
最新文档