大家又遇到过这种问题吗?

[复制链接]
 楼主| chenjunt 发表于 2017-6-18 21:55 | 显示全部楼层 |阅读模式
在PSOC上移植linux,可在编译内核时出现了下面的错误。
vmlinux.o:No such file or directory。
大家又遇到过这种问题吗?

相关帖子

ousj 发表于 2017-6-18 21:57 | 显示全部楼层

没遇到过。。。。
zyf部长 发表于 2017-6-18 22:01 | 显示全部楼层
你移植的是哪个版本?是ucLinux?
xxmmi 发表于 2017-6-18 22:03 | 显示全部楼层
你的那个版本不需要MMU的支持吗?
 楼主| chenjunt 发表于 2017-6-18 22:05 | 显示全部楼层
难道是这个原因:我在设置menuconfig时没有选择MMU吗
 楼主| chenjunt 发表于 2017-6-18 22:07 | 显示全部楼层
可是.config中:CONFIG_MMU=y啊,应该说是没问题吧。
juventus9554 发表于 2017-6-18 22:09 | 显示全部楼层

PSoC5内核为Cortex-M3,这个内核是没有MMU的。
llljh 发表于 2017-6-18 22:12 | 显示全部楼层

Linux编译时要选平台的,楼主选的是哪个?
另外,你用的是PSoC5吗,外扩存储器没有?
目前最大内部Flash才256KB,Linux编译完的内核多大,跑文件系统不?你考虑过没?
 楼主| chenjunt 发表于 2017-6-18 22:13 | 显示全部楼层

哦,原来Cortex-M3没有MMU的,去掉就可以。
现在连第一次编译都通不过,还没到考虑什么flash的时候,现在就是vmlinux有问题。
renyaq 发表于 2017-6-18 22:15 | 显示全部楼层

据我所知,没有MMU的处理器是不支持Linux的,除了uc/Linux.
 楼主| chenjunt 发表于 2017-6-18 22:16 | 显示全部楼层

这个只是在宿主机上编译一下,看看行不行,实际上是不用MMU的。
pengf 发表于 2017-6-18 22:18 | 显示全部楼层

你的最终目的不是要移植到PSoC5上面吗?
 楼主| chenjunt 发表于 2017-6-18 22:20 | 显示全部楼层
那个vmlinux不是在编译过程中自动生成的吗?
 楼主| chenjunt 发表于 2017-6-18 22:23 | 显示全部楼层
在网上查了一下,说是要在arch/arm/boot/compressed有个vmlinxu.lds.in用来生成vmlinux.lds,可是编译:make zImage后发现却没有在arch/arm/boot/compressed中生成vmlinux.lds是不是从这之中找到问题所在呢?
supernan 发表于 2017-6-18 22:25 | 显示全部楼层

我也有点不明白,这个vmlinux在源码中是不是本来就有的,还是说要进行生成的呢?
 楼主| chenjunt 发表于 2017-6-18 22:28 | 显示全部楼层


在网上看到下面的说法:对于arm类型的CPU,目标zImage是在arch/arm/boot/Makefile的第146行定义的。它依赖于compressed/vmlinux。而在第152行,又说明了compressed/vmlinux依赖于主目录下的vmlinux。它的生成规则在main-makefile的第281-289行:


所以,安装上面的说法,这个vmlinux原来就是存在于linux源码的根目录中的,不知道对不对?
liuzaiy 发表于 2017-6-18 22:30 | 显示全部楼层
这个应该是软件的原因吧?
yinxiangh 发表于 2017-6-18 22:32 | 显示全部楼层
我怀疑是你的编译环境不对,没有配置好
 楼主| chenjunt 发表于 2017-6-18 22:40 | 显示全部楼层
好的,我明天去单位试一下,多谢各位大侠了哈,结贴了先
您需要登录后才可以回帖 登录 | 注册

本版积分规则

718

主题

7868

帖子

5

粉丝
快速回复 在线客服 返回列表 返回顶部