当前位置:首页 » 编程软件 » mdk增加编译路径

mdk增加编译路径

发布时间: 2022-09-13 18:47:20

1. Keil MDK4.6添加头文件

头文件可以放在工程目录和软件目录中,在工程设置中有头文件的目录设置。

2. eclipse 怎么编译keil工程

1. 把KeilBuilder.exe复制到MDK的编译器目录下, 一般为: C:\Keil\ARM\BIN40下, 这要看你的MDK安装在哪了.
2. 新建一个C Project 工程, 并选择Cross GCC交叉编译工具为本工程编译工具.
.通过菜单File -> new -> C Project 新建一个空的C工程. 在弹出的对话框中如下图, 注意要选择"Cross GCC"工具链:

3. 为新建的工程导入Keil工程或仅导入源文件.

4. 设置Eclipse工程交叉编译环境.
.在左边的"Porject Explorer"窗口内鼠标右键单击工程名, 选择最后的菜单项"Properties"项.
.在C/C++ Build -> Settings界面中, 设置"Configuration"为"[ All configurations ]"; 设置"Cross Setttings"的"Path"即交叉工具链路径为KeilBuilder所有的目录, 如C:\Keil\ARM\BIN40. 如下图:

.在"Cross GCC Compiler"的"Command"下填入"KeilBuilder -no", 表示什么也不做; 另外的"Cross GCC Linker"及"Cross GCC Assembler"的"Command"中也设置为同值. 此设置为防Eclipse对不存在的GCC工具的报警, 如下图:

.在C/C++ Build 界面中, Builder Settings 中去掉"Use default build command"上的勾, 并在"Build command"中填入"KeilBuilder.exe -d xxxx -e". 基中xxx为工程根目录路径, "-d"表示设置KeilBuilder的工程路径, "-e"表示在编译时自动对Eclipse工程进行设置, 目前仅设置"C/C++ Build" -> "Settings" -> "Cross GCC Compiler" -> “Symbols”和”Includes”以及”Cross GCC Assmebler” -> “General”项. 如下图:

.在C/C++ Build 界面中的"Behaviour"选项卡中, 在"Build(Incremental build)"中填入"-s"表示安静编译; 在"Clean"中填入"-c"表示清理工程. 如下图:
.在C/C++ Build 中的 "Discovery Options" 中去掉 "Enable generate scanner info command"选项. 如下图:

.不用设置预编译宏或者Includes选项, 因为KeilBuilder会自动帮忙加进去. 所以, 有时候你看到代码还有一大堆的错误时, 编译一次后, 刷新工程(右键工程名 -> "Refresh")就木有错误鸟.
5. 到此, 可以编译你的工程了. 通过菜单项"Project" -> "Build All"编译工程, 或"Project" -> "Clean..."清理工程. 编译不通过或得到不正确Hex文件的继续往下看. 如下图:

6. 在Eclipse中添加一个外部工具, 这样可以通过Eclipse菜单项运行KeilBuilder, 方便.
.在Eclipse菜单中选择Run -> External Tools -> External Tools Configurations...
.在弹出的对话框中双击"Program" 增加一个外部工具.
.在Name中填入"KeilBuilder".
.在"Main"选项卡中, Location通过"Browse File System..." 选择KeilBuilder程序, 如: C:\Keil\ARM\BIN40\KeilBuilder.exe; 在Working Directory中填入KeilBuilder所在的目录, 如C:\Keil\ARM\BIN40.
.在"Build"选项卡中, 去掉"Build before launch"上的勾.
.最后单击"Apply" -> "Run"完成添加, 并运行KeilBuilder工具.
此后你就可以通过菜单Run -> External Tools -> KeilBuilder 来快速运行KeilBuilder工具了. 如下2图:

7. 经过前面4步的设置, 你的工程编译很可能会编译不通过, 或者编译出来的Hex文件下载不正确. 那是因为一些编译器/链接器选项你还没有配置.
这时, 你可以通过菜单Run -> External Tools -> KeilBuilder来运行KeilBuilder工具, 通过界面来设置这些参数. 或者也可以直接用记事本打开工程目录中的"cts.ini"(如果工程目录中不存在此文件, 请转到KeilBuilder所在的目录下的"cts.ini", 如果KeilBuilder所在目录下也没有, 那么请双击运行下KeilBuilder程序, "cts.ini"就会自动生成)对参数进行修改.
注意, 在KeilBuilder界面上设置参数时, 必须选择好自己的工程目录, 如果没有选择工程目录, 设置的结果会保存到KeilBuilder所在的目录下的"cts.ini"文件中. KeilBuilder在首次运行时, 会在其所在目录下生成cts.ini文件并设置参数为默认值. KeilBuilder在每次编译一个工程时, 如果该工程目录下发现"cts.ini", 就使用工程目录下的"cts.ini"; 如果没有发现"cts.ini"文件, 则把KeilBuilder所在目录下的"cts.ini"文件复制一份到工程目录下, 然后再编译.
关于"cts.ini"文件中的这些参数, 它对应于Keil MDK环境中的ASM编译器/C编译器/Linker选项. 因为时间问题, 在KeilBuilder中并未实现(以后有空再搞吧)类似于Keil uVision中的选项式配置. 如果熟悉这些参数最好, 不熟的话可以先在Keil uVision中配置好, 再对应添加到"cts.ini"中.
在"cts.ini"文件中的"ASM=" 后面的内容对应于Keil uVision工程选项中的"Asm"选项.
在"cts.ini"文件中的"CC=" 后面的内容对应于Keil uVision工程选项中的"C/C++"选项.
在"cts.ini"文件中的"LNK=" 后面的内容对应于Keil uVision工程选项中的"Linker"选项.
8. 设置"cts.ini"文件中的编译选项确实不是一般人能搞定. 我也不懂(谁懂的做个说明分享下吧, 可以的话还能集成为UI, 更方便). 因为人懒, 不想去深究这些编译(链接)器选项, 于是想到了个折中的办法: 通过Keil uVision来设置好这些参数并编译工程, 然后把它实时的编译选项显示出来以供参考! 这样当编译选项无法搞定时, 就把整个工程交给keil uVision来编译一次, 然后参考实时获取的参数再对Eclipse工程的"cts.ini"文件做相应的修改就OK了.
在keil uVision中捕获它的编译选项, 需要做如下的设置. 在工程属性"Options for Target xxxx"的"User"选项卡中 设置keil编译后运行”KeilBuilder.exe -p”. 表示捕获keil uVision编译选项, 如下图:

