Forum: Compiler & IDEs Arduino findet python nicht


von R. F. (rfr)


Lesenswert?

Fehlermeldung:
-------------------------------------
exec: "python": executable file not found in $PATH

Compilation error: exec: "python": executable file not found in $PATH
-------------------------------------
bash geöffnet und dann:
-------------------------------------
(base) rfr@rfr-ThinkPad-P17-Gen-2i:~$ python
Python 3.9.12 (main, Apr  5 2022, 06:56:58)
[GCC 7.5.0] :: Anaconda, Inc. on linux
Type "help", "copyright", "credits" or "license" for more information.
>>>


Vielen Dank
Robert

von PittyJ (Gast)


Lesenswert?

in der Konsole

which python

dann den Pfad, der angezeigt wird zur Pfadvariablen zufügen

export PATH=$PATH;<angezeigter Python Path>

Evtl das auch in .profile .bashrc , oder was du benutzt, eintragen.

Damit dann Arduino anstarten.

von Martin H. (horo)


Lesenswert?

man which
1
...
2
which liefert die Pfadnamen der Dateien (oder Links), die in der aktuellen Umgebung ausgeführt würden, wenn ihre Argumente als Befehle in einer streng-POSIX-konformen Shell übergeben worden wären. Dies erfolgt, indem der PATH nach ausführbaren Dateien, die auf die Argumente passen, durchsucht wird. Pfadnamen werden nicht in eine kanonische Form gebracht.
3
...

von Ein T. (ein_typ)


Lesenswert?

R. F. schrieb:
> Fehlermeldung:
> -------------------------------------
> exec: "python": executable file not found in $PATH
>
> Compilation error: exec: "python": executable file not found in $PATH
> -------------------------------------
> bash geöffnet und dann:
> -------------------------------------
> (base) rfr@rfr-ThinkPad-P17-Gen-2i:~$ python
> Python 3.9.12 (main, Apr  5 2022, 06:56:58)
> [GCC 7.5.0] :: Anaconda, Inc. on linux
> Type "help", "copyright", "credits" or "license" for more information.

Dieses "(base)" deutet darauf hin, daß Du in einer virtuellen Umgebung 
(virtualenv, venv, Poetry, ...) arbeitest. Da ist der Pfad auf das 
Python-Executable gestellt, die in dieser virtuellen Umgebung 
installiert ist.

Mit Anaconda kenne ich mich nicht aus, aber ich verstehe nicht, warum 
man das unter Linux benutzen soll. Jede halbwegs verbreitete 
Distribution hat ein Python in den ganz normalen Repositories, das sich 
mit "[apt-get|yum] install python" installieren läßt, wenn es nicht 
schon längst installiert ist. Das Modul "venv" gehört längst zur 
Standardinstallation, aber auch "virtualenv" läßt sich IMHO überall 
problemlos über den ganz normalen Paketmanager nachinstallieren.

Da ich jüngst in einer Schulung lernen mußte, daß Anaconda manchmal 
veraltete Pakete mit möglicherweise defekten Abhängigkeiten ausliefert, 
empfehle ich daher, Anaconda wieder zu deinstallieren und stattdessen 
ein Virtual Environment mit virtualenv oder venv anzulegen, und Dein 
Arduino aus dieser Umgebung heraus zu starten. Damit hast Du eine in 
sich selbst abgeschlossene Python-Umgebung, die den Rest Deines Systems 
nicht beeinflußt, und der Python-Interpreter ist auf jeden Fall im 
Suchpfad.

von R. F. (rfr)


Lesenswert?

Das anaconda war es. Ich habe es deinstalliert, ich brauche das auch 
nicht mehr. Nach Installation von Python geht es jetzt.

Vielen Dank.

von Ein T. (ein_typ)


Lesenswert?

R. F. schrieb:
> Das anaconda war es. Ich habe es deinstalliert, ich brauche das auch
> nicht mehr. Nach Installation von Python geht es jetzt.
>
> Vielen Dank.

Sehr gerne, nichts zu danken. Freut mich, daß es jetzt klappt! ;-)

von R. F. (rfr)


Lesenswert?

Denkste.

