Aller au contenu

GO Print

Probleme compilation VS Code


Messages recommandés

Bonjour,

J'ai une Ender5 pro avec une carte mère 4.2.2, j'y ai rajouté un BLTouch mais le firmware de Créality est surement incomplet car j'ai dû  monter mon BLTouch avec l'adapteur et je n'ai pas le Probe Z Offset dans le menu Controle et pour terminer en beauté le Store Setting ne fonctionne pas. Sujet abordé dans un autre post

Donc j'ai voulu faire mon propre firmware donc j'ai suivi différent tutos (dont ceux de KaminoKGY sur la cm 4.2.7 et sur configuration de VS Code. ps: très bonne vidéo). En suivant ces indications, je me retrouve avec une erreur à la compilation du firmware. Comme base au firmware j'ai pris Marlin-bugfix-2.0.x et Configurations-bugfix-2.0.x

Je vous met ce que VS Code m'indique:

> Executing task: C:\Users\emgui\.platformio\penv\Scripts\pio.exe run --environment STM32F103RET6_creality <

Processing STM32F103RET6_creality (platform: ststm32@~10.0; board: genericSTM32F103RE; framework: arduino)
--------------------------------------------------------------------------------------------------------------------------------------------------

Verbose mode can be enabled via `-v, --verbose` option
'"CC"' n'est pas reconnu en tant que commande interne
ou externe, un programme ex‚cutable ou un fichier de commandes.
CalledProcessError: Command '"CC" -DTARGET_STM32F1 -D__MARLIN_FIRMWARE__ -DARDUINO_ARCH_STM32 -DTEMP_TIMER_CHAN=4 -D__MARLIN_DEPS__ -w -dM -E -x c++ buildroot/share/PlatformIO/scripts/common-dependencies.h' returned non-zero exit status 1.:
  File "C:\users\emgui\.platformio\penv\lib\site-packages\platformio\builder\main.py", line 168:
    env.SConscript(item, exports="env")
  File "C:\Users\emgui\.platformio\packages\tool-scons\scons-local-4.0.1\SCons\Script\SConscript.py", line 598:
    return _SConscript(self.fs, *files, **subst_kw)
  File "C:\Users\emgui\.platformio\packages\tool-scons\scons-local-4.0.1\SCons\Script\SConscript.py", line 287:
    exec(compile(scriptdata, scriptname, 'exec'), call_stack[-1].globals)
  File "E:\Marlin-bugfix-2.0.x\buildroot\share\PlatformIO\scripts\common-dependencies.py", line 311:
    apply_features_config()
  File "E:\Marlin-bugfix-2.0.x\buildroot\share\PlatformIO\scripts\common-dependencies.py", line 142:
    if not env.MarlinFeatureIsEnabled(feature):
  File "C:\Users\emgui\.platformio\packages\tool-scons\scons-local-4.0.1\SCons\Environment.py", line 219:
    return self.method(*nargs, **kwargs)
  File "E:\Marlin-bugfix-2.0.x\buildroot\share\PlatformIO\scripts\common-dependencies.py", line 287:
    load_marlin_features()
  File "E:\Marlin-bugfix-2.0.x\buildroot\share\PlatformIO\scripts\common-dependencies.py", line 275:
    define_list = subprocess.check_output(cmd, shell=True).splitlines()
  File "C:\Users\emgui\.platformio\python3\lib\subprocess.py", line 411:
    **kwargs).stdout
  File "C:\Users\emgui\.platformio\python3\lib\subprocess.py", line 512:
    output=stdout, stderr=stderr)
=========================================================== [FAILED] Took 3.21 seconds ===========================================================

Environment             Status    Duration
----------------------  --------  ------------
STM32F103RET6_creality  FAILED    00:00:03.208
===================================================== 1 failed, 0 succeeded in 00:00:03.208 =====================================================
The terminal process "C:\Users\emgui\.platformio\penv\Scripts\pio.exe 'run', '--environment', 'STM32F103RET6_creality'" terminated with exit code: 1.

 

