Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/sockets/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Embedded 如何减小rt5370sta.ko的尺寸?_Embedded - Fatal编程技术网

Embedded 如何减小rt5370sta.ko的尺寸?

Embedded 如何减小rt5370sta.ko的尺寸?,embedded,Embedded,我正在尝试为我的嵌入式主板构建rt5370驱动程序。 我下载了“DPO_RT5572_LinuxSTA_2.6.1.3_20121022.tar.bz2”。 首先,我没有做任何修改就执行了make。因此,rt5370sta.ko的大小是942330字节 我添加了我的配置armnonelinuxgnueabi-,内核目录 在./Makefile中 平台=ARMV7 ifeq($(平台),ARMV7) LINUX_SRC=/home/gykim/working/s1cam/bsp/LINUX/ker

我正在尝试为我的嵌入式主板构建rt5370驱动程序。 我下载了“DPO_RT5572_LinuxSTA_2.6.1.3_20121022.tar.bz2”。 首先,我没有做任何修改就执行了make。因此,rt5370sta.ko的大小是942330字节

我添加了我的配置armnonelinuxgnueabi-,内核目录

在./Makefile中

平台=ARMV7 ifeq($(平台),ARMV7) LINUX_SRC=/home/gykim/working/s1cam/bsp/LINUX/kernel CROSS_COMPILE=/opt/armv7/codesource/bin/arm none-linux-gnueabi- endif

在./os/linux/config.mk中

ifeq($(平台),ARMV7) 额外\u CFLAGS:=$(WFLAGS)-墙-I$(RT28xx\u DIR)/包括 endif

执行make命令后,rt5370sta.ko的大小为13750585。 文件太大了。 我怎样才能缩小尺寸


谢谢大家。

您的构建可能包含调试符号。通过为构建系统记录的任何方式显式构建以供发布,或使用以下方式去除符号:

strip --strip-debug rt5370sta.ko

但是请注意,调试生成也可能没有得到优化,并且生成的生成可能比您所能实现的更大和/或更慢,因此使用生成系统的发布配置可能更好。

也许
strip--strip debug rt5370sta.ko
?另见:谢谢。我在WFLAGS中添加了“-debug=0”。WFLAGS:=-DAGGREGATION_支持-DPIGGYBACK_支持-DWMM_支持-DLINUX-Wall-Wstrict原型-Wno trigraphs-debug=0该名称表示WFLAGS用于警告标志。也许还有一个更合适的地方。唐斯克是一个很好的建议。我在额外的地方加了一句。因此,EXTRA_CFLAGS:=$(WFLAGS)--debug=0-I$(RT28xx_DIR)/includeal所以我希望构建系统有单独的调试和发布目标-发布构建可能会应用优化,而不是通过简单地丢弃调试符号来执行。我想我需要arm的strip命令。我试图执行“strip-drt5370sta.ko”。但我无法识别输入文件“os/linux/rt5370sta.ko”的格式。所以,暂时来说,我似乎需要“-debug=0”。您必须拥有适当版本的
strip
——它是GNU工具链中binutils的一部分。可能被称为
armlinux-gnueabi-strip
。在交叉开发中,通常会设置一个环境,以使默认名称映射到交叉工具——我想在您的情况下不是这样。为了在构建过程中实现自动化,我认为
INSTALL\u MOD\u STRIP=1
可能是您所需要的-在某个地方-我不是专家,只是擅长谷歌!