真机配c1841步骤
gcc的四个步骤

gcc的四个步骤
摘要:
1.编译器概述
2.预处理
3.编译
4.链接
正文:
一、编译器概述
GCC(GNU Compiler Collection)是一个开源的编译器套件,主要用于C、C++等语言的编译。
GCC 的编译过程可以分为四个步骤,分别是预处理、编译、优化和链接。
本文将详细介绍这四个步骤。
二、预处理
预处理是GCC 编译过程中的第一步。
在这一阶段,GCC 会读取源代码文件,并对其进行预处理。
预处理的主要任务是处理源代码中的宏定义、头文件包含、条件编译等指令。
在预处理完成后,GCC 会将源代码转换为中间代码,即.i 文件。
三、编译
编译是GCC 编译过程中的核心环节。
在这一阶段,GCC 会读取.i 文件(预处理后的源代码),并生成目标文件(如.o 文件)。
编译阶段主要包括词法分析、语法分析、语义分析、中间代码生成、代码优化等环节。
在这一过程中,GCC 会将源代码翻译成机器语言,并生成可执行文件。
四、链接
链接是GCC 编译过程的最后一步。
在这一阶段,GCC 会读取目标文件(.o 文件)和库文件(.a 文件),并将它们合并成一个可执行文件。
链接过程中,GCC 会解析目标文件中的外部符号,并在库文件中寻找对应的定义,然后将这些符号绑定到最终的可执行文件中。
链接完成后,即可得到一个完整的可执行程序。
总结:GCC 编译过程包括预处理、编译、优化和链接四个步骤。
预处理阶段主要处理源代码中的宏定义、头文件包含等指令;编译阶段将源代码转换为机器语言;链接阶段将目标文件和库文件合并为可执行文件。
TC调试教程

TC调试教程所有资料仅供个人学习使用,未经许可,不得传播。
PC主要用于学习,要要打游戏。
编译器版本:Borland Turbo C++ version 3.0杜金国20070831第1章起动TCE:\TC\BIN路径下双击下面的图标编译环境不需要安装,直接运行即可。
第2章运行环境设置必须设置正确的编译环境,否则编译错误。
从菜单OPTIONS→directories,将出现一个对话框,是设置路径的。
一共有4个栏目,下面将分别介绍。
2.1 #include directory,设置:E:\TC\include作用:设置包含头文件的路径2.2 #library diretoryE:\TC\LIB作用:设置库文件的路径2.3 Output directoryE:\TC\practice作用:编译之后输出文件的的路径,在这个例子当中,输出文件夹放在TC的下一级目录。
不建议将用户代码放在TC编译器的路径下,系统崩溃可能造成灾难性后果。
可以在下面的路径建立用户目录:E:\MyProgram\yongbaohu然后重新设置编译路径:Output directoryE:\MyProgram\yongbaohu在DOS下面目录及文件名的长度不能太长,一般是8.3格式。
如果文件名太长,编译错误。
在这个例子当中,用户的程序放在E:\TCEXE\下面。
2.4 Source DircetoryE:\TC\practice作用:编译后输出的文件路径。
也可以先在下面的路径建立一个文件夹,然后设置路径如下:E:\MyProgram\yongbaohu第3章第一个程序在路径 E:\MyProgram\yongbaohu下,建立一个C源程序文件:MyApplication123.c#include <stdio.h>void main(void){printf(“This is my first program.\n”);getch( );//便于调试查看结果,可以屏蔽。
C8051F020单片机初始化程序和编译步骤

