URL: https://www.overclockers.at/coding-stuff/cpcheck-an-error-occurred_265537/page_1 - zur Vollversion wechseln!
ich habe einen bookworm ubuntu 24.04 docker container für meine CI, darin würd ich gern cppcheck ausführen:
cppcheck wirft aber die höchst hilfreiche fehlermeldungCode:cppcheck --enable=all --inline-suppr --project=application.cppcheck --error-exitcode=-1
einzelne files kann ich aber schon prüfen, z.b.:Code:cppcheck: error: failed to load project 'application.cppcheck'. An error occurred.
Code:cppcheck src/ltb/ltb_eeprom.c Checking src/ltb/ltb_eeprom.c ... src/ltb/ltb_fstd_info.h:83:25: error: Signed integer overflow for expression '1<<31'. [integerOverflow] FSTD_FEATURE_UART = (1 << 31), //has UART interface ^ src/ltb/ltb_fstd.h:129:26: error: Signed integer overflow for expression '1<<31'. [integerOverflow] LTB_ALERT_DIB_SYNC = (1 << 31) ^ root@4185183f62c8:/tmp#
hast dus mal mit dem absoluten pfad probiert?
Kommen mit --verbose und/oder --debug vielleicht mehr Details beim Fehler zum Vorschein?
Poste mal, was (mit installiertem strace, eh klar)
ausgibt. Vielleicht kann man ja schon auf syscall-Ebene nachvollziehen, wo/wie es hakt.Code:LC_ALL=C strace -e trace=file -yy -v -Z cppcheck --enable=all --inline-suppr --project=application.cppcheck --error-exitcode=-1
Mir kommt der --project switch falsch vor:
Zitat
--project=<file>
Run Cppcheck on project. The <file> can be a Visual Studio Solution (*.sln), Visual Studio Project (*.vcxproj), compile database (compile_commands.json), or Borland C++ Builder 6 (*.bpr). The files to analyse, include paths, defines, platform and undefines in the specified file will be used.
gleicher fehler.Zitat aus einem Post von davebastardhast dus mal mit dem absoluten pfad probiert?
nein, leider nicht.Zitat aus einem Post von DaedaKommen mit --verbose und/oder --debug vielleicht mehr Details beim Fehler zum Vorschein?
Zitat aus einem Post von COLOSSUSPoste mal, was (mit installiertem strace, eh klar)ausgibt. Vielleicht kann man ja schon auf syscall-Ebene nachvollziehen, wo/wie es hakt.Code:LC_ALL=C strace -e trace=file -yy -v -Z cppcheck --enable=all --inline-suppr --project=application.cppcheck --error-exitcode=-1
oha!Code:root@a5d4aa4b7755:/tmp/repo# LC_ALL=C strace -e trace=file -yy -v -Z cppcheck --enable=all --inline-suppr --project=application.cppcheck --error-exitcode=-1 access("/etc/ld.so.preload", R_OK) = -1 ENOENT (No such file or directory) cppcheck: error: failed to load project 'application.cppcheck'. An error occurred. +++ exited with 1 +++
Zitat aus einem Post von issueMir kommt der --project switch falsch vor:
edit: oder hast du ein .cppcheck file aus der gui vo dem trum? (hab grad glesn, dass es das geben soll, https://cppcheck.sourceforge.io/manual.pdf page 9)

Zitat aus einem Post von wergoroha!Code:root@a5d4aa4b7755:/tmp/repo# LC_ALL=C strace -e trace=file -yy -v -Z cppcheck --enable=all --inline-suppr -project=application.cppcheck --error-exitcode=-1 access("/etc/ld.so.preload", R_OK) = -1 ENOENT (No such file or directory) cppcheck: error: failed to load project 'application.cppcheck'. An error occurred. +++ exited with 1 +++
ich probiere gerade die gui aus, die sagt beim check einer meiner source files gäb es einen critical error, ich glaub ich weis wo ich weitersuchen muss... danke 
edit: hab sie gelöscht und cppcheck scheint jetzt durchzulaufen.zu früh gefreut, cppcheck-gui reported keinen fehler mehr aber cppcheck im container zeigt das gleiche verhalten.
Vielleicht ists ein bug in der version von cppcheck in debian (die is vo 2023 wenn ich des richtig dales). Der letzte commit in dem sample repo war "Disable cppcheck for now" btw 
Wieso soll es eigentlich unbedingt das cppcheck aus bookworm sein, und nicht aus trixie?
ich weisZitat aus einem Post von issueDer letzte commit in dem sample repo war "Disable cppcheck for now" btw
das iamge das ich verwende (https://hub.docker.com/r/xanderhendriks/stm32cubeide) basiert auf bookworm, ich hab noch nicht versucht ein eigenes zu bauen.Zitat aus einem Post von COLOSSUSWieso soll es eigentlich unbedingt das cppcheck aus bookworm sein, und nicht aus trixie?
jetzt bin ich dazed and confused: https://github.com/xanderhendriks/d...3/Dockerfile#L1
sagt das ist ein ubuntu 24.04
tatsächlich! wie bin ich auf bookworm gekommen? muss ein anderes image gewesen sein 
vergleich wirklich mal die versionen, imo ein cppcheck bug mit dem gui project file.
alternativ wurscht die project config auf cli args um und gib die mit
overclockers.at v4.thecommunity
© all rights reserved by overclockers.at 2000-2026