Page 1 of 1

anybody build crazyfile firmware on windows success

Posted: Fri Aug 23, 2013 9:59 am
by nomady
i have work on this for a few days.use Eclipse CDT + GNU_Tools_ARM_Embedded.i have fixed almost all the problems,now left this one:
when doing link,got this msg :arm-none-eabi/bin/ld.exe: BFD (GNU Tools for ARM Embedded Processors) 2.22.0.20130613 assertion fail /home/build/work/GCC-4-7-build/src/binutils/bfd/elf32-arm.c:12085
and i got a bin file,but size(79k) is bigger then cflie-2013.4.bin(48k).

anybody can help me,thanks anyway.

Re: anybody build crazyfile firmware on windows success

Posted: Fri Aug 23, 2013 10:31 am
by nomady
this is my build log:

Re: anybody build crazyfile firmware on windows success

Posted: Fri Aug 23, 2013 12:56 pm
by internguy
Hello!

I seriously haven't compiled on windows. I HIGHLY recommend using the virtual machine provided by bitcraze. After writing my own custom firmware, it only took one makecommand to compile on virtula machine because it already has everything. save your time use VM

Re: anybody build crazyfile firmware on windows success

Posted: Fri Aug 23, 2013 1:02 pm
by nomady
thanks for reply.

mebye is the easy way.if i can not solve this problem,i will try to use the vm.

i have no experience on linux.

Re: anybody build crazyfile firmware on windows success

Posted: Fri Aug 23, 2013 1:53 pm
by internguy
nomady wrote:thanks for reply.

mebye is the easy way.if i can not solve this problem,i will try to use the vm.

i have no experience on linux.
Don't be afraid to use linux just because you dont have experience.
all you need to do is
1) Download virtualization software
2) download bitcraze virtual machine
3)import virtual machine into your virtualization software
4)boot up your virtual machine
5)go to the crazyflie-fimrware directory
6)open up terminal
7)write "make" witohout quotes press enter
8)it will compile

Re: anybody build crazyfile firmware on windows success

Posted: Fri Aug 23, 2013 1:59 pm
by nomady
thank u!

I'm downloading the vm file.

maybe i will love linux...

Re: anybody build crazyfile firmware on windows success

Posted: Fri Aug 23, 2013 2:55 pm
by nomady
ok, finally i fix the build process,i got no error,no warning,but at last i got a binary file with size of 79k.

i'm not sure this is right.

the attachment is the build log.

Re: anybody build crazyfile firmware on windows success

Posted: Mon Aug 26, 2013 6:32 am
by tobias
The 79k size is probably because you build with debug information. Set flag DEBUG=0 to build without it and if you want to build for the bootloader you should set CLOAD=1 as well.

Code: Select all

make DEBUG=0 CLOAD=1

Re: anybody build crazyfile firmware on windows success

Posted: Sat Aug 31, 2013 7:05 am
by nomady
tobias wrote:The 79k size is probably because you build with debug information. Set flag DEBUG=0 to build without it and if you want to build for the bootloader you should set CLOAD=1 as well.

Code: Select all

make DEBUG=0 CLOAD=1
u a right!
when i set the optimization level to "Os",i got bin file of 48k.
thank u very much!

by the way,when compile in release mode,the "core_cm3.c" need do some patch:

Code: Select all

uint32_t __STREXB(uint8_t value, uint8_t *addr)
{
   uint32_t result=0;
  
   //pathed by alex
   //__ASM volatile ("strexb %0, %2, [%1]" : "=r" (result) : "r" (addr), "r" (value) );
   __ASM volatile ("strexb %0, %2, [%1]" : "=&r" (result) : "r" (addr), "r" (value) );
   return(result);
}

uint32_t __STREXH(uint16_t value, uint16_t *addr)
{
   uint32_t result=0;
  
   //patched by alex
   //__ASM volatile ("strexh %0, %2, [%1]" : "=r" (result) : "r" (addr), "r" (value) );
   __ASM volatile ("strexh %0, %2, [%1]" : "=&r" (result) : "r" (addr), "r" (value) );
   return(result);
}
notice: patch in gcc section

Re: anybody build crazyfile firmware on windows success

Posted: Sat Aug 31, 2013 11:20 am
by tobias
I haven't seen that issue before. Thanks for notifying us.