C8051F020单片机初始化程序和编译步骤2011-02-15 12:20:06| 分类:默认分类| 标签:|字号大中小订阅C8051F020编程步骤一、编程步骤:1、看门狗设置2、系统初始化3、端口初始化4、对应功能初始化(如:串口,定时器,I2C,SPI,PCA,DAC/ADC,中断等等)5、功能函数或中断函数(如需要)6、包含的头文件7、项目说明二、对应功能初始化要点:1、Uart:(1)串口工作模式由SCON设定(2)定时器工作方式设定TMOD (3)波特率TH 载入值设定(4)启动TR1 (5)时钟基准CKCON (6)波特率加倍设定PCON(7)开中断使能TI2、Time:(1)工作方式设定TMOD (2)定时器时钟基准CKCON (3)启动/停止TCON设定TRn3、Interrupt:(1)中断允许IE (2)触发方式设定(上下沿,电平)(3)对应控制位允许设定,如ES串口允许C8051F020单片机初始化程序; $INCLUDE (C8051F020.inc) /C8051F020单片机功能强大,初始化也比较繁杂,为了便于初始化各功能模块,我们编了此程序可看着“说明”初始化。
ORG SYS_INIT;※▲◆●◎★☆△;◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆;■-- <1> --电源管理; PCON ; POWER CONTROL;■-- <2> --系统时钟和振荡器; OSCXCN ; EXTERNAL OSCILLA TOR CONTROL; OSCICN ; INTERNAL OSCILLA TOR CONTROL;■-- <3> --复位及看门狗管理; RSTSRC ; RESET SOURCE; WDTCN ; W A TCHDOG TIMER CONTROL;■-- <4> --FLASH存储器编程和安全管理; FLSCL ; FLASH MEMORY TIMING PRESCALER; PSCTL ; PROGRAM STORE R/W CONTROL; FLACL ; FLASH ACESS LIMIT;■-- <5> --中断控制; IE ; INTERRUPT ENABLE; EIE1 ; EXTERNAL INTERRUPT ENABLE 1; EIE2 ; EXTERNAL INTERRUPT ENABLE 2; IP ; INTERRUPT PRIORITY; EIP1 ; EXTERNAL INTERRUPT PRIORITY REGISTER 1; EIP2 ; EXTERNAL INTERRUPT PRIORITY REGISTER 2; P3IF ; PORT 3 EXTERNAL INTERRUPT FLAGS;■-- <6> --端口IO初始化及交叉开关设置; XBR0 ; DIGITAL CROSSBAR CONFIGURA TION REGISTER 0; XBR1 ; DIGITAL CROSSBAR CONFIGURA TION REGISTER 1; XBR2 ; DIGITAL CROSSBAR CONFIGURA TION REGISTER 2; P0MDOUT ; PORT 0 OUTPUT MODE CONFIGURA TION; P1MDOUT ; PORT 1 OUTPUT MODE CONFIGURA TION; P2MDOUT ; PORT 2 OUTPUT MODE CONFIGURA TION; P3MDOUT ; PORT 3 OUTPUT MODE CONFIGURA TION; P74OUT ; PORTS 4 - 7 OUTPUT MODE;■-- <7> --外部RAM和片内XRAM; EMI0CN ; EXTERNAL MEMORY INTERFACE CONTROL; EMI0CF ; EXTERNAL MEMORY INTERFACE (EMIF) CONFIGURA TION ; EMI0TC ; EXTERNAL MEMORY;■-- <8> --定时器设置; TMOD ; TIMER MODE; TCON ; TIMER CONTROL; T2CON ; TIMER 2 CONTROL; T4CON ; TIMER 4 CONTROL; TMR3CN ; TIMER 3 CONTROL; TMR3RLL ; TIMER 3 RELOAD REGISTER - LOW BYTE; TMR3RLH ; TIMER 3 RELOAD REGISTER - HIGH BYTE; TMR3L ; TIMER 3 - LOW BYTE; TMR3H ; TIMER 3 - HIGH BYTE;■-- <9> --串行通讯; SCON0 ; SERIAL PORT 0 CONTROL; SCON1 ; SERIAL PORT 1 CONTROL; SBUF1 ; SERAIL PORT 1 DA TA; SADDR1 ; SERAIL PORT 1; PCON ; POWER CONTROL; RCAP2L ; TIMER 2 CAPTURE REGISTER - LOW BYTE; RCAP2H ; TIMER 2 CAPTURE REGISTER - HIGH BYTE; RCAP4L ; TIMER 4 CAPTURE REGISTER - LOW BYTE; RCAP4H ; TIMER 4 CAPTURE REGISTER - HIGH BYTE; SADDR0 ; SERIAL PORT 0 SLA VE ADDRESS;■-- <10> --可编程计数器阵列; PCA0CN ; PCA 0 COUNTER CONTROL; PCA0MD ; PCA 0 COUNTER MODE; PCA0CPM0 ; CONTROL REGISTER FOR PCA 0 MODULE 0; PCA0CPM1 ; CONTROL REGISTER FOR PCA 0 MODULE 1; PCA0CPM2 ; CONTROL REGISTER FOR PCA 0 MODULE 2; PCA0CPM3 ; CONTROL REGISTER FOR PCA 0 MODULE 3; PCA0CPM4 ; CONTROL REGISTER FOR PCA 0 MODULE 4;■-- <11> --SMBus通讯; SMB0CN ; SMBUS 0 CONTROL; SMB0CR ; SMBUS 0 CLOCK RA TE; SMB0STA; SMBUS 0 STA TUS; SMB0DA T ; SMBUS 0 DA TA; SMB0ADR ; SMBUS 0 SLA VE ADDRESS;■-- <12> --SPI总线通讯; SPI0CKR ; SERIAL PERIPHERAL INTERFACE 0 CLOCK RA TE CONTROL ; SPI0DA T ; SERIAL PERIPHERAL INTERFACE 0 DA TA; SPI0CFG ; SERIAL PERIPHERAL INTERFACE 0 CONFIGURA TION; SPI0CN ; SERIAL PERIPHERAL INTERFACE 0 CONTROL;-- <13> --ADC转换; AMX0CF ; ADC 0 MUX CONFIGURA TION; AMX0SL ; ADC 0 MUX CHANNEL SELECTION; ADC0CF ; ADC 0 CONFIGURA TION; ADC0CN ; ADC 0 CONTROL; ADC0L ; ADC 0 DA TA - LOW BYTE; ADC0H ; ADC 0 DA TA - HIGH BYTE; ADC1CF ; ADC 1 ANALOG MUX CONFIGURA TION; AMX1SL ; ADC 1 ANALOG MUX CHANNEL SELECT; ADC1CN ; ADC 1 CONTROL; ADC0GTL ; ADC 0 GREA TER-THAN REGISTER - LOW BYTE; ADC0GTH ; ADC 0 GREA TER-THAN REGISTER - HIGH BYTE; ADC0LTL ; ADC 0 LESS-THAN REGISTER - LOW BYTE; ADC0LTH ; ADC 0 LESS-THAN REGISTER - HIGH BYTE; REF0CN ; VOLTAGE REFERENCE 0 CONTROL; ADC1 ; ADC 1 DA TA;■-- <14> --DAC转换; PCA0L ; PCA 0 TIMER - LOW BYTE; PCA0H ; PCA 0 TIMER - HIGH BYTE; DAC0CN ; DAC 0 CONTROL; DAC1L ; DAC 1 REGISTER - LOW BYTE; DAC1H ; DAC 1 REGISTER - HIGH BYTE; DAC1CN ; DAC 1 CONTROL;■-- <15> --比较器设置; CPT0CN ; COMPARA TOR 0 CONTROL; CPT1CN ; COMPARA TOR 1 CONTROL; EMI0TC ; EMIF TIMING CONTROL;■-- <16> --时钟/电压基准设置; CKCON ; CLOCK CONTROL; SADEN1 ; SERIAL PORT 1 SLA VE ADDRESS MASK; SADEN0 ; SERIAL PORT 0 SLA VE ADDRESS MASK; P1MDIN ; PORT 1 INPUT MODE; PSW ; PROGRAM STA TUS WORD; B ; B REGISTER; WDTCN ; W A TCHDOG TIMER CONTROL;◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆;;==================================================================== ; function: Init_CTS 定时器/计数器,中断和串行通讯初始化子程序; input: -----------------; output: -----------------; usage: -----------------;==================================================================== THS0 equ 0a8hTLS0 equ 09ah; THS1 equ 0fah;0feh;0fah;-4800;0f4h; TLS1 equ 0fah;0feh;0fah;-4800;0f4h;; THS2 equ 0ffh;0feh;0fah;-4800;0f4h; TLS2 equ 0b8h;0feh;0fah;-4800;0f4hInit_TCS: ;定时器/计数器,中断和串行通讯初始化子程序;〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓; ◆◆◆8051内部控制寄存器◆◆◆;****************************************************************************** ******;|名称| 代号| 地址|位寻| B7 | B6 | B5 | B4 | B3 | B2 | B1 | B0 |;|--------|------|------|----|-----|------|------|------|------|------|------|------|;|电源控制| PCON | 87H | NO |SMOD | -- | -- | -- | GF1 | GF0 | PD | IDL |;|--------|------|------|----|-----|------|------|------|------|------|------|------|;|计时控制| TCON | 88H | YE |TF1 | TR1 | TF0 | TR0 | IE1 | IT1 | IE0 | IT0 |;|--------|------|------|----|-----|------|------|------|------|------|------|------|;|计时模式| TMOD | 89H | NO |1GA TE| 1C/T | 1M1 | 1M0 | 0GA TE| 0C/T | 0M1 | 0M0 | ;|--------|------|------|----|-----|------|------|------|------|------|------|------|;|串行控制| SCON | 98H | YE |SM0 | SM1 | SM2 | REN | TB8 | RB8 | TI | RI |;|--------|------|------|----|-----|------|------|------|------|------|------|------|;|中断允许| IE | A8H | YE |EA| -- | ET2 | ES | ET1 | EX1 | ET0 | EX0 |;|--------|------|------|----|-----|------|------|------|------|------|------|------|;|中断优先| IP| B8H | YE |-- | -- | PT2 | PS | PT1 | PX1 | PT0 | PX0 |;****************************************************************************** ******;时钟频率为:11.059200MHz;;机器周期为:12/fosc=1.085069μs;;CT0定时器设定延时为:2000μs;;CT0定时器工作于模式0;;CT0溢出处理采用中断方式;;CT0选择内部时钟;;CT0启动由TR0的0/1决定;;设定波特率为:4800bps;;串口0工作于方式1--T1定时器工作于方式2;;串口1工作于模式3--T2定时器用于波特率发生器4800bpsmov TH0, #THS0mov TL0, #TLS0; mov TH1, #THS1; mov TL1, #TLS1; mov TH2, #THS2; mov TL2, #TLS2;▲■-- <1> --电源管理;〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓;87H---PCON-------电源控制寄存器;复位值: 00000000;位7-2:保留。
INMARSAT-C站真机题卡

