Il est probable que ça vienne du programme que tu n'as pas publié... Ou pas.
Edit: est-ce que tu utilises la bibliothèque u8g2lib ? Voir ici, ou ici
C'est un problème dû à un chemin vers une bibliothèque où un fichier qui est très très très long, trop pour Windows qui les limite vers 32000 caractères.
Il doit y avoir une bibliothèque avec des sous sous sous... sous répertoires en poupées russes...
lesept:
IC'est un problème dû à un chemin vers une bibliothèque où un fichier qui est très très très long, trop pour Windows qui les limite vers 32000 caractères.
Bonjour,
Non, la limite de 32767 caractères c'est pour la longueur de la ligne de commande. Et cette ligne de commande peut-être très longue si le chemin vers les librairies est lui même assez long ou si les fichiers passés en argument à un exécutable sont nombreux.
C'est ce qui est expliqué ici
Analysis
This problem is due to Windows having a limit of 32767 characters for a command, and Arduino IDEs final step is a link with a very long list of object files. If this exceeds 32k you get the fork/exec error.
u8lib is a red herring, it just happens to be a library with quite a few files.
Workarounds
Altering the path to the source files causes the length of the link command to vary, so that is one way to get under the limit.
Another way to shorten the command is to change your %TEMP% location to somewhere as short as possible, e.g. "C:\TMP".
.
Analyse
Ce problème est dû au fait que dans Windows la ligne de commande à une limite de 32767 caractères, et la dernière étape de l'IDE Arduino est une commande avec une très longue liste de fichiers objets. Si cela dépasse 32k, vous obtenez l'erreur fork / exec.
u8lib est une fausse piste, il se trouve que c'est juste une bibliothèque avec pas mal de fichiers.
Solutions de contournement
La modification du chemin d'accès aux fichiers source fait varier la longueur de la commande' c'est donc une façon de passer sous la limite.
Une autre façon de raccourcir la commande est de changer l'emplacement %TEMP% en un chemin aussi court que possible, par ex. "C: \ TMP".
Merci pour votre aide, j"ai essayé hier de modifier l'emplacement de avr-gcc.exe ainsi que le code qui "l'appel" mais à part perdre 5heures et créé une multitude de bug je n'ai pas réussi à grand chose. Je vais essayer de modifier l'emplacement de TMP et je reviens vers vous
Je viens de modifier l'emplacement de TEMP et TMP (venant de user pas ceux du système) mais à part faire crasher Arduino ça n'a malheureusement rien changé.