您尚未登录。

楼主 #1 2018-09-01 09:20:09

晕哥
管理员
注册时间: 2017-09-06
已发帖子: 9,349
积分: 9202

KEIL可以使用 GNU 工具链,但是只能使用指定那些工具链,不是所有的GNU工具链都可以用





离线

楼主 #2 2018-09-01 11:02:32

晕哥
管理员
注册时间: 2017-09-06
已发帖子: 9,349
积分: 9202

Re: KEIL可以使用 GNU 工具链,但是只能使用指定那些工具链,不是所有的GNU工具链都可以用

QQ20180901110439.png

QQ20180901110527.png

这个GNU toolchain支持 KEIL, 坑比较少: gcc-arm-none-eabi-4_9-2015q2-20150609-win32.zip





离线

楼主 #3 2018-09-01 11:19:37

晕哥
管理员
注册时间: 2017-09-06
已发帖子: 9,349
积分: 9202

Re: KEIL可以使用 GNU 工具链,但是只能使用指定那些工具链,不是所有的GNU工具链都可以用

QQ20180901111932.png





离线

#4 2018-09-01 13:16:27

bunny
会员
注册时间: 2020-05-23
已发帖子: 154
积分: 154

Re: KEIL可以使用 GNU 工具链,但是只能使用指定那些工具链,不是所有的GNU工具链都可以用

晕哥真能折腾

离线

楼主 #5 2018-09-01 14:24:25

晕哥
管理员
注册时间: 2017-09-06
已发帖子: 9,349
积分: 9202

Re: KEIL可以使用 GNU 工具链,但是只能使用指定那些工具链,不是所有的GNU工具链都可以用

QQ20180901142329.png

xxzouzhichao 说:

晕哥真能折腾

一天不折腾,浑身不舒服.





离线

楼主 #6 2018-09-02 09:14:16

晕哥
管理员
注册时间: 2017-09-06
已发帖子: 9,349
积分: 9202

Re: KEIL可以使用 GNU 工具链,但是只能使用指定那些工具链,不是所有的GNU工具链都可以用

QQ20180902091133.png

把 @达克罗德 的 F1C100S裸奔framebuffer+PWM+GPIO驱动 代码移植到KEIL上面,
编译都很顺利,但是链接出了各种奇葩的问题。





离线

楼主 #7 2018-09-02 09:18:17

晕哥
管理员
注册时间: 2017-09-06
已发帖子: 9,349
积分: 9202

Re: KEIL可以使用 GNU 工具链,但是只能使用指定那些工具链,不是所有的GNU工具链都可以用

最后我连 获取windows所有进程完整命令行小技巧 这个都请出来了,终于找到完整的编译链接指令.

链接指令:

arm-none-eabi-gcc.exe                                               "C:\Tools\gcc-arm-none-eabi-4_9-2015q2-20150609-win32\bin\arm-none-eabi-gcc" @".\Objects\test2.lnp"      20512

打开 Objects\test2.lnp 文件:

-T ./f1c100s.ld -o "./Objects/test2.elf" "./objects/sys-clock.o" "./objects/sys-copyself.o" "./objects/sys-dram.o" "./objects/sys-mmu.o" "./objects/sys-spi-flash.o" "./objects/sys-uart.o" "./objects/start.o" "./objects/exception.o" "./objects/memcpy.o" "./objects/memset.o" "./objects/main.o" -nostartfiles

QQ20180902092210.png





离线

楼主 #8 2018-09-02 09:24:37

晕哥
管理员
注册时间: 2017-09-06
已发帖子: 9,349
积分: 9202

Re: KEIL可以使用 GNU 工具链,但是只能使用指定那些工具链,不是所有的GNU工具链都可以用

QQ20180902090643.png

继续跟踪

arm-none-eabi-ld -T ./f1c100s.ld -nostdlib  \
-o Objects/test2.elf objects/sys-clock.o \
objects/sys-copyself.o objects/sys-dram.o objects/sys-mmu.o \
objects/sys-spi-flash.o objects/sys-uart.o objects/start.o \
objects/exception.o objects/memcpy.o objects/memset.o \
objects/main.o

