
Ich arbeite an einem RHEL7 und habe gerade Folgendes installiert clang
: sudo yum install clang
.
Dann führe ich den Befehl aus clang-format --version
und die Ausgabe ist unten:
me@localhost:~$ clang-format --version
LLVM (http://llvm.org/):
LLVM version 3.4.2
Optimized build.
Built May 10 2018 (10:48:27).
Default target: x86_64-redhat-linux-gnu
Host CPU: x86-64
me@localhost:~$ echo $?
1
Wie Sie sehen, clang-format --version
scheint es ohne Fehler zu funktionieren, echo $?
zeigt mir aber ein 1
.
Was ist falsch an diesem Befehl?
Ich habe gerade dasselbe auf einem Ubuntu-System gemacht und es gibt keinen solchen Fehler.
Die Ausgabe von type -a clang-format
:
clang-format is /usr/bin/clang-format
clang-format is /bin/clang-format
Die Ausgabe von file "$(command -v clang-format)"
:
/usr/bin/clang-format: ELF 64-bit LSB executable, x86-64, version 1 (GNU/Linux), dynamically linked (uses shared libs), for GNU/Linux 2.6.32, BuildID[sha1]=899595580dbae12ee1ae6eb9feb8a19aa6d51f49, stripped
Antwort1
Dieses Problem kann mit älteren Versionen des Clang-Formats reproduziert werden, die beispielsweise für die Installation mit yum
einem Docker-Image verfügbar sind. wurde geändert, um 0 zurückzugeben in
sglim2/centos7
clang-format --version
dieses Commit:
CommandLine: Erfolgreich beenden für -version und -help
Tools, die die CommandLine-Bibliothek verwenden, werden derzeit mit einem Fehler beendet, wenn sie mit -version oder -help aufgerufen werden. Dies ist ungewöhnlich und nicht standardmäßig, daher werden wir sie so beheben, dass sie stattdessen erfolgreich beendet werden.
Ich gehe nicht davon aus, dass sich irgendjemand auf das aktuelle Verhalten verlässt, daher sollte dies eine ziemlich sichere Änderung sein.
llvm-svn: 202530