Wenn ich HTCondor verwende, um ein Shell-Skript zu senden, das so etwas wie gcc code.c -o code.o
enthält, sagt die Fehlerdatei, dass error trying to exec 'cc1': execvp: No such file or directory
. Wenn ich jedoch gcc code.c -o code.o
in der Shell auf der Maschine eingeben, funktioniert alles einwandfrei. Wer kennt den Grund? Ich arbeite am ubuntu-16.04.2-server-amd64.HTCondor gcc: Fehler beim Ausführen von 'cc1': execvp: Keine Datei oder Verzeichnis
Antwort
Es kann Umgebungsvariablen in der Htcondor Umgebung definiert werden, die für cc1
suchen gcc ausgeschaltet an der falschen Stelle (das ein internen Compiler ausführbar ist), wie GCC_EXEC_PREFIX
und COMPILER_PATH
oder, gcc vom PATH
kann fehlen, in HTCondor (siehe here in Bezug auf einflussreiche GCC env. Variablen).
würde ich folgende Fehlerbehebungsverfahren vorschlagen:
- Im normal Shell, überprüfen Sie die Lage von gcc (
which gcc
). - Stellen Sie sicher, dass der Ordner, in dem gcc befindet, ein Teil der
PATH
in HTCondor ist - oder an den Anfang dieserPATH
(export PATH=/path/to/gcc:$PATH
) anhängen. - Stellen Sie sicher, dass die Variablen
GCC_EXEC_PREFIX
undCOMPILER_PATH
nicht in der HTCondor-Umgebung festgelegt sind. - Wenn das obige nicht funktioniert, können Sie es andersherum versuchen und
GCC_EXEC_PREFIX
auf den Speicherort von gcc im HTCondor-Skript setzen.
Edit:
Wie pro Ihre Erkenntnisse und fügte hinzu, die getenv = true
Befehl condor_submit
(doc) behebt das Problem:
getenv = (True | False)
Wenn getenv ist Setzen Sie den Wert auf "True". condor_submit kopiert dann alle aktuellen Shell-Umgebungsvariablen des Benutzers zum Zeitpunkt der Jobübergabe in den Job ClassAd. Der Job wird daher mit demselben Satz von Umgebungsvariablen ausgeführt, den der Benutzer zum Zeitpunkt der Übermittlung hatte.
- 1. Gcc: Fehler beim Ausführen von 'cc1': execvp: Keine solche Datei oder Verzeichnis
- 2. i686-linux-gcc: Fehler beim Versuch, ‚cc1‘ exec: execvp: Keine solche Datei oder das Verzeichnis
- 3. gcc: Fehler beim Ausführen von 'cc1plus': execvp: Keine solche Datei oder Verzeichnis
- 4. "gcc: Fehler beim Ausführen von 'cc1plus': execvp: Keine solche Datei oder Verzeichnis" auf CentOS 6.7
- 5. gfortran: Fehler beim Ausführen von 'f951': execvp: Keine solche Datei oder Verzeichnis
- 6. Keine solche Datei oder das Verzeichnis Fehler mit execvp
- 7. MPI mpirun execvp Fehler: keine solche Datei oder Verzeichnis
- 8. i386-mingw32-g ++: Fehler beim Versuch, 'cc1plus' exec: execvp: Keine solche Datei oder das Verzeichnis
- 9. Xcode Erstellungsfehler, arm-apple-darwin11-gcc-4.2.1 execvp: Keine solche Datei oder kein Verzeichnis
- 10. GCC fataler Fehler: stdio.h: Keine solche Datei oder Verzeichnis
- 11. Keine solche Datei oder Verzeichnis beim Ausführen von Docker
- 12. fatale Fehler GCC: quit.h keine solche Datei oder das Verzeichnis
- 13. i686-elf-gcc CreateProcess Fehler (Keine solche Datei oder Verzeichnis)
- 14. cc1: Fehler beim Laden von gemeinsam genutzten Bibliotheken: libmpc.so.2: kann keine gemeinsame Objektdatei öffnen: Keine solche Datei oder Verzeichnis
- 15. Kernel Kompilierfehler: gcc: Fehler: elf_i386: Keine solche Datei oder Verzeichnis
- 16. Gcc-Fehler Keine solche Datei oder kein Verzeichnis
- 17. Fehler: cuda_runtime.h: Keine solche Datei oder Verzeichnis
- 18. G ++ Fehler:/usr/lib/rpm/redhat/redhat-gehärtet-cc1: Keine solche Datei oder Verzeichnis
- 19. Anstelle von Zeilennummern druckt GCC cc1
- 20. Kann execvp nicht ausführen Datei
- 21. Fehler beim Kompilieren von OpenCV, schwerwiegender Fehler: stdlib.h: Keine solche Datei oder Verzeichnis
- 22. Fehler beim Ausführen von Kind, getpt fehlgeschlagen: keine Datei oder Verzeichnis saugen
- 23. Sonderbare Fehler beim Ausführen von Docker-Befehl "keine solche Datei oder Verzeichnis"
- 24. "Keine solche Datei oder Verzeichnis" Fehler beim Ausführen von Pyq in Ubuntu mit 32 Bit kdb +
- 25. Fehler beim Ausführen von `jupyter notebook` (keine solche Datei oder Verzeichnis)
- 26. Fehler beim Laden gemeinsamer Bibliotheken, keine solche Datei oder Verzeichnis
- 27. Fehler 2 Keine solche Datei oder Verzeichnis
- 28. Xcode Fehler: Keine solche Datei oder Verzeichnis beim Aufbau
- 29. gcc keine solche Datei oder Verzeichnisfehler
- 30. kann 'x86_64-conda_cos6-linux-gnu-gcc' nicht ausführen: Keine solche Datei oder kein Verzeichnis (Pysam-Installation)
Vielen Dank. Ich füge 'getenv = true' in meine Submit-Datei ein und das funktioniert. – AlanRivers
@AlanRivers einfach :-) Froh, zu helfen – valiano
@AlanRivers Ich aktualisierte meine Antwort nach Ihren Erkenntnissen, um es zu vervollständigen und hoffentlich zukünftige Besucher zu helfen - bitte überlegen Sie, es zu akzeptieren, wenn es in Ordnung scheint – valiano