[ell-i-developers] Re: some problemas

  • From: Eero Hakala <eero.k.hakala@xxxxxxxxx>
  • To: ell-i-developers <ell-i-developers@xxxxxxxxxxxxx>
  • Date: Sat, 24 May 2014 20:43:01 +0300

Starting point is that I want to use ant created toolchain (based on
ELL-i's Arduino fork) to see that all possible environments can
easily(???_HAH_!!!) be set up and running - BUT this is true only if the
32/64-bit environment is set up propperly!!!

So after this phase I proceeded to use
gcc-arm-none-eabi-4_8-2014q1-20140314-linux.tar.bz2 from launchpad


1. question checksum, the build.xml file instructs to check whether the
file tools archive is genuine or not:

    <checksum
file="linux/dist/gcc-arm-none-eabi-4_8-2014q1-20140314-linux.tar.bz2"
algorithm="sha"
      fileext=".sha" verifyproperty="checksum.matches"/>
    <condition property="checksum.matches.fail">
      <equals arg1="${checksum.matches}" arg2="false"/>
    </condition>
    <fail if="checksum.matches.fail">Checksum failed.

      File gcc-arm-none-eabi-4_8-2014q1-20140314-linux.tar.bz2 failed
checksum.
      Please remove
"linux/dist/gcc-arm-none-eabi-4_8-2014q1-20140314-linux.tar.bz2" to
download it again.
    </fail>

so it'll find gcc-arm-none-eabi-4_8-2014q1-20140314-linux.tar.bz2 and
gcc-arm-none-eabi-4_8-2014q1-20140314-linux.tar.bz2.sha

And normally both files can be downloaded - now the ...sha file is missing
so I try to create one, with no succes up to now.


2. Then I took of the test away but


3. ant didn't want to unzip the archive so I did it by hand.


4. I still had problem that there was different name in archive that was
expected, so I changed
    that to the expected one:

    this was in archive: gcc-arm-none-eabi-4_8-2014q1
    this was the expected one: g++_arm_none_eabi



5. After all this I got the makefile based development runtime environment
up and running (as you see
    its using compiler that resides deep in ELL-i's Arduino fork):

make[2]: Entering directory `/home/eero/Ell-i/Runtime/stm32/build'
~/Ell-i/ng-ell-i/Arduino/build/linux/work/hardware/tools/g++_arm_none_eabi/bin/arm-none-eabi-gcc
-c -std=c99 -g -Os --param max-inline-insns-single=500 -Wall
-ffunction-sections -fdata-sections -fno-common -nostdlib -mcpu=cortex-m0
-mthumb -DF_CPU=48000000L -DARDUINO=1.5.4 -DELLI_STM32F051_ELLDUINO
-DARDUINO_ARCH_STM32 -D__STM32F051__ -I../cores/arduelli
-I../system/stm32/inc -I../system/stm32/CMSIS/Include
-I../variants/ellduino   -c -o startup_stm32f0xx.o
../system/stm32/src/startup_stm32f0xx.c
.
.
.
~/Ell-i/ng-ell-i/Arduino/build/linux/work/hardware/tools/g++_arm_none_eabi/bin/arm-none-eabi-objcopy
-O ihex sketch sketch.hex
make[1]: Leaving directory `/home/eero/Ell-i/Runtime/stm32/build'


6. but I still have problems with IDE based environment:

Arduino: ${version} (Linux), Board: "ELL-i Ell-duino"
/home/eero/Ell-i/ng-ell-i/Arduino/build/linux/work/hardware/tools/g++_arm_none_eabi/bin/arm-none-eabi-g++
-c -std=c++11 -g -Os --param max-inline-insns-single=500 -Wall
-ffunction-sections -fdata-sections -fno-common -nostdlib -mcpu=cortex-m0
-mthumb -DF_CPU=48000000L -DARDUINO=153 -DELLI_STM32F051_ELLDUINO
-DARDUINO_ARCH_STM32 -fno-rtti -fno-exceptions -fno-threadsafe-statics
-D__STM32F051__
-I/home/eero/Ell-i/ng-ell-i/Arduino/build/linux/work/hardware/ell-i/stm32/cores/arduelli
-I/home/eero/Ell-i/ng-ell-i/Arduino/build/linux/work/hardware/ell-i/stm32/variants/ellduino
/tmp/build9141334830626261003.tmp/sketch_may24a.cpp -o
/tmp/build9141334830626261003.tmp/sketch_may24a.cpp.o
In file included from
/home/eero/Ell-i/ng-ell-i/Arduino/build/linux/work/hardware/ell-i/stm32/variants/ellduino/ellduino_gpio.h:26:0,
                 from
/home/eero/Ell-i/ng-ell-i/Arduino/build/linux/work/hardware/ell-i/stm32/cores/arduelli/Arduino.h:27,
                 from sketch_may24a.ino:1:
/home/eero/Ell-i/ng-ell-i/Arduino/build/linux/work/hardware/ell-i/stm32/cores/arduelli/arduelli_gpio.h:29:26:
fatal error: system_init.h: No such file or directory
 # include <system_init.h>
                          ^
compilation terminated.


The process of compilation is quite different in IDE base environment as it
copies everything into
a tmp-directory (in this case /tmp/build9141334830626261003.tmp) and then
start the compilation.
Now it looks like it doesn't include or copy our system directory at all
into this tmp,


- where and how should the to be included stuff be defined?

make/arduino.txt
boards.txt
platform.txt


7. make PLATFORM=emulator works but when running it I get a segmentation
fault!


-eero-








On Sat, May 24, 2014 at 6:10 PM, jigsaw <jigsaw@xxxxxxxxx> wrote:

> Hi Eero,
>
> I don't get what do u mean by creation or comparison of fingerprints. But
> FYI the Runtime main branch compiles fine under my linux env with both
> launchpad or Code Sourcery toolchain.
> But I see you are trying to run sketch under linux, so do u mean the
> emulator compilation?
>
>
> On Sat, May 24, 2014 at 2:39 PM, Eero Hakala <eero.k.hakala@xxxxxxxxx>wrote:
>
>> Yep, same problem with the 4.8 stuff from launchpad - no fingerprint
>> distributed and when I create one of my own, it fails in comparison...
>>
>>
>> -eero-
>>
>>
>>
>> On Sat, May 24, 2014 at 2:28 PM, Eero Hakala <eero.k.hakala@xxxxxxxxx>wrote:
>>
>>> As I said, there is a more recent one but it doen't have a fingerprint
>>> and so I tried to create it:
>>> gcc-arm-none-eabi-4.7.4-2013q2-linux32.tar.gz
>>>
>>> -eero-
>>>
>>>
>>>
>>> On Sat, May 24, 2014 at 1:54 PM, Pekka Nikander 
>>> <pekka.nikander@xxxxxx>wrote:
>>>
>>>> The ARM compiler distributed with the Arduino IDE is too old.  As I
>>>> wrote, you can get a newer one from
>>>> https://launchpad.net/gcc-arm-embedded
>>>>
>>>> I'm using 4.8.3 20131129 from there.
>>>>
>>>> --Pekka
>>>>
>>>> On 2014–05–24, at 12:56 , Eero Hakala <eero.k.hakala@xxxxxxxxx> wrote:
>>>>
>>>> > I am talking about ELL-i runtime, it is a fresh copy made yesterday!
>>>> > ~/Ell-i/Runtime/stm32/build$
>>>> >
>>>> > And I use the compiler that is delivered with IDE (dated to 2010), so
>>>> I'll change that one to a more recent one as there exists also version of
>>>> 2013, even if its not in our forked version of Arduino. I'll let you know
>>>> how that succees...
>>>> >
>>>> > My system compiler is gcc 4.8.2
>>>> > And in there is also something interesting as I can create the
>>>> emultor but I get a segmentation fault...
>>>> >
>>>> > eero@tkone:~/Ell-i/Runtime/stm32/build$ ./sketch
>>>> > RCC:CR:200ff83|=1
>>>> > RCC:CFGR:8&=f8ffb80c
>>>> > RCC:CR:200ff83&=fef6ffff
>>>> > RCC:CR:200ff83&=fffbffff
>>>> > RCC:CFGR:8&=ffc0ffff
>>>> > RCC:CFGR2:0&=fffffff0
>>>> > RCC:CFGR3:0&=fffffeac
>>>> > RCC:CR2:ff80&=fffffffe
>>>> > RCC:CIR:=0
>>>> > FLASH:ACR:=11
>>>> > RCC:CFGR:8|=0
>>>> > RCC:CFGR:8|=0
>>>> > RCC:CFGR:8&=ffc0ffff
>>>> > RCC:CFGR:8|=280000
>>>> > RCC:CR:200ff83|=1000000
>>>> > RCC:CR:300ff83&2000000
>>>> > RCC:CFGR:280008&=fffffffc
>>>> > RCC:CFGR:280008|=2
>>>> > RCC:CFGR:28000a&c
>>>> > InitRecord: 804a842 type: 9090 count: 0
>>>> > Segmentation fault (core dumped)
>>>> >
>>>> >
>>>> > -eero-
>>>> >
>>>> >
>>>> >
>>>> >
>>>> >
>>>> > On Sat, May 24, 2014 at 12:07 PM, Pekka Nikander <
>>>> pekka.nikander@xxxxxx> wrote:
>>>> > Hi Eero,
>>>> >
>>>> > Would you please also provide some background material, i.e. which
>>>> repository, which branch, in which directory are you building, and
>>>> preferably also the top of "git log" so that I can see what exactly is the
>>>> state of your repo.
>>>> >
>>>> > And which version of gcc are you using?  I suspect that you are using
>>>> a tool old tool chain, one that does not properly support the C++11
>>>> standard, which we now depend on.
>>>> >
>>>> > The recommended compiler for the real binary is now gcc-4.8 from
>>>> https://launchpad.net/gcc-arm-embedded, latest version.
>>>> >
>>>> > The recommended compiler for the emulator is now gcc-4.7 or gcc-4.8.
>>>> >
>>>> > gcc-4.9 may work but haven't been tested.
>>>> >
>>>> > --Pekka
>>>> >
>>>> > On 2014–05–24, at 11:59 , Eero Hakala <eero.k.hakala@xxxxxxxxx>
>>>> wrote:
>>>> >
>>>> > > Hi! I have been configuring the ELL-i environment in my ubuntu
>>>> machine and now I have got enough bits and pieces to that I have some
>>>> reasonable error messages - I just wonder what is missing in my environment
>>>> or should I build some libraries first... I get both warnings (level 1) and
>>>> errors (level 2):
>>>> > >
>>>> > > In file included from ../system/stm32/src/system_init.c:25:
>>>> > > ../system/stm32/inc/system_init.h:182: warning: declaration does
>>>> not declare anything
>>>> > > ../system/stm32/inc/system_init.h:188: warning: declaration does
>>>> not declare anything
>>>> > > ../system/stm32/inc/system_init.h:191: warning: declaration does
>>>> not declare anything
>>>> > > ../system/stm32/src/system_init.c: In function
>>>> 'SystemInitAddrAndOnes':
>>>> > > ../system/stm32/src/system_init.c:28: error:
>>>> 'SystemInitRecordArray' has no member named 'init_records_addr_and_ones'
>>>> > > ../system/stm32/src/system_init.c:31: error:
>>>> 'SystemInitRecordArray' has no member named 'init_record_offset'
>>>> > > ../system/stm32/src/system_init.c: In function
>>>> 'SystemInitAddrOnesAndZeroes':
>>>> > > ../system/stm32/src/system_init.c:39: error:
>>>> 'SystemInitRecordArray' has no member named
>>>> 'init_records_addr_ones_and_zeroes'
>>>> > > ../system/stm32/src/system_init.c:42: error:
>>>> 'SystemInitRecordArray' has no member named 'init_record_offset'
>>>> > > ../system/stm32/src/system_init.c: In function
>>>> 'SystemInitData16Only':
>>>> > > ../system/stm32/src/system_init.c:52: error:
>>>> 'SystemInitRecordArray' has no member named 'init_records_data16_only'
>>>> > > ../system/stm32/src/system_init.c:54: error:
>>>> 'SystemInitRecordArray' has no member named 'init_record_address16'
>>>> > > ../system/stm32/src/system_init.c: In function
>>>> 'SystemInitData16WithOffsets':
>>>> > > ../system/stm32/src/system_init.c:62: error:
>>>> 'SystemInitRecordArray' has no member named 'init_records_data16_only'
>>>> > > ../system/stm32/src/system_init.c:63: error:
>>>> 'SystemInitRecordArray' has no member named 'init_records_register_offsets'
>>>> > > ../system/stm32/src/system_init.c:65: error:
>>>> 'SystemInitRecordArray' has no member named 'init_record_address16'
>>>> > > ../system/stm32/src/system_init.c: In function
>>>> 'SystemInitData32Only':
>>>> > > ../system/stm32/src/system_init.c:72: error:
>>>> 'SystemInitRecordArray' has no member named 'init_records_data32_only'
>>>> > > ../system/stm32/src/system_init.c:74: error:
>>>> 'SystemInitRecordArray' has no member named 'init_record_address32'
>>>> > > make[2]: *** [system_init.o] Error 1
>>>> > > make[2]: Leaving directory `/home/eero/Ell-i/Runtime/stm32/build'
>>>> > >
>>>> > > make[1]: *** [../variants/ellduino/libstm32f0.a] Error 2
>>>> > > make[1]: Leaving directory `/home/eero/Ell-i/Runtime/stm32/build'
>>>> > > make: *** [all] Error 2
>>>> > >
>>>> > >
>>>> > >
>>>> >
>>>> >
>>>>
>>>>
>>>
>>
>

Other related posts: