anybody build crazyfile firmware on windows success

Firmware/software/electronics/mechanics
Post Reply
nomady
Beginner
Posts: 6
Joined: Fri Aug 23, 2013 9:52 am

anybody build crazyfile firmware on windows success

Post 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.
nomady
Beginner
Posts: 6
Joined: Fri Aug 23, 2013 9:52 am

Re: anybody build crazyfile firmware on windows success

Post by nomady »

this is my build log:
Attachments
FireFly.build.log.rar
build log
(2.24 KiB) Downloaded 261 times
internguy
Beginner
Posts: 11
Joined: Fri Aug 16, 2013 1:20 am

Re: anybody build crazyfile firmware on windows success

Post 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
nomady
Beginner
Posts: 6
Joined: Fri Aug 23, 2013 9:52 am

Re: anybody build crazyfile firmware on windows success

Post 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.
internguy
Beginner
Posts: 11
Joined: Fri Aug 16, 2013 1:20 am

Re: anybody build crazyfile firmware on windows success

Post 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
nomady
Beginner
Posts: 6
Joined: Fri Aug 23, 2013 9:52 am

Re: anybody build crazyfile firmware on windows success

Post by nomady »

thank u!

I'm downloading the vm file.

maybe i will love linux...
nomady
Beginner
Posts: 6
Joined: Fri Aug 23, 2013 9:52 am

Re: anybody build crazyfile firmware on windows success

Post 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.
Attachments
FireFly.build.rar
finally build log
(1.85 KiB) Downloaded 256 times
tobias
Bitcraze
Posts: 2339
Joined: Mon Jan 28, 2013 7:17 pm
Location: Sweden

Re: anybody build crazyfile firmware on windows success

Post 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
nomady
Beginner
Posts: 6
Joined: Fri Aug 23, 2013 9:52 am

Re: anybody build crazyfile firmware on windows success

Post 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
tobias
Bitcraze
Posts: 2339
Joined: Mon Jan 28, 2013 7:17 pm
Location: Sweden

Re: anybody build crazyfile firmware on windows success

Post by tobias »

I haven't seen that issue before. Thanks for notifying us.
Post Reply