实操设备FURUNO-C站完成时间20分钟总分100分1、当前C站位于INMARSAT卫星重叠区,采用扫描自动模式在信号较强的洋区,完成入网。
并且报告本移动站的ID码。
(15分)2、“洞庭湖”轮从澳大利亚西北部港口运送矿砂到青岛港,编辑电文通过北京LES发送,报告本船在10天后到达青岛港,并希望得到下一航次的工作计划安排。
给定用户的TELEX:085-22264 (30分) 3、从《Admiralty List of radio signal volume 5》查询船舶经过的海域的SafetyNet播发的N/W和WX的时间和播发区域图,设置EGC的接收信息。
(20分) 4、“洞庭湖”在航行过程中出现了倾斜,如何利用C站的遇险报警产生器发射遇险报警。
(注意遇险发射确认时为口述)(20分)5、C站在关机之前为何要退网?如果没有退网会造成什么后果?(15分)INMARSAT---C 实操评估题卡 2实操设备FURUNO-C站完成时间20分钟总分100分1、根据C站当前的情况报告船位、航向、航速信息。
如果C站没有入网,确定完上述信息后采用直接强制入网的方式入IOR洋区。
(15分) 2、“渤海”轮拟从俄罗斯远东港到广州港进行原油运输。
编辑电文,采用电传的方式,通过北京LES向广州远洋运输公司报告本船将在五天后到达。
电文中插入当前的时间和船位。
给定广州远洋运输公司通信地址TELEX:085-35569 (35分) 3、从《Admiralty List of radio signal volume 5》查询船舶经过的海域的SafetyNet播发的N/W和WX的时间和播发区域图,设置EGC的接收信息。
(25分) 4、设置本移动站通过电文信道一周内每隔8个小时,向广州远洋运输公司发送船位报告信息。
TELEX:085-35569; FAX:86-2083967125 (10分)5、 C站如何防止误报警?如果发生误报警该如何尽快的消除误报警? (10分)实操设备FURUNO-C站完成时间20分钟总分100分1、校正当前的船位36.00N 119.00E 并报告本移动站的ID码。
Cisco1841路由器设备使用手册V10