arm-none-eabi-ld -T ./f1c100s.ld -nostdlib \
-o "./Objects/test2.elf" "./objects/sys-clock.o" \
"./objects/sys-copyself.o" "./objects/sys-dram.o" "./objects/sys-mmu.o" \
"./objects/sys-spi-flash.o" "./objects/sys-uart.o" "./objects/start.o" \
"./objects/exception.o" "./objects/memcpy.o" "./objects/memset.o" \
"./objects/main.o"

发现上面的命令行链接正常
下面的不正常。





离线

楼主 #9 2018-09-02 20:19:15

晕哥
管理员
注册时间: 2017-09-06
已发帖子: 9,349
积分: 9202

Re: KEIL可以使用 GNU 工具链,但是只能使用指定那些工具链,不是所有的GNU工具链都可以用

QQ20180902201724.png

一直没搞定怎么去掉这两个双引号.





离线

楼主 #10 2018-09-02 22:36:00

晕哥
管理员
注册时间: 2017-09-06
已发帖子: 9,349
积分: 9202

Re: KEIL可以使用 GNU 工具链,但是只能使用指定那些工具链,不是所有的GNU工具链都可以用

QQ20180902223405.jpg

QQ20180902223433.jpg

linux下的gcc 链接程序 ld, 一样存在这种问题, 文件有 ./ 或者 绝对路径 / 都链接失败.





离线

楼主 #11 2018-09-02 22:36:43

晕哥
管理员
注册时间: 2017-09-06
已发帖子: 9,349
积分: 9202

Re: KEIL可以使用 GNU 工具链,但是只能使用指定那些工具链,不是所有的GNU工具链都可以用

QQ20180902223101.png

问题曲线解决了。





离线

#12 2020-02-13 16:17:32

linhuaou
会员
注册时间: 2019-08-09
已发帖子: 35
积分: 35

Re: KEIL可以使用 GNU 工具链,但是只能使用指定那些工具链,不是所有的GNU工具链都可以用

我的keil不能通过JLINK仿真,只能烧录,这个Keil仿真可以在哪个帖子学习参考下?

离线

#13 2020-03-30 19:28:29

dykxjh
会员
注册时间: 2020-03-25
已发帖子: 171
积分: 166

Re: KEIL可以使用 GNU 工具链,但是只能使用指定那些工具链,不是所有的GNU工具链都可以用

按照晕哥的方法,不能生成hex/bin文件,提示Target no created. 又怎么解决呢?

离线

#15 2022-03-31 19:33:08

海石生风
会员
所在地: 深圳
注册时间: 2019-07-02
已发帖子: 663
积分: 796
个人网站

Re: KEIL可以使用 GNU 工具链,但是只能使用指定那些工具链,不是所有的GNU工具链都可以用

晕哥 说:

https://whycan.cn/files/members/3/QQ20180902223405.jpg

https://whycan.cn/files/members/3/QQ20180902223433.jpg

linux下的gcc 链接程序 ld, 一样存在这种问题, 文件有 ./ 或者 绝对路径 / 都链接失败.

是其它地方有问题而没找到吧,我看Eclipse-CDT自动生成的makefile的所用.o文件都是./开头的,也没见有问题。
Screenshot_20220331_193115.png

离线

#17 2022-06-16 20:24:20

wm20031015
会员
注册时间: 2017-10-18
已发帖子: 66
积分: 170

Re: KEIL可以使用 GNU 工具链,但是只能使用指定那些工具链,不是所有的GNU工具链都可以用

晕哥,这个版本比较老了,可以试试ARM官网的版本:
https://developer.arm.com/tools-and-software/open-source-software/developer-tools/gnu-toolchain/downloads

离线

#18 2023-02-12 19:37:03

vigour1000
会员
注册时间: 2018-11-19
已发帖子: 101
积分: 2

Re: KEIL可以使用 GNU 工具链,但是只能使用指定那些工具链,不是所有的GNU工具链都可以用

右键 go to define 不能使用怎么解决呀

离线

页脚

工信部备案:粤ICP备20025096号 Powered by FluxBB

感谢为中文互联网持续输出优质内容的各位老铁们。 QQ: 516333132, 微信(wechat): whycan_cn (哇酷网/挖坑网/填坑网) service@whycan.cn