4
0
mirror of https://github.com/RT-Thread/rt-thread.git synced 2025-01-18 17:53:31 +08:00

In stm32fx's stm32_rom.ld, add symbol - '_stext' to support lua a. Update lua's README.TXT

git-svn-id: https://rt-thread.googlecode.com/svn/trunk@2410 bbd45198-f89e-11dd-88c7-29a3b14d5316
This commit is contained in:
xiongyihui3@gmail.com 2012-11-13 15:21:01 +00:00
parent ee2344c582
commit d48ef70ecd
6 changed files with 15 additions and 11 deletions

View File

@ -17,6 +17,7 @@ SECTIONS
.text : .text :
{ {
. = ALIGN(4); . = ALIGN(4);
_stext = .;
KEEP(*(.isr_vector)) /* Startup code */ KEEP(*(.isr_vector)) /* Startup code */
. = ALIGN(4); . = ALIGN(4);
*(.text) /* remaining code */ *(.text) /* remaining code */

View File

@ -17,6 +17,7 @@ SECTIONS
.text : .text :
{ {
. = ALIGN(4); . = ALIGN(4);
_stext = .;
KEEP(*(.isr_vector)) /* Startup code */ KEEP(*(.isr_vector)) /* Startup code */
. = ALIGN(4); . = ALIGN(4);
*(.text) /* remaining code */ *(.text) /* remaining code */

View File

@ -17,6 +17,7 @@ SECTIONS
.text : .text :
{ {
. = ALIGN(4); . = ALIGN(4);
_stext = .;
KEEP(*(.isr_vector)) /* Startup code */ KEEP(*(.isr_vector)) /* Startup code */
. = ALIGN(4); . = ALIGN(4);
*(.text) /* remaining code */ *(.text) /* remaining code */

View File

@ -17,6 +17,7 @@ SECTIONS
.text : .text :
{ {
. = ALIGN(4); . = ALIGN(4);
_stext = .;
KEEP(*(.isr_vector)) /* Startup code */ KEEP(*(.isr_vector)) /* Startup code */
. = ALIGN(4); . = ALIGN(4);
*(.text) /* remaining code */ *(.text) /* remaining code */

View File

@ -2,7 +2,7 @@
## 简介 ## 简介
RT-Thread中的Lua修改自[eLua](http://www.eluaproject.net/)的Lua-5.1.4版本。 RT-Thread中的Lua修改自[eLua](http://www.eluaproject.net/)的Lua-5.1.4版本。
Lua依赖于Neblib库 采用gcc工具链时Lua依赖于newlib库其它工具链暂时还不支持
启动lua的RAM占用情况 启动lua的RAM占用情况
- 标准的lua 17.1904296875 KB - 标准的lua 17.1904296875 KB
- 优化的lua 5.01953125 KB - 优化的lua 5.01953125 KB
@ -24,13 +24,14 @@ Lua依赖于Neblib库。
3.更多的配置项可以在luaconf.h中找到 3.更多的配置项可以在luaconf.h中找到
## 开发相关 ## 开发相关
- 采用gcc工具链时依赖于newlib需在rtconfig.h中定义RT_USING_NEWLIB
- 开启编译器对C99的支持如MDK中在C/C++选项的Misc Controls输入框中添加--c99 - 开启编译器对C99的支持如MDK中在C/C++选项的Misc Controls输入框中添加--c99
- 开启内存优化时:需要在链接脚本中定义_stext和_etext.ordata*放在两者之间。 - 需要在链接脚本中定义_stext和_etext.ordata*放在两者之间。
用于判断数据是read-only和writable。MDK中如何实现 用于判断数据是read-only和writable。MDK中如何实现
- 添加新的模块参见larduinolib.c - 添加新的模块参见lexample.c
## 目录说明 ## 目录说明
- lua从eLua获得Lua-5.1.4版本代码 - lua从eLua获得Lua-5.1.4版本代码
- exlibsexternal libraries外部库代码Arduino - exlibsexternal libraries外部库代码example
- applicationsLua应用代码如finsh中lua() - applicationsLua应用代码如finsh中lua()
- test测试代码 - test测试代码

View File

@ -197,7 +197,6 @@ _wait_r(struct _reent *ptr, int *status)
_ssize_t _ssize_t
_write_r(struct _reent *ptr, int fd, const void *buf, size_t nbytes) _write_r(struct _reent *ptr, int fd, const void *buf, size_t nbytes)
{ {
#ifndef RT_USING_DFS
if (fd < 3) if (fd < 3)
{ {
rt_device_t console_device; rt_device_t console_device;
@ -207,13 +206,13 @@ _write_r(struct _reent *ptr, int fd, const void *buf, size_t nbytes)
if (console_device != 0) rt_device_write(console_device, 0, buf, nbytes); if (console_device != 0) rt_device_write(console_device, 0, buf, nbytes);
return nbytes; return nbytes;
} }
return 0; else
#else {
_ssize_t rc; _ssize_t rc;
rc = write(fd, buf, nbytes); rc = write(fd, buf, nbytes);
return rc; return rc;
#endif }
} }
#endif #endif