思科设备1841使用手册Cisco 1841 路由器安装手册1设备介绍本次项目部分点使用的是Cisco1841路由器,请安装工程师首先了解您所安装路由器的类型,以下内容可做参考。
cisco1841前面板图:1 系统电源指示灯2 系统状态指示灯LED 名称状态表示情况SYS PWR 灭供电异常绿设备供电正常SYS OK 灭供电异常绿色设备供电正常设备正在启动中或设备工作在ROM模式下闪烁绿色CF灭CF卡未工作(CompactFlash Busy)CF卡在存取文件闪烁绿色FDX 灭此端口工作在half-duplex状态下绿色此端口工作在full-duplex状态下100 灭此端口不在工作状态下绿色此端口工作在状态下Link 灭Fast Ethernet link is not established at the Ethernet port nextto the LED. 链路无连接绿色FastEthernet link is established at the Ethernet port next tothe LED. 链路连接正常 AIM (Advancedintegration module)灭 没有AIM绿色 AIM 认到了其他设备,并正常工作cisco1841后面板图:1 电源接入 8 CompactFlash memory card slot2 电源开关9CompactFlash (CF) LED 3 插槽t 0 (WIC, VWIC —data only, or HWIC) 10 AIM LED 4 Console 口11 USB port 5 快速以太网端口指示灯 12 Aux 端口 6 Kensington TMsecurity slot13接地点 7 插槽 1 (WIC, VWIC —data only, or HWIC)2、设备安装环境检查工程师在拿到设备准备安装之前,先应该进行实地勘查,了解现场是否具备安装的条件。
1841路由器配置攻略

