打印
[开发工具]

keil c51编译环境不能跳转函数的解决办法

[复制链接]
1072|24
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
jkl21|  楼主 | 2024-2-28 22:42 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
最近使用keil c51 开发usb固件,当向vc一样使用Go to Definition of....时,出现警告对话框:
check-[target-options][output][browse information] then rebuild the target!

1、代码中嵌有汇编,汇编代码去掉后能查看。

2、选中target1,然后点击右键,选择 option for target 'target1' ,在弹出的对话框中选择output选项卡,看Browse information 选项有没有勾选,如果没有,请勾选,然后把你的工程rebuild 一次。

使用特权

评论回复
沙发
flycamelaaa| | 2024-3-4 19:21 | 只看该作者
重新编译整个工程

使用特权

评论回复
板凳
powerantone| | 2024-3-4 20:59 | 只看该作者
检查工程名称和文件路径

使用特权

评论回复
地板
AdaMaYun| | 2024-3-5 18:20 | 只看该作者
看楼主说的解决方法还是跟设置有关系

使用特权

评论回复
5
LOVEEVER| | 2024-3-9 16:15 | 只看该作者
设置导致问题发生的概率还是挺大的

使用特权

评论回复
6
sdlls| | 2024-5-1 20:16 | 只看该作者
如果函数是在特定条件下才被编译的,那么在这些条件不满足时, 将无法跳转到这些函数的定义。

使用特权

评论回复
7
jimmhu| | 2024-5-1 21:21 | 只看该作者
在编译过程中,Keil C51会生成警告和错误信息。仔细阅读这些信息,它们通常会指出问题的所在。

使用特权

评论回复
8
saservice| | 2024-5-1 22:35 | 只看该作者
所有函数调用都遵循正确的调用约定,特别是对于有参函数,要确保参数传递方式正确。

使用特权

评论回复
9
kmzuaz| | 2024-5-2 19:07 | 只看该作者
错误的编译选项可能会导致编译器无法正确处理函数跳转。

使用特权

评论回复
10
caigang13| | 2024-5-2 19:42 | 只看该作者
KEIL C51不是8位机的吗?8位MCU有USB外设?

使用特权

评论回复
11
hearstnorman323| | 2024-5-2 19:51 | 只看该作者
函数调用的语法是否正确,包括函数名、参数列表以及括号的使用。

使用特权

评论回复
12
averyleigh| | 2024-5-2 20:37 | 只看该作者
如果函数定义在调用之后,编译器可能无法识别函数。

使用特权

评论回复
13
zerorobert| | 2024-5-2 21:25 | 只看该作者
对于C语言来说,如果函数的声明(原型)在函数定义之前,那么声明必须包含函数的返回类型和参数类型。

使用特权

评论回复
14
tifmill| | 2024-5-3 09:42 | 只看该作者
如果使用的是较旧的Keil版本,可能存在bug或性能问题。尝试更新到最新版本。

使用特权

评论回复
15
cashrwood| | 2024-5-3 12:46 | 只看该作者
如果工程编译失败,那么自然无法跳转到函数定义。你需要根据编译器的提示信息检查和修复代码中的错误,直到工程能够正常编译通过。

使用特权

评论回复
16
modesty3jonah| | 2024-5-3 15:47 | 只看该作者
查看编译器输出的错误信息,根据错误信息进行相应的修改。

使用特权

评论回复
17
mikewalpole| | 2024-5-4 11:48 | 只看该作者
如果没有生成,可能是因为Output选项卡中的“Browse Information”选项未勾选。在项目设置中找到该选项并勾选,然后重新编译项目。

使用特权

评论回复
18
rosemoore| | 2024-5-4 15:51 | 只看该作者
确保所有的函数都已经被正确声明,并且在同一个作用域内。如果函数是在另一个文件中定义的,那么需要确保该文件已经被正确包含。

使用特权

评论回复
19
pl202| | 2024-5-4 16:48 | 只看该作者
在Keil的项目选项中,确保勾选了生成浏览信息(Browse Information)的选项。这样在重新构建项目后,Keil才能够提供函数跳转的功能。

使用特权

评论回复
20
10299823| | 2024-5-4 21:58 | 只看该作者
如果工程文件位于含有中文的目录下,这可能会导致跳转问题。你可以尝试将工程移出含有中文的目录,新建工程时尽量放在不含中文的文件夹中。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

8

主题

3183

帖子

2

粉丝