Nuntritt beim Laden von Boards folgendes auf, womit ich nichts anfangen 
kann:
------------------------------------------
Error downloading https://dl.espressif.com/dl/package_esp32_index.json.
Error downloading https://dl.espressif.com/dl/package_esp32_index.json.
Error downloading https://dl.espressif.com/dl/package_esp32_index.json.
 Can't extract file 
/home/rfr/.arduino15/packages/STMicroelectronics/tools/CMSIS/5.7.0/READM 
E.md,  file already exists!
java.lang.RuntimeException: java.io.IOException: Can't extract file 
/home/rfr/.arduino15/packages/STMicroelectronics/tools/CMSIS/5.7.0/READM 
E.md,  file already exists!
  at 
cc.arduino.contributions.packages.ui.ContributionManagerUI.lambda$onInst 
allPressed$2(ContributionManagerUI.java:179)
  at java.lang.Thread.run(Thread.java:748)
Caused by: java.io.IOException: Can't extract file 
/home/rfr/.arduino15/packages/STMicroelectronics/tools/CMSIS/5.7.0/READM 
E.md,  file already exists!
  at 
cc.arduino.utils.ArchiveExtractor.extract(ArchiveExtractor.java:215)
  at cc.arduino.utils.ArchiveExtractor.extract(ArchiveExtractor.java:82)
  at 
cc.arduino.contributions.packages.ContributionInstaller.install(Contribu 
tionInstaller.java:141)
  at 
cc.arduino.contributions.packages.ui.ContributionManagerUI.lambda$onInst 
allPressed$2(ContributionManagerUI.java:172)
  ... 1 more
Error downloading https://dl.espressif.com/dl/package_esp32_index.json.
Error downloading https://dl.espressif.com/dl/package_esp32_index.json.
 No available boards
java.lang.RuntimeException: java.lang.IllegalStateException: No 
available boards
  at 
cc.arduino.contributions.packages.ui.ContributionManagerUI.lambda$onUpda 
tePressed$1(ContributionManagerUI.java:150)
  at java.lang.Thread.run(Thread.java:748)
Caused by: java.lang.IllegalStateException: No available boards
  at processing.app.Base.rebuildBoardsMenu(Base.java:1533)
  at processing.app.Base$9.onIndexesUpdated(Base.java:1404)
  at 
cc.arduino.contributions.packages.ui.ContributionManagerUI.lambda$onUpda 
tePressed$1(ContributionManagerUI.java:144)
  ... 1 more
----------------------------
Ich habe den stm32 und den Esspressif nodeCPU32 laden wollen. Die 
Stamdardarduinos und der STM32 sind da, der espressiv nicht.

Anscheinend geht das Laden des Espressif-files nicjt, oder?

von Ein T. (ein_typ)


Lesenswert?

R. F. schrieb:
> Denkste.
>
> Nuntritt beim Laden von Boards folgendes auf, womit ich nichts anfangen
> kann:
> ------------------------------------------
> Error downloading https://dl.espressif.com/dl/package_esp32_index.json.
> Error downloading https://dl.espressif.com/dl/package_esp32_index.json.
> Error downloading https://dl.espressif.com/dl/package_esp32_index.json.
>  Can't extract file
> /home/rfr/.arduino15/packages/STMicroelectronics/tools/CMSIS/5.7.0/READM E.md,
> file already exists!
> java.lang.RuntimeException: java.io.IOException: Can't extract file
> /home/rfr/.arduino15/packages/STMicroelectronics/tools/CMSIS/5.7.0/READM E.md,
> file already exists!

Das hat allerdings nichts mit Python zu tun, sondern ist ein Traceback 
eines Java-Programms, das sich darüber beschwert, eine Datei auspacken 
zu sollen, deren Ziel bereits existiert. Anscheinend versuchst Du etwas 
zu installieren, das aber schon installiert zu sein scheint?!

von R. F. (rfr)


Lesenswert?

Das mag ja sein, aber ich erhalte im Arduino nichts angezeigt, was es 
mir erlaubt, mit den ESP32- chips zu arbeiten. Die gleichartig 
verlaufende Installation der STM32 wird aber angezeigt und kann 
aufgerufen werden.

Was nun?

von Εrnst B. (ernst)


Lesenswert?

R. F. schrieb:
> Was nun?

> Error downloading https://dl.espressif.com/dl/package_esp32_index.json.

Datei von Hand herunterladen, der arudino-IDE die Datei statt dem 
Download-Link präsentieren.