3. KEIL 的编译产生的垃圾文件的路径单片机

在output菜单里面设置路径,如果不要那些垃圾文件,箭头所指全部不勾选就可以了。

4. 用MDK编译的时候,stm3210e_eval.c文件添加到工程了而且设置了头文件目录为什么说找不到文件

虽然你添加的程序没有在主程序中调用,但编译的时候仍然会该文件里面对函数语法检查。检查一下该文件有无调用其他文件函数,以及本文件中有无语法错误。

5. 使用KEIL软件,我想添加一个头文件进入工程目录,应该怎么做呢

1、首先,在电脑上开启自己的keil软件,如图所示。

6. 如何设置MDK的标准库文件路径

C++标准库头文件,不同的编译器默认路径不相同。 Vc6.0一般在安装目录下的\VC98\INCLUDE目录,比如C:\Program Files (x86)\Microsoft Visual Studio\VC98\INCLUDE。 Vs一般在位于$VSPATH\VC\include路径下面。 gcc一般默认在 /usr/include目录下。

7. MDK新手求助:从别的地方考来的程序,应该本身没有什么问题,但是我点击build target后有一个错误:

两种方法,一在编译配置界面C编译选项卡设定Include路径.二是在程序里把#Include语句后的文件写成绝对路径.

8. stm32编译前为什么要配置keil中C/C++中的define 和include Paths

这是Keil与编译器的一个相互通信的过程,准确的来说,是编译器读取Keil的配置
ARM系列的有一些公司的库编译器,是与Keil的一些配置通信的.
比如你说的那个 Define,include path
一般来说,我们用Keil做51或者STR710等等一些单片机的程序时候,不需要配置刚才的两个选项,为什么?
因为C51和ARM7的编译器不去读取上述的配置.
而Cortex-M3编译器,则读取上述的配置,并转换成自己的内编译器配置
比如:你在Define里面写:THIS_MY_DEF
那么,编译器在编译的时候,文件里会隐性的定义出这么一句:
#define THIS_MY_DEF
通常,我们写Define里,都写USE_STDPERIPH_DRIVER,STM32F10X_HD这两个
然后,编译的时候,文件里会隐性定义
#define USE_STDPERIPH_DRIVER
#define STM32F10X_HD
而这两个宏,决定了STM32的库函数的一些配置.
如果你把那个Define文本框空闲出来,那么,编译器找不到任何配置信息,自然就出错.
如果你一定要把Define文本框空闲,那么,你就要在Stm32F10x.h等多个文件里手工添加
#define USE_STDPERIPH_DRIVER
#define STM32F10X_HD
过程比较繁琐,如果一旦换了芯片,整个的工程就有多处要修改, 工作量太大,且容易出错
,就不如在配置的时候操作一次那么简便

9. 有许多文件,不知道在keil里面怎么编译,求教啊

新建一个工程,把C文件全部加进去,设置好头文件路径。具体在网上搜索资料(关于在一个工程中加入多个C文件方法)。

10. 如何在keil中添加carm 编译器

Keil和MDK共存,按照以下步骤: 1 先安装 Keil C51,安装目录改为:"D:\Keil2"(我是安装在D盘的) 2 再安装RealView MDK,目录:"D:\Keil" 3 把Keil2下的C51文件夹全部复制到 Keil下 4 把Keil2下的 UV4(或者UV3)下的所有文件复制粘贴到 Keil下的UV4文件

热点内容
联通初始宽带上网密码是多少 发布:2025-04-13 01:08:03 浏览:990
8253可编程定时器 发布:2025-04-13 00:58:48 浏览:350
学校网站源码php 发布:2025-04-13 00:49:38 浏览:950
广告wifi源码 发布:2025-04-13 00:47:17 浏览:242
高压缩性土 发布:2025-04-13 00:46:14 浏览:422
android中view 发布:2025-04-13 00:43:58 浏览:660
手机缓存的新东方视频 发布:2025-04-13 00:42:20 浏览:588
广西金税盘服务器地址是什么 发布:2025-04-13 00:41:25 浏览:493
博客登录不上如何找回密码 发布:2025-04-13 00:24:37 浏览:50
编译一步推导 发布:2025-04-13 00:18:49 浏览:730