1841路由器配置攻略目录第一章路由器配置基础一、基本设置方式二、命令状态三、设置对话过程四、常用命令五、配置IP寻址六、配置静态路由第二章广域网协议设置一、HDLC二、PPP三、X.25四、Frame Relay五、ISDN六、PSTN第三章路由协议设置一、RIP协议二、IGRP协议三、OSPF协议四、重新分配路由五、IPX协议设置第四章服务质量及访问控制一、协议优先级设置二、队列定制三、访问控制第五章虚拟局域网(VLAN)路由一、虚拟局域网(VLAN)二、交换机间链路(ISL)协议三、虚拟局域网(VLAN)路由实例第一章:路由器配置> 一、基本设置方式一般来说,可以用5种方式来设置路由器:1.Console口接终端或运行终端仿真软件的微机;2.AUX口接MODEM,通过电话线与远方的终端或运行终端仿真软件的微机相连;3.通过Ethernet上的TFTP服务器;4.通过Ethernet上的TELNET程序;5.通过Ethernet上的SNMP网管工作站。
但路由器的第一次设置必须通过第一种方式进行,此时终端的硬件设置如下: 波特率:9600数据位:8停止位:1奇偶校验: 无二、命令状态1. router>路由器处于用户命令状态,这时用户可以看路由器的连接状态,访问其它网络和主机,但不能看到和更改路由器的设置内容。
2. router#在router>提示符下键入enable,路由器进入特权命令状态router#,这时不但可以执行所有的用户命令,还可以看到和更改路由器的设置内容。
3. router(config)#在router#提示符下键入configure terminal,出现提示符router(config)#,此时路由器处于全局设置状态,这时可以设置路由器的全局参数。
4. router(config-if)#; router(config-line)#; router(config-router)#;… 路由器处于局部设置状态,这时可以设置路由器某个局部的参数。
C&Visual Age C++安装配置手册