Sachant que j'y connais rien à la programmation et que je suis en train de tourner en rond.

Un grand Merci de votre aide

Lien vers le commentaire
Partager sur d’autres sites

@Manu35

Bonjour,

Une raison particulière de partir sur la version bugfixes ? Cette version en théorie devrait être utilisée si / quand la version stable pose problème 😉 .

Avec un Marlin 2.0.7.2, la carte compile correctement.

Citation

PS D:\Github\Marlin> platformio run -e STM32F103RET6_creality
Processing STM32F103RET6_creality (platform: ststm32@~6.1; board: genericSTM32F103RE; framework: arduino)

La plateforme «platformio» a mis à jour dernièrement la bibliothèque STM32 en version 10.0 (et depuis peu en 10.0.1) or l'erreur rapportée indique que tu essaies de compiler avec la version ststm32 avec la version 10.0.

Avec le Marlin 2.0.7.2, la compilation utilise la version 6.1. Peut-être est-ce là ton problème ? Soit tu essaies avec le Marlin stable, soit tu mets à jour la bibliothèque STM32 via l'onglet «PIO Home».

🙂

Lien vers le commentaire
Partager sur d’autres sites

Merci de ta réponse

Non pas de raison particulière pour utiliser la version debugfixe (c'est juste la version qu'il utilise 😅)

je vais essayer avec la version de marlin 2.0.7 et je met à jour la bibliothèque STM32

Et je reviens vers toi

Lien vers le commentaire
Partager sur d’autres sites

Je reviens car j'ai fait une mise à jour total de platformio ide voila ce que cela me donne:

Windows PowerShell
Copyright (C) Microsoft Corporation. Tous droits réservés.

Testez le nouveau système multiplateforme PowerShell https://aka.ms/pscore6

PS C:\Users\emgui> pio update
Updating platformio/contrib-piohome           3.3.1 @ ~3.3.1                     [Up-to-date]
Updating platformio/contrib-pysite            2.37.191020 @ ~2.37.0              [Incompatible 2.39.201019]
Updating platformio/tool-unity                1.20500.200612 @ ~1.20500.0        [Up-to-date]
Updating platformio/tool-scons                4.40001.0 @ ~4.40001.0             [Up-to-date]

Platform Manager
================
Platform atmelavr
--------
Updating platformio/atmelavr                  3.0.0                              [Up-to-date]
Updating platformio/toolchain-atmelavr        1.50400.190710 @ ~1.50400.0        [Up-to-date]
Updating platformio/framework-arduino-avr     5.1.0 @ ~5.1.0                     [Up-to-date]

Platform ststm32
--------
Updating platformio/ststm32                   10.0.1                             [Up-to-date]
Updating platformio/toolchain-gccarmnoneeabi  1.70201.0 @ >=1.60301.0,<1.80000.0 [Up-to-date]
Updating platformio/framework-arduinoststm32-maple 3.10000.201129 @ ~3.10000.0        [Up-to-date]
Updating platformio/tool-stm32duino           1.0.2 @ ~1.0.1                     [Up-to-date]
Updating platformio/tool-openocd              2.1000.200630 @ ~2.1000.0          [Up-to-date]
Updating platformio/tool-jlink                1.68801.0 @ ^1.63208.0             [Up-to-date]
Updating platformio/tool-dfuutil              1.9.200310 @ ~1.9.190708           [Up-to-date]

Platform ststm32
--------
Updating platformio/ststm32                   6.1.1                              [Detached]
Updating platformio/toolchain-gccarmnoneeabi  1.70201.0 @ >=1.60301.0,<1.80000.0 [Up-to-date]
Updating platformio/framework-arduinoststm32-maple 2.10000.200103 @ ~2.10000.0        [Up-to-date]
Updating platformio/tool-stm32duino           1.0.2 @ ~1.0.1                     [Up-to-date]
Updating platformio/tool-openocd              2.1000.200630 @ ~2.1000.0          [Up-to-date]
Updating platformio/tool-jlink                1.68801.0 @ ^1.63208.0             [Up-to-date]
Updating platformio/tool-dfuutil              1.9.200310 @ ~1.9.190708           [Up-to-date]


