|
|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?注册
×
各位好:
如题,如何指定程序的启动代码呢?我是想自己写启动代码,不用编译器的,并且想使用链接脚本(.lds),请指教
起因是这两天想利用u-boot的start.S和它的链接脚本来做自己代码的启动,但是发现start.S里有用#define 定义一些常量,可这不是GNU汇编的语法啊,导致编译不过,后来我手动改成.equ形式才编译过,请问为什么U-BOOT中能编译通过呢?(已找到答案:GCC 在调用汇编器前会对.S结尾的文件进行预处理,可以使用类似于C的一些东西)
在链接阶段,当我使用ld来链接时,居然会报错说有函数找不到,从函数名来判断应该是库文件中的,如何解决这个问题呢?
还有一个就是会报错说_start等多重定义,我试图在链接选项里加入-nostartfiles -nostdlib也没有用,请问如何解决呢?在我不使用链接脚本(*.lds)时候就不会报错 |
|