C & Visual Age C++安装配置手册目录一、概述 (1)二、C & Visual Age C++的安装 (2)三、License Server的配置 (2)四、测试方法 (5)4.1 C编译器的测试 (5)4.2 C++编译器的测试 (6)一、概述本手册内容包括C和Visual Age C++的安装,以及License Server的配置,最后是测试方法。
二、C & Visual Age C++的安装使用root身份登录系统,将光盘放入光驱,C for AIX只有一张光盘,而Visual Age C++有两张盘,放第一张盘。
注意:分别安装C For AIX和Visual Age C++的两张光盘。
不需要安装LUM。
最好不要破坏系统的LUM.使用命令:#smitty install_latest选择安装介质为/dev/cd0 (或者硬盘的/disk1/USR/SYS/INST.IMA)Install and Update from LATEST Available SoftwareType or select values in entry fields.Press Enter AFTER making all desired changes.[Entry Fields] * INPUT device / directory for software /dev/cd0* SOFTWARE to install [_all_latest] +PREVIEW only? (install operation will NOT occur) no (是否预览)+ COMMIT software updates? yes (是否提交安装)+ SA VE replaced files? no +AUTOMATICALL Y install requisite software? yes +EXTEND file systems if space needed? yes +OVERWRITE same or newer versions? no +VERIFY install and check file sizes? no +Include corresponding LANGUAGE filesets? yes +DETAILED output? no +Process multiple volumes? yes +提交安装光盘上所有软件三、License Server的配置步骤一:使用命令:#/usr/vac/bin/replaceCSET 会生成cc等链接;运行命令:#/usr/opt/ifor/bin/i4config (AIX5L)步骤二:From a License Management point of view,you can choose to configure this system as:1) Network License Client2) Nodelock License Server (and/or Network License Client)3) Network (and/or Nodelock) License Server4) Central Registry (and/or Network and/or Nodelock) License Server (*)(*) Remember that one and only one Central Registry License Server (i4gdb daemoein a Licensing domain.Please indicate your choice [1,2,3,4]: 2选择2步骤三:Do you want to disable remote administration of this Nodelock LicenseServer? [y,n]: y选择y步骤四:You have to choose now which mechanism must be enabledto locate this License Server:1) NCS Namespace and Direct Binding (*)2) Direct Binding only(*) WARNING: Modifying NCS Namespace configuration may affectany other application that use NCS on this system.NCS Namespace is necessary to support old Netls, iFOR/LS Clients.Please indicate your choice [1,2]: 2选择2步骤五The Administration tool usually uses port number [12999] to locate theNodelock License Servers. If for some reason your environment can not use port [12999], or you want to modify a previously assigned port number you can do it now.Do you want to change the Nodelock License Server ip port number? [y,n]: n选择n步骤六Choose the desired Server(s) logging level1) Default2) All3) CustomizedPlease indicate your choice [1,2,3]: 1选择1步骤七The default Log file(s) path is /var/iforEnter blank to accept default or specify a new path:直接回车步骤八Server configuration is complete.Do you want to modify the list of remote Nodelock and/or Network License Servers this system can connect to in direct binding mode (both forAdministration purposes and for working as Network License Client) ? [y,n]: n 选择n步骤九Do you want the License Server(s) automatically start on this systemat boot time? [y,n]: y选择y步骤十WARNING: Configuration is about to end.This is your last chance to quit before your updates will be written.Do you want to continue? [y,n]: y选择y步骤十一*** Configuration file updated. ***Do you want the License Server(s) start now? [y,n]: y选择y屏幕显示0513-059 The i4llmd Subsystem has been started. Subsystem PID is 21776.'Start Services' has completed successfully***************************************** Configuration completed successfully *****************************************步骤十二C for AIX:运行命令:#/usr/opt/ifor/bin/i4blt -a -f /usr/vac/cforaix_cn.lic -R root -T10Visual Age C++:运行命令:#/usr/opt/ifor/bin/i4blt -a -f /usr/vacpp/vacpp_cn.lic -R root -T 10屏幕显示:i4blt Version 4.5.1 AIX -- LUM Basic License Tool(c) Copyright 1995-1998, IBM Corporation, All Rights ReservedUS Government Users Restricted Rights - Use, duplication or disclosurerestricted by GSA ADP Schedule Contract with IBM Corp.(c) Copyright 1991-1998 Gradient Technologies Inc., All Rights Reserved(c) Copyright 1991,1992,1993, Hewlett-Packard Company, All Rights ReservedADM-10099: Product successfully enrolled配置完成曾经遇见在配置的时候,报告无法读某些库,分析是LUM安装了多个版本的问题。
c 标准库 交叉编译

