U-boot编译出错-软浮点编译错误

转自:  http://blog.csdn.net/yming0221/article/details/6563190

 

arm-linux-ld: ERROR: /up-Star2410/arm-linux-tools/gcc-3.4.6-glibc-2.3.6/arm-linux/bin/../lib/gcc/arm-

linux/3.4.6/libgcc.a(_udivsi3.oS) uses hardware FP, whereas u-boot uses software FP
arm-linux-ld: failed to merge target specific data of file /up-Star2410/arm-linux-tools/gcc-3.4.6-glibc-

2.3.6/arm-linux/bin/../lib/gcc/arm-linux/3.4.6/libgcc.a(_udivsi3.oS)
arm-linux-ld: ERROR: /up-Star2410/arm-linux-tools/gcc-3.4.6-glibc-2.3.6/arm-linux/bin/../lib/gcc/arm-

linux/3.4.6/libgcc.a(_divsi3.oS) uses hardware FP, whereas u-boot uses software FP
arm-linux-ld: failed to merge target specific data of file /up-Star2410/arm-linux-tools/gcc-3.4.6-glibc-

2.3.6/arm-linux/bin/../lib/gcc/arm-linux/3.4.6/libgcc.a(_divsi3.oS)
arm-linux-ld: ERROR: /up-Star2410/arm-linux-tools/gcc-3.4.6-glibc-2.3.6/arm-linux/bin/../lib/gcc/arm-

linux/3.4.6/libgcc.a(_umodsi3.oS) uses hardware FP, whereas u-boot uses software FP
arm-linux-ld: failed to merge target specific data of file /up-Star2410/arm-linux-tools/gcc-3.4.6-glibc-

2.3.6/arm-linux/bin/../lib/gcc/arm-linux/3.4.6/libgcc.a(_umodsi3.oS)
arm-linux-ld: ERROR: /up-Star2410/arm-linux-tools/gcc-3.4.6-glibc-2.3.6/arm-linux/bin/../lib/gcc/arm-

linux/3.4.6/libgcc.a(_modsi3.oS) uses hardware FP, whereas u-boot uses software FP
arm-linux-ld: failed to merge target specific data of file /up-Star2410/arm-linux-tools/gcc-3.4.6-glibc-

2.3.6/arm-linux/bin/../lib/gcc/arm-linux/3.4.6/libgcc.a(_modsi3.oS)
arm-linux-ld: ERROR: /up-Star2410/arm-linux-tools/gcc-3.4.6-glibc-2.3.6/arm-linux/bin/../lib/gcc/arm-

linux/3.4.6/libgcc.a(_dvmd_lnx.oS) uses hardware FP, whereas u-boot uses software FP
arm-linux-ld: failed to merge target specific data of file /up-Star2410/arm-linux-tools/gcc-3.4.6-glibc-

2.3.6/arm-linux/bin/../lib/gcc/arm-linux/3.4.6/libgcc.a(_dvmd_lnx.oS)
make: *** [u-boot] Error 1

linux/3.4.6/libgcc.a(_modsi3.oS) uses hardware FP, whereas u-boot uses software FP

译链接器3.4.6用的是hardware FP,而u-boot 使用的是 software FP 。

解决方案:

修改文件./arch/arm/cpu/920t/config.mk

 

 

#

# (C) Copyright 2002

# Gary Jennejohn, DENX Software Engineering, <garyj@denx.de>

#

# See file CREDITS for list of people who contributed to this

# project.

#

# This program is free software; you can redistribute it and/or

# modify it under the terms of the GNU General Public License as

# published by the Free Software Foundation; either version 2 of

# the License, or (at your option) any later version.

#

# This program is distributed in the hope that it will be useful,

# but WITHOUT ANY WARRANTY; without even the implied warranty of

# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the

# GNU General Public License for more details.

#

# You should have received a copy of the GNU General Public License

# along with this program; if not, write to the Free Software

# Foundation, Inc., 59 Temple Place, Suite 330, Boston,

# MA 02111-1307 USA

#

 

#PLATFORM_RELFLAGS += -fno-common -ffixed-r8 -msoft-float

PLATFORM_CPPFLAGS += -fno-strict-aliasing  -fno-common -ffixed-r8

PLATFORM_CPPFLAGS += -march=armv4

# =========================================================================

#

# Supply options according to compiler version

#

# =========================================================================

#PLATFORM_RELFLAGS +=$(call cc-option,-mshort-load-bytes,$(call cc-option,-malignment-traps,))

PLATFORM_CPPFLAGS += $(call cc-option,-mapcs-32)

PLATFORM_RELFLAGS += $(call cc-option,-mshort-load-bytes,$(call cc-option,-malig/nment-traps,)) 

 

 

 


