Eigenmath单片机移植失败
本帖最后由 nbzwt 于 2012-10-19 21:49 编辑失败原因:RAM占用过大编译结果:
ROM 125KB
RAM 314KB
我用的单片机虽然说资源相对充裕(ROM 1MB,RAM 192KB),但是还是容不下Eigenmath,裁剪了也不行
不过还是将一下移植的经验:
按照Linux版的去移植,删除以下文件:
cmddisplay.cpp
draw.cpp
history.cpp
html-tool.c
MainXP.cpp
MainOSX.cpp
msqrt.cpp
prototype-tool.c
window.cpp
对于重名函数需要自己改名:
quotient.cpp:
void divpoly(void)
inv.cpp
void decomp(int n) 回lz,我移植Eigenmath到9860的问题基本一样。
话说你有没有删掉pirme table?我觉得那个才是最占RAM的。
另外decomp和divpoly的重载用c++编译器不行么?
(我移植的是WIN32 Console版的) 本帖最后由 nbzwt 于 2012-10-20 22:33 编辑
2# diameter 没有删。IAR编译器不支持重载。你不说我倒没发现,prime table在坑爹啊,连个const标志都不加,直接算到RAM里面去了。还有在besselj和bessely里用到了yn和jn,编译器告诉我未定义,啥情况? 没想到prime居然是打表.. 打表……想玩rsa? 3# nbzwt
sh编译器里面提供的math.h也没有提供yn和jn,网上也没有找到实现..我直接注释掉了所有没提供的函数..不知道为啥好像没出什么问题...
页:
[1]