c 标准库交叉编译
交叉编译是一种在一种计算机体系结构上生成另一种计算机体系结构的代码的过程。
在标准库的交叉编译中,我们通常使用一个主机(例如,x86架构的PC)来编译目标机(例如,ARM架构的嵌入式设备)可以运行的代码。
以下是一个简单的步骤来说明如何在Linux环境下进行交叉编译:
1. 首先,你需要安装交叉编译器。
对于ARM架构,你可以使用GNU Arm Embedded Toolchain。
2. 然后,你需要设置环境变量,让编译器知道你要为哪种架构进行编译。
这可以通过export命令来完成。
3. 接下来,你可以像平常一样使用gcc或g++进行编译。
但是,你需要指定你的源文件和目标文件的路径。
4. 最后,你可以使用arm-linux-gnueabi-strip命令来移除生成的目标文件中的符号表信息,以减小文件的大小。
以下是一个简单的示例:
bash
# 安装交叉编译器
sudo apt-get install gcc-arm-linux-gnueabi
# 设置环境变量
export CC=arm-linux-gnueabi-gcc
export CXX=arm-linux-gnueabi-g++
# 编译源代码
$CC -o my_program my_program.c
# 移除符号表信息
arm-linux-gnueabi-strip my_program
在这个示例中,my_program.c是你的源代码文件,my_program 是生成的目标文件。
需要将这些名称替换为你自己的文件名。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
实验1:通过Console口、telnet访问路由器
1.实验目的
通过本实验,读者可以掌握如下技能:
①计算机的串口和路由器Console口的连接方法;
②使用Windows系统自带的超级终端软件配置路由器;
③路由器的开机
④路由器主机名、接口IP地址、密码等的配置
⑤ telnet远程登录路由器
2.实验拓扑
图1-1
3.实验步骤
⑴步骤1:开机
如图1-1所示,连接好计算机COM1口和路由器的Console口,路由器开机。
⑵步骤2:打开超级终端
在Windows中的【开始】→【程序】→【附件】→【通信】菜单下打开”超级终端”程序,出现图1-2窗口。
在“名称”对话框中输入名称,例如“aa1”。
按【确定】按钮。
出现图1-3窗口。
在“连接时使用”下拉菜单中选择计算机的COM1口,按【确定】按钮,进入图1-4窗口。
图1-4 com1属性窗口
点击“还原为默认值”按钮,出现图1-5所示窗口。
图1-5 更改com1属性
接下来点“确定”按钮,即可进入超级终端的配置界面,如图1-6所示。
图1-6 超级终端配置环境
出现上图所示界面后,在rommon 1>后面输入reset(重置,即配置复位,也就是重启路由器),出现图1-7所示的路由器启动界面,界面上的英文字母及#号表示路由器的启动过程。
图1-7 路由器重启界面
启动过程中,出现:,均输入no或者n,并按回车键,表示不按对话框配置路由器,出现的是否结束自动安装,输入yes或no均可,按回车键确认后,出现图1-8所示界面,进入路由器的用户模式。
图1-8 路由器用户模式
在路由器用户模式输入enable,进入路由器特权模式,在特权模式下输入config terminate,进入路由器的配置模式,在配置模式下配置用户进入路由器特权模式的明文密码和密钥,如下图1-9所示。
图1-9 配置用户进入路由器特权模式的明文密码和密钥
注意,在配置模式下配置的明文密码和密钥可以相同,只不过如果输入的密码相同的话,路由器会提示不建议使用相同密码,重新输入特权模式的密码字样,但可以不理会,我们可以通过查看配置是否生效来验证,特权模式的密钥和明文密码是否都生效了。
在配置模式下输入:do show running-config 查看路由器当前正在运行的配置信息,如图1-10所示。
图1-10 进入特权模式的两种密码即使相同也成功写入了运行配置文件
重新进入路由器配置模式,通过line vty 配置远程登录密码,并通过login激活远程登录密码。
用line console 配置控制口的密码,同样通过login激活密码,让密码生效。
配置命令如图1-11所示。
图1-11 配置远程登录密码和控制口密码
通过end返回到路由器特权模式,在特权模式下输入show running-config 查看刚才配置的配置信息,如图1-12所示。
图1-12 查看刚配置好的远程登录密码和控制口的密码
在路由器特权模式下,通过输入show ip interface brief命令,查看路由器的接口连通状态。
从下面的配置信息可以发现,路由器有2个快速以太网口和2个串口,都没有配置IP地址,链路都处于down状态。
如图1-13所示。
图1-13 查看接口连通状态
为了可以通过本地计算机telnet到路由器上进行配置,路由器还需要给快速以太网口配置IP地址,IP地址配置后如图1-14所示。
图1-14 查看PC跟路由器的连接的端口连通状态
通过上图可以看出,给f0/0口配置的IP地址生效了,链路协议状态为up,但是端口还是down状态,这是因为本地计算机没有用跳线连接路由器的f0/0口,我用跳线连接路由器的f0/0口和主机以太网口,并配置了本地主机IP与路由器f0/0口为同一网段,这时,路由器的端口状态为up了,如图1-15、图1-16、图
1-17所示。
图1-15 本地主机初始IP地址图1-16 更改本地主机IP地址
这时我们再通过show running-config 命令查看路由器的接口状态信息,如图1-17所示。
图1-17 通过跳线将主机和路由器f0/0口连接之后,路由器的接口状态
链路协议状态和端口状态均为UP,这说明PC和路由器之间可以建立连接了。
接下来我们通过“开始”-“运行”,输入“cmd”,如图1-18所示。
图1-18 启动运行窗口
点“确定”按钮后,进入命令提示符窗口,我们通过ipconfig 查看得知,本地IP和路由器的f0/0口IP现在处于同一个网段。
图1-19 查看本地计算机IP地址
通过Ping命令检验本地计算机和路由器的连通性,如图1-20所示。
图1-20 检验本地计算机与路由器的连通性
在命令提示符下telnet路由器,telnet成功,显示输入密码窗口,如图1-21所示。
图1-21 telnet路由器成功,提示输入远程登录密码窗口如果密码输入错误3次,路由器则中断会话连接,如图1-22所示。
图1-22 密码3次出错,则中断连接
如果远程登录密码输入正确,则进入路由器的用户模式,要进入路由器的特权模式,则需要输入进去特权模式的密码,如果密码正确,则进入路由器的配置模式,如图1-23所示。
图1-23 远程登录成功,进入了路由器的配置模式
查看路由器的配置信息,如图1-24所示。
图1-24 路由器运行的配置信息
到此为止,路由器的初始配置与访问已经完成,请大家通过PacketTracert模拟器(简称PT)参照上面的配置步骤好好练习。
PT版本请使用PacketTracert5.3.2,跟机房的PT版本相同,不然的话可能宿舍做的实验,用U盘拷贝到机房去会打不开的。