Library Manager
===============
Library Storage: C:\Users\emgui\.platformio\lib
PS C:\Users\emgui> 

Quand je regarde dans le dossier C:\Users\emgui\.platformio je n'ai pas de dossier "lib" donc je pense que je n'ai pas librairie. Je ne sais pas où chercher 🤔

J'ai comme module à VS Code: Platformio IDE 2.2.1 ,Auto build Marlin 2.1.26 et C/C++ 1.1.3

Autre question: j'ai téléchargé le marlin 2.0.7 et la config qui correspond, dans la config il n'y a pas de dossier pour ma carte 4.2.2. Est ce que je peux prendre la config debug (il y a ma carte pour l'Ender5 pro) ?

Lien vers le commentaire
Partager sur d’autres sites

Il y a 13 heures, Manu35 a dit :

Est ce que je peux prendre la config debug (il y a ma carte pour l'Ender5 pro) ?

Oui, ça doit  fonctionner (à tester 😉 ).

Apparemment, seule cette ligne CONFIGURATION_H_VERSION précise la version du Marlin utilisé.

Citation

#define CONFIGURATION_H_VERSION 020007 // Marlin stable 2.0.7.2

#define CONFIGURATION_H_VERSION 020008 // Marlin bugfixes

Entre la carte 4.27 et la 4.2.2 il n'y a que la déclaration MOTHERBOARD qui diffère

Citation

#define MOTHERBOARD BOARD_CREALITY_V4 // 4.2.2

#define MOTHERBOARD BOARD_CREALITY_V427 // 4.2.7

Tu aurais le fichier platformio.ini pour l'examiner ? Au moins la section «[env:STM32F103RET6_creality]» et «[common_stm32f1]»

Citation

#
# Creality (STM32F103RET6)
#
[env:STM32F103RET6_creality]
platform        = ${common_stm32f1.platform}
extends         = common_stm32f1
board           = genericSTM32F103RE
build_flags     = !python Marlin/src/HAL/STM32F1/build_flags.py
  ${common.build_flags} -std=gnu++14 -DSTM32_XL_DENSITY -DTEMP_TIMER_CHAN=4
extra_scripts   = ${common.extra_scripts}
  pre:buildroot/share/PlatformIO/scripts/random-bin.py
  buildroot/share/PlatformIO/scripts/creality.py
lib_ignore      = ${common_stm32f1.lib_ignore}
debug_tool      = jlink
upload_protocol = jlink
monitor_speed   = 115200

#
# HAL/STM32F1 Common Environment values
#
[common_stm32f1]
platform      = ststm32@~6.1
build_flags   = !python Marlin/src/HAL/STM32F1/build_flags.py
  ${common.build_flags} -std=gnu++14 -DHAVE_SW_SERIAL
build_unflags = -std=gnu11 -std=gnu++11
src_filter    = ${common.default_src_filter} +<src/HAL/STM32F1>
lib_ignore    = SPI
lib_deps      = ${common.lib_deps}
  SoftwareSerialM

 

Même si tu as mis à jour Platformio, les directives de compilation pour la carte Creality imposent une version spécifique de stm32 (jusqu'à la 6.1).

🙂

Lien vers le commentaire
Partager sur d’autres sites

Bonjour,

Désolé d'être le boulet du fond de la classe près du radiateur et de la fenêtre 😇

J'ai verifié le platfromio.ini du projet tout est indiqué comme tu l'as cité.

Pour télécharger la bonne version de STM32 dans VS Code  je prend quelle fichier car il y a en des milliers qui doivent spécifiques.

Pour la carte mère oui je l'avait vu 😅

Modifié (le) par Manu35
Lien vers le commentaire
Partager sur d’autres sites

Il y a 4 heures, Manu35 a dit :

Pour télécharger la bonne version de STM32 dans VS Code  je prend quelle fichier car il y a en des milliers qui doivent spécifiques.

Aucune 😉

C'est VSC + Platformio en fonction des directives de compilation qui se chargent de le faire automatiquement contrairement à une compilation avec Arduino où il faut installer soi-même les différentes bibliothèques.

Il y a 4 heures, Manu35 a dit :

Désolé d'être le boulet du fond de la classe près du radiateur et de la fenêtre 

En ce moment dans les salles de classe, près de la fenêtre n'est pas forcément l'endroit idéal: les règles actuellement en vigueur préconisent une aération fréquente des salles (donc ouverture des fenêtres) 😄

🙂

Lien vers le commentaire
Partager sur d’autres sites

Bon après avoir avoir passer la tête par la fenêtre. J'ai pris mon marteau et ma clé à molette ensuite je suis arrivé par derrière et ...........

J'ai désinstallé VSC et viré les dossiers .platformio et .vsc ET réinstaller VSC en n'oubliant pas de cocher la 4eme case "Inscrire Code en tant qu'editeur de fichier pris en charge"🤪🤫.

J'ai essayé de compiler marlin 2.0.x et j'ai eu un succès avec un fichier .bin😃

J'ai eu 3 lignes jaunes aussi:

C:\users\emgui\.platformio\packages\framework-arduinoststm32-maple\STM32F1\libraries\STM32ADC\src\utility\util_adc.c:10:30: warning: 'adc_result' 
initialized and declared 'extern'
 extern volatile unsigned int adc_result = 0;

C:\users\emgui\.platformio\packages\framework-arduinoststm32-maple\STM32F1\libraries\FreeRTOS701\utility\port.c: In function 'xPortStartScheduler':
C:\users\emgui\.platformio\packages\framework-arduinoststm32-maple\STM32F1\libraries\FreeRTOS701\utility\port.c:178:2: warning: implicit declaration of function 'systick_attach_callback' [-Wimplicit-function-declaration]
  systick_attach_callback(&xPortSysTickHandler);
  ^~~~~~~~~~~~~~~~~~~~~~~
At top level:
C:\users\emgui\.platformio\packages\framework-arduinoststm32-maple\STM32F1\libraries\FreeRTOS701\utility\port.c:285:6: warning: 'prvSetupTimerInterrupt' defined but not used [-Wunused-function]
 void prvSetupTimerInterrupt( void )

Peux tu me confirmer que cela n'a pas de répercution sur le firmware 🙏

2eme test en modifiant SERIAL_PORT et MOTHERBOARD dans marlin 2.0.x  et là plus de lignes jaunes Cooool

Modifié (le) par Manu35
Lien vers le commentaire
Partager sur d’autres sites

Il y a 15 heures, Manu35 a dit :

J'ai eu 3 lignes jaunes auss

OSEF 😄

Ce sont des avertissements, ça ne joue «normalement» pas sur la compilation qui est marquée en «réussite» (succeed).

Quand c'est en rouge. cela signale une erreur (bloquante) et la compilation n'aboutit pas.

Tu vois que tu n'es pas un boulet 😉 . Avec un peu de pratique tu peux même devenir un pro. C'est comme tout apprentissage, on ne devient pas expert en un jour; attention tout de même à ne pas se laisser berner par le biais cognitif : effet Dunning-Kruger 😉 ou tomber dans l'ultracrépidarianisme :

les_specialistes_experts.jpg.b4eb7839e758a703287f71847c06a125.jpg

🙂

Modifié (le) par fran6p
  • J'aime 1
Lien vers le commentaire
Partager sur d’autres sites

Créer un compte ou se connecter pour commenter

Vous devez être membre afin de pouvoir déposer un commentaire

Créer un compte

Créez un compte sur notre communauté. C’est facile !

Créer un nouveau compte

Se connecter

Vous avez déjà un compte ? Connectez-vous ici.

Connectez-vous maintenant
  • Sur cette page :   0 membre est en ligne

    • Aucun utilisateur enregistré regarde cette page.
  • YouTube / Les Imprimantes 3D .fr

×
×
  • Créer...