Compiler Parameter übergabe für AddApp

pvs-deck
PowerUser
Avatar
Gender:
Age: 53
Homepage: pvs-deck.de
Posts: 1341
Registered: 02 / 2009
Subject:

Compiler Parameter übergabe für AddApp

 · 
Posted: 06.10.2020 - 17:33  ·  #1
Hallo rolf,

ich würde gerne den Compiler über eine Batch-Routine aufrufen und über diese Routine eine Firmware für den Bootloader erzeugen lassen.

Gibt es einen Compiler-Parameter, der dann ein evtl.
Code
addApp    = 'Bootloader_BOOTSD.hex';// Pfad zum Bootloader

beim Build einfach ignoriert, auch wenn dieser Eintrag im Define-Bereich steht?

Thorsten
Thomas.AC
Benutzer
Avatar
Gender: n/a
Age: 43
Posts: 308
Registered: 07 / 2013
Subject:

Re: Compiler Parameter übergabe für AddApp

 · 
Posted: 07.10.2020 - 21:55  ·  #2
Hallo Thorsten,

ich hätte einen alternativen Lösungsvorschlag mit dem Kommandozeilentool sRecord. Das Tool kann hex Dateien verarbeiten.

Bitte text Datei öffnen, dieses Forum mag keine Backslashs.

Gruß

Thomas
Attachments
Warum funktionieren keine Backslashs im CODE Tag?

Hallo Thorsten,

ich hätte einen alternativen Lösungsvorschlag mit dem Kommandozeilentool sRecord. Das Tool kann hex Dateien verarbeiten.

Mit dem folgenden batch kann man z.B. das hex von der App und dem Boot für einen xmega128 zusammenführen.

.\srecord\srec_cat ^
.\app\mainApp.hex -intel -crop 0x00000 0x20000 ^
.\boot\bootApp.hex -intel -crop 0x20000 0x22000 ^
-o .\appWithBoot.hex -intel

Laut sRecord Reference manual [http://srecord.sourceforge.net/srecord-1.64.pdf] müsste es auch möglich sein das Boot aus der App zu entfernen.

Ich glaub so

.\srecord\srec_cat ^
.\app\mainApp.hex -intel -exclude -within .\boot\bootApp.hex ^
-o .\appWithoutBoot.hex -intel

Wobei ich dann das machen würde

.\srecord\srec_cat ^
.\app\main.hex -intel -crop 0x00000 0x20000 ^
-o .\app\WithoutBoot.hex -intel


Hier der Auszug aus dem Reference manual von sRecord

Overlaying two data files
It is common to want to “join” two hex files together, without any changes of address. on the assumption
neither file intersects with the other. This is a simple “layers”, it is quite common for linkers to output the
main code, and then a whole bunch of relocation and jump destination, by writing a two layered files.
srec_cat one.he two.hex −o three.hex
Almost always you see an error
srec_cat: two.srec: 49282: contradictory 0x00000000 value (previous = 0x00, this one = 0x80)
This means that the files actually intersect, they try to set the same location. You can turn the error into a
warning, using the −contradictory-bytes=warning command line option. But this will probably generate
a bazillion warnings.
The necessary step is to crop the first file, to avoid the regions the second file is going o be overwriting.
srec_cat
one.srec −exclude −within two.srec
two.srec −exclude −within one.srec
−o three.hex
Depending on your linker this will have no errors (but if it wants another layer, more jiggery-pokery is
required).
Filename: für thorsten srecord.txt
Filesize: 1.99 KB
Title:
Download counter: 92
pvs-deck
PowerUser
Avatar
Gender:
Age: 53
Homepage: pvs-deck.de
Posts: 1341
Registered: 02 / 2009
Subject:

Re: Compiler Parameter übergabe für AddApp

 · 
Posted: 08.10.2020 - 11:30  ·  #3
Quote by Thomas.AC

Hallo Thorsten,

ich hätte einen alternativen Lösungsvorschlag mit dem Kommandozeilentool sRecord. Das Tool kann hex Dateien verarbeiten.

Bitte text Datei öffnen, dieses Forum mag keine Backslashs.

Gruß

Thomas


Hallo Thomas,

Danke für Deine Idee.
Aber wie soll man das verarbeiten? Soweit ich weiss beinhalten die Hexfiles Prüfsummen, wenn ich diese Kürze stimmen diese doch nicht mehr.

Bei normalen C-Compilern kann man über den Linker in der Batch das recht einfach bearbeiten. Ansonsten schaue ich mal ob ich das Ganze über einen UE-Script ändern kann. Eine Compiler-Anweisung wäre hier halt der einfachere Weg.

Thorsten
Thomas.AC
Benutzer
Avatar
Gender: n/a
Age: 43
Posts: 308
Registered: 07 / 2013
Subject:

Re: Compiler Parameter übergabe für AddApp

 · 
Posted: 08.10.2020 - 23:54  ·  #4
Hallo Thorsten,

Klar ist eine integrierte Lösung schöner.

Quote
Aber wie soll man das verarbeiten? Soweit ich weiss beinhalten die Hexfiles Prüfsummen, wenn ich diese Kürze stimmen diese doch nicht mehr.


Ich sehe da keine Probleme. Bei meinem Vorschlag wird das "AppApp" einfach wieder rückgängig gemacht.

Gruß
Selected quotes for multi-quoting:   0

Registered users in this topic

Currently no registered users in this section

The statistic shows who was online during the last 5 minutes. Updated every 90 seconds.
MySQL Queries: 16 · Cache Hits: 15   82   97 · Page-Gen-Time: 0.048508s · Memory Usage: 2 MB · GZIP: on · Viewport: SMXL-HiDPI