Hallo, ich programmiere einen STM8003F3 mit dem ST Visual Develop und dem Cosmic-Compiler. Alles funktioniert wunderbar, aber auch in der Release-Version fallen mir Pfadangaben in der .S19-Datei auf, die wahrscheinlich auch auf den Mikrocontroller programmiert werden. Habe schon in den Compile-Optionen nach Debug-Symbolen etc. gesucht, allerdings konnte ich nichts verdächtiges finden. Hat jemand eine Idee, woher die Pfadangaben kommen können? Ist wie gesagt nur ein kosmetisches Problem, würde mich aber trotzdem interessieren. Stefan C COMPILER COMMAND LINE: cxstm8 +warn +mods0 +split -pne -pp -dSTM8S003 -i..\..\..\firmware -i..\..\..\..\libraries\stm8s_stdperiph_driver\inc -i..\..\..\..\utilities\stm8s_eval -i..\..\..\..\utilities\stm8s_eval\common -i..\..\..\..\utilities\stm8s_eval\stm8-128_eval $(ToolsetIncOpts) -cl$(IntermPath) -co$(IntermPath) $(InputFile) LINKER COMMAND LINE: clnk $(ToolsetLibOpts) -o $(OutputPath)$(TargetSName).sm8 -m$(OutputPath)$(TargetSName).map $(OutputPath)$(TargetSName).lkf cvdwarf $(OutputPath)$(TargetSName).sm8
Gast
#6897097
Benutzt du vielleicht irgendwo
1 | |
Im Code? Das landet dann natürlich im Image. Eventuell ist das auch indirekt in einem Makro der Standard Library.
Gast
#6897277
Niklas Gürtler schrieb: > Benutzt du vielleicht irgendwo__FILE__ > Im Code? Das landet dann natürlich im Image. Eventuell ist das auch > indirekt in einem Makro der Standard Library. Das zu verifizieren oder auszuschliessen würde man mit einem "leeren" Programm wie dem hier:
1 | |
2 | |
3 | |
Gast
#6897406
Da fällt mir noch was ein: Vielleicht sind das Teile der debug Informationen. Deinen compiler kenne ich nicht, bei gcc sind das die switches die mit "-g" zu tun haben. Ein kurzer Test zeigt ca. 3kb debug Informationen:
1 | |
2 | |
3 | |
4 | |
5 | |
6 | |
Dann:
1 | |
2 | |
3 | |
4 | |
5 | |
6 | |
7 | |
Gehe ich nun mit "strings" über die beiden binaries kommt da einiges bei raus, zuviel zum direkten pasten. Ist ja auch nur ein Beispiel und nicht die Lösung.
1 | |
2 | |
Danke für die Hinweise, ich habe das Problem gefunden. In der Include-Datei stm8s_conf.h von den Standard Peripheral Library steht unten:
1 | |
2 | |
3 | |
4 | |
5 | |
6 | |
7 | |
8 | |
9 | |
10 | |
11 | |
12 | |
13 | |
14 | |
15 | |
16 | |
17 | |
18 | |
19 | |
20 | |
21 | |
22 | |
23 | |
24 | |
25 | |
26 | |
27 | |
28 | |
29 | |
30 | |
Wenn man die Zeile #define USE_FULL_ASSERT auskommentiert, dann verschwinden die Pfadangaben. Wenn man's weiß, ist es im Nachhinein ziemlich offensichtlich. Stefan
Keiler schrieb: > Da fällt mir noch was ein: > Vielleicht sind das Teile der debug Informationen. Die Debug-Informationen landen aber nicht im Flash-Image und damit auch nicht in der S19-Datei.
Antwort schreiben
Bitte melde dich an, um einen Beitrag zu schreiben.