这样改后使用3.4.1出错,换成3.3.2编译成功

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
蛋白质是生物体中普遍存在的一类重要生物大分子,由天然氨基酸通过肽键连接而成。它具有复杂的分子结构和特定的生物功能,是表达生物遗传性状的一类主要物质。 蛋白质的结构可分为四级:一级结构是组成蛋白质多肽链的线性氨基酸序列;二级结构是依靠不同氨基酸之间的C=O和N-H基团间的氢键形成的稳定结构,主要为α螺旋和β折叠;三级结构是通过多个二级结构元素在三维空间的排列所形成的一个蛋白质分子的三维结构;四级结构用于描述由不同多肽链(亚基)间相互作用形成具有功能的蛋白质复合物分子。 蛋白质在生物体内具有多种功能,包括提供能量、维持电解质平衡、信息交流、构成人的身体以及免疫等。例如,蛋白质分解可以为人体提供能量,每克蛋白质能产生4千卡的热能;血液里的蛋白质能帮助维持体内的酸碱平衡和血液的渗透压;蛋白质是组成人体器官组织的重要物质,可以修复受损的器官功能,以及维持细胞的生长和更新;蛋白质也是构成多种生理活性的物质,如免疫球蛋白,具有维持机体正常免疫功能的作用。 蛋白质的合成是指生物按照从脱氧核糖核酸(DNA)转录得到的信使核糖核酸(mRNA)上的遗传信息合成蛋白质的过程。这个过程包括氨基酸的活化、多肽链合成的起始、肽链的延长、肽链的终止和释放以及蛋白质合成后的加工修饰等步骤。 蛋白质降解是指食物中的蛋白质经过蛋白质降解酶的作用降解为多肽和氨基酸然后被人体吸收的过程。这个过程在细胞的生理活动中发挥着极其重要的作用,例如将蛋白质降解后成为小分子的氨基酸,并被循环利用;处理错误折叠的蛋白质以及多余组分,使之降解,以防机体产生错误应答。 总的来说,蛋白质是生物体内不可或缺的一类重要物质,对于维持生物体的正常生理功能具有至关重要的作用。
### 回答1: 编译mt7621配置的U-Boot需要进行以下步骤: 首先,确认已经准备好编译环境,包括安装好交叉编译工具链和相关依赖库。 然后,从U-Boot官方仓库中获取最新的源代码。可以使用git命令进行克隆,例如: git clone https://github.com/u-boot/u-boot.git 接下来,切换到代码目录并进入配置界面,执行以下命令: cd u-boot make menuconfig 在配置界面中,选择"MTK",然后选择"MTK_MT7621"作为目标平台。根据需要,可以进行其他选项的配置,如串口、网络等。 配置完成后,保存退出配置界面。然后,执行以下命令进行编译: make CROSS_COMPILE=<交叉编译工具链前缀> 编译过程可能需要一段时间,取决于计算机性能和代码规模。 编译完成后,可以得到u-boot.bin文件作为编译结果。该文件可以烧录到MT7621芯片的Flash中,用于启动设备。 以上是编译mt7621配置的U-Boot的大致步骤。根据具体需求,可能还需要进行其他配置和调整。在进行编译前,建议查阅U-Boot的官方文档和相关资料,以便更详细地了解配置和编译过程。 ### 回答2: 编译 U-Boot for MT7621 配置需要先准备编译环境和相关工具链。以下是编译 MT7621 配置的步骤: 1. 首先,确保你的系统上已经安装了交叉编译工具链。可以通过执行以下命令来检查是否已安装交叉编译工具链: ``` arm-openwrt-linux-gcc -v ``` 如果显示出工具链的版本信息,则表示已经安装成功。 2. 下载 U-Boot 的源码。你可以通过 Git 或者下载压缩包的方式获取源码。例如,使用 Git 命令来克隆 U-Boot 的仓库: ``` git clone https://github.com/u-boot/u-boot.git ``` 3. 进入源码目录,并创建编译配置文件。执行以下命令: ``` cd u-boot make mt7621_xxx_config ``` 其中,`mt7621_xxx_config` 是针对你的具体设备的配置文件,例如 `mt7621_rfb_config` 或 `mt7621_xxx_config` 等。你可以查阅相关文档来确定正确的配置文件。 4. 根据配置文件生成编译规则。执行以下命令: ``` make oldconfig ``` 根据你的需求来回答一些提示问题。默认选项通常是可以满足大多数需求的。 5. 开始编译。执行以下命令: ``` make ``` 编译时间会根据你的机器性能和代码大小而不同。最终编译产生的 U-Boot 可执行文件将位于生成文件夹中。 完成上述步骤后,你将获得一个适用于 MT7621 的 U-Boot 可执行文件。你可以将它用于你的项目中,并在启动过程中加载它。当然,在编译之前,你可能需要修改一些配置文件,以确保 U-Boot 适配你的具体硬件环境。 ### 回答3: 要编译 mt7621 的 u-boot 需要进行一些配置。 首先,你需要下载 u-boot 的源代码。可以从官方网站或者 GitHub 上找到 mt7621 相关的 u-boot 仓库,并下载代码至你的开发环境中。 接下来,你需要进入 u-boot 的源代码目录。使用终端命令行工具进入该目录。 在源代码目录中,你可以找到一个名为 `configs` 的文件夹,其中包含了不同平台的配置文件。你需要找到一个名为 `mt7621_bpir2_defconfig` 的文件,这是针对 mt7621 平台的默认配置文件。 如果你想进行自定义配置,可复制该文件,并在复制的文件上进行修改。你可以使用一个文本编辑器打开配置文件,找到需要修改的选项,并进行相应的修改。例如,你可以修改串口配置、内存配置、网络协议等选项,以适配你的具体需求。 完成修改后,你可以保存文件,并返回到源代码的根目录。 最后,你需要运行编译命令来生成可执行的 u-boot 映像文件。通常情况下,你可以通过运行 `make` 命令来进行编译编译过程可能会耗费一些时间,请耐心等待。 当编译完成后,你可以在源代码目录下找到生成的 u-boot 映像文件。该文件一般以 `u-boot.bin` 或者 `u-boot.img` 的形式存在。 编译完成后,你可以将生成的 u-boot 映像文件烧录到 mt7621 平台的 Flash 存储器中,以替换原有的 u-boot 程序。 总而言之,编译 mt7621 的 u-boot 需要下载源代码、进行配置修改,并通过编译命令生成 u-boot 映像文件。最后,将生成的映像文件烧录到目标平台中。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值