Ein T. schrieb:
> /home/rfr/.arduino15/packages/STMicroelectronics/tools/CMSIS/5.7.0/READM
> E.md,

das ist ein Fehler von der STM32-Installation, die da scheinbar 
gleichzeitig auch versucht wird. Sollte die ESP32-Installation nicht 
beeinträchtigen.

Grund warum der Download von "dl.espressif.com" nicht direkt 
funktioniert könnte sein, dass das auch auf IPv6 aufgelöst wird. Wenn 
dein System eine nichtfunktionierende IPv6-Config hat, schlägt der 
Download fehl.
Web-Browser haben da i.A. eine Automatik drinnen, in solchen Fällen auf 
IPv4 zurückzufallen. Fehlt in der Arduino-IDE evtl.

=> was sagt bei dir ping -6 dl.espressif.com

von R. F. (rfr)


Lesenswert?

ping -6 dl.espressif.com

^C
--- dl.espressif.com ping statistics ---
20 packets transmitted, 20 received, 0% packet loss, time 19030ms
rtt min/avg/max/mdev = 7.678/8.216/10.396/0.661 ms

Beim Anlaufen per Browser erhlte ic eine leere Seite,
Downloaden geht auch nicht, es ist nix da.

von Εrnst B. (ernst)


Angehängte Dateien:

Lesenswert?

R. F. schrieb:
> Beim Anlaufen per Browser erhlte ic eine leere Seite,
> Downloaden geht auch nicht, es ist nix da.

Dann ist dein Netzwerk "kaputt".

Hab dir die package.json mal angehängt.
Wird dir aber nicht weiterhelfen, viele der darin verlinkten Dateien 
kommen auch von dl.espressif.com.

--> Versuch deine Netzwerk-Konfiguration zu reparieren. Das Ping sollte 
gehen, deren CDN beantwortet Pings.
1
ping -6 dl.espressif.com
2
PING dl.espressif.com(2600:9000:237d:2000:1c:92e9:fe40:93a1 (2600:9000:237d:2000:1c:92e9:fe40:93a1)) 56 data bytes
3
64 bytes from 2600:9000:237d:2000:1c:92e9:fe40:93a1 (2600:9000:237d:2000:1c:92e9:fe40:93a1): icmp_seq=1 ttl=59 time=8.35 ms
4
64 bytes from 2600:9000:237d:2000:1c:92e9:fe40:93a1 (2600:9000:237d:2000:1c:92e9:fe40:93a1): icmp_seq=2 ttl=59 time=8.29 ms
5
^C
6
--- dl.espressif.com ping statistics ---
7
2 packets transmitted, 2 received, 0% packet loss, time 1002ms
8
rtt min/avg/max/mdev = 8.293/8.320/8.348/0.027 ms

Notfalls IPv6 ganz abschalten, dann kommt beim ping-versuch:
1
> ping -6 dl.espressif.com
2
ping: connect: Das Netzwerk ist nicht erreichbar

: Bearbeitet durch User
von R. F. (rfr)


Lesenswert?

Fehler gefunden: Die Homepage existiert nicht, verwende
http://arduino.esp8266.com/stable/package_esp8266com_index.json
anstatt.

von Εrnst B. (ernst)


Lesenswert?

R. F. schrieb:
> Fehler gefunden: Die Homepage existiert nicht,

Doch. Jeder andere kann ja darauf zugreifen.

https://downforeveryoneorjustme.com/dl.espressif.com?proto=https

Wildgewordene Kindersicherung im Router?

R. F. schrieb:
> verwende package_esp8266 [...] anstatt.

Dir ist klar, dass das eine für eine ESP32-CPU ist, das andere für den 
älteren/kleineren ESP8266?

von R. F. (rfr)


Lesenswert?

Ich willbeide, habe jetzt eine.

von Εrnst B. (ernst)


Lesenswert?

R. F. schrieb:
> Ich will beide

und noch STM32 dazu...

Wenn du soviele verschiedene Umgebungen parallel benutzen willst, würde 
ich dir einen Blick auf https://platformio.org/ empfehlen.

von Forist (Gast)


Lesenswert?

R. F. schrieb:
> Denkste
> ...

Wie wäre es, wenn du hier nicht ganz so laut rumschreien würdest ☹️

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.