簡體   English   中英

Linux raspberrypi 4.1.19-v7 + armv7l GNU / Linux中的匯編器錯誤

[英]Assembler error in Linux raspberrypi 4.1.19-v7+ armv7l GNU/Linux

我試圖從https://github.com/cetic/6lbr/wiki/COOJA-Interface建立一個項目

但是,當我嘗試使用命令make cooja-small啟動cooja接口時,此錯誤日志失敗:

 INFO [AWT-EventQueue-0] (MessageListUI.java:257) - slip-net.c:50:12: warning: unused variable 'i' [-Wunused-variable]
 INFO [AWT-EventQueue-0] (MessageListUI.java:257) -    uint16_t i;
 INFO [AWT-EventQueue-0] (MessageListUI.java:257) -             ^
 INFO [AWT-EventQueue-0] (MessageListUI.java:257) -   CC        no-framer.c
 INFO [AWT-EventQueue-0] (MessageListUI.java:257) -   CC        slip-radio-cooja.c
 INFO [AWT-EventQueue-0] (MessageListUI.java:257) -   CC        ../../../apps/slip-cmd/cmd.c
 INFO [AWT-EventQueue-0] (MessageListUI.java:257) -   CC        ../../../apps/slip-cmd/packetutils.c
 INFO [AWT-EventQueue-0] (MessageListUI.java:257) -   CC        ../../../platform/cooja/lib/simEnvChange.c
 INFO [AWT-EventQueue-0] (MessageListUI.java:257) -   CC        ../../../platform/cooja/sys/cooja_mt.c
 INFO [AWT-EventQueue-0] (MessageListUI.java:257) -   CC        ../../../platform/cooja/sys/cooja_mtarch.c
 INFO [AWT-EventQueue-0] (MessageListUI.java:257) - /tmp/ccHLzKYb.s: Assembler messages:
 INFO [AWT-EventQueue-0] (MessageListUI.java:257) - /tmp/ccHLzKYb.s:142: Error: bad instruction `pushl %eax'
 INFO [AWT-EventQueue-0] (MessageListUI.java:257) - /tmp/ccHLzKYb.s:143: Error: bad instruction `pushl %ebx'
 INFO [AWT-EventQueue-0] (MessageListUI.java:257) - /tmp/ccHLzKYb.s:144: Error: bad instruction `pushl %ecx'
 INFO [AWT-EventQueue-0] (MessageListUI.java:257) - /tmp/ccHLzKYb.s:145: Error: bad instruction `pushl %edx'
 INFO [AWT-EventQueue-0] (MessageListUI.java:257) - /tmp/ccHLzKYb.s:146: Error: bad instruction `pushl %esi'
 INFO [AWT-EventQueue-0] (MessageListUI.java:257) - /tmp/ccHLzKYb.s:147: Error: bad instruction `pushl %edi'
 INFO [AWT-EventQueue-0] (MessageListUI.java:257) - /tmp/ccHLzKYb.s:148: Error: bad instruction `pushl %ebp'
 INFO [AWT-EventQueue-0] (MessageListUI.java:257) - /tmp/ccHLzKYb.s:149: Error: bad instruction `pushl %ebp'
 INFO [AWT-EventQueue-0] (MessageListUI.java:257) - /tmp/ccHLzKYb.s:156: Error: bad instruction `movl [r3],%eax'
 INFO [AWT-EventQueue-0] (MessageListUI.java:257) - /tmp/ccHLzKYb.s:161: Error: bad instruction `movl (%eax),%ebx'
 INFO [AWT-EventQueue-0] (MessageListUI.java:257) - /tmp/ccHLzKYb.s:162: Error: bad instruction `movl %esp,(%eax)'
 INFO [AWT-EventQueue-0] (MessageListUI.java:257) - /tmp/ccHLzKYb.s:163: Error: bad instruction `movl %ebx,%esp'
 INFO [AWT-EventQueue-0] (MessageListUI.java:257) - /tmp/ccHLzKYb.s:168: Error: bad instruction `popl %ebp'
 INFO [AWT-EventQueue-0] (MessageListUI.java:257) - /tmp/ccHLzKYb.s:169: Error: bad instruction `popl %ebp'
 INFO [AWT-EventQueue-0] (MessageListUI.java:257) - /tmp/ccHLzKYb.s:170: Error: bad instruction `popl %edi'
 INFO [AWT-EventQueue-0] (MessageListUI.java:257) - /tmp/ccHLzKYb.s:171: Error: bad instruction `popl %esi'
 INFO [AWT-EventQueue-0] (MessageListUI.java:257) - /tmp/ccHLzKYb.s:172: Error: bad instruction `popl %edx'
 INFO [AWT-EventQueue-0] (MessageListUI.java:257) - /tmp/ccHLzKYb.s:173: Error: bad instruction `popl %ecx'
 INFO [AWT-EventQueue-0] (MessageListUI.java:257) - /tmp/ccHLzKYb.s:174: Error: bad instruction `popl %ebx'
 INFO [AWT-EventQueue-0] (MessageListUI.java:257) - /tmp/ccHLzKYb.s:175: Error: bad instruction `popl %eax'
 INFO [AWT-EventQueue-0] (MessageListUI.java:257) - /tmp/ccHLzKYb.s:176: Error: bad instruction `leave'
 INFO [AWT-EventQueue-0] (MessageListUI.java:257) - /tmp/ccHLzKYb.s:177: Error: bad instruction `ret'
 INFO [AWT-EventQueue-0] (MessageListUI.java:257) - ../../../Makefile.include:240: recipe for target 'obj_cooja/cooja_mtarch.o' failed
 INFO [AWT-EventQueue-0] (MessageListUI.java:257) - Process returned error code 2
 INFO [AWT-EventQueue-0] (MessageListUI.java:257) - make: *** [obj_cooja/cooja_mtarch.o] Error 1

我已經安裝了arm-none-eabi-gcc -v工具鏈

RAspberry詳細信息Linux raspberrypi 4.1.19-v7 +#858 SMP Tue Mar 15 Tue Mar 15 15:56:00 GMT 2016 armv7l GNU / Linux

可能是什么原因???

似乎此代碼是為64位編譯而設計的,而raspberry pi 2具有32位處理器(ARM為32位)。 popl指令為64位。 32位等效項是popq

引用x86 Assembly pushl / popl不能使用“錯誤:后綴或操作數無效”https://www.raspberrypi.org/forums/viewtopic.php?f=30&t=27761

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM