Ich versuche, Caffe danach zu installieren Anleitung
Grundsätzlich habe ich den folgenden Fehler, wenn ich den letzten make-Befehl eingebe:
me@dl-01:/home/me/caffe-master$ make runtest
.build_release/tools/caffe
caffe: command line brew
usage: caffe command args
commands:
train train or finetune a model
test score a model
device_query show GPU diagnostic information
time benchmark model execution time
Flags from tools/caffe.cpp:
-gpu (Run in GPU mode on given device ID.) type: int32 default: -1
-iterations (The number of iterations to run.) type: int32 default: 50
-model (The model definition protocol buffer text file..) type: string
default: ""
-snapshot (Optional; the snapshot solver state to resume training.)
type: string default: ""
-solver (The solver definition protocol buffer text file.) type: string
default: ""
-weights (Optional; the pretrained weights to initialize finetuning. Cannot
be set simultaneously with snapshot.) type: string default: ""
.build_release/test/test_all.testbin 0 --gtest_shuffle
ERROR: something wrong with flag "flagfile" in file "/root/glog-0.3.3/gflags-master/src/gflags.cc". One possibility: file "/root/glog-0.3.3/gflags-master/src/gflags.cc" is being linked both statically and dynamically into this executable.
make: *** [runtest] Error 1
Ich verstehe nicht, wie ich diesen Fehler beheben soll. Hat jemand diesen Fehler schon einmal gefunden? Wie kann ich ihn beheben?
Antworten:
10 für die Antwort № 1Unabhängig davon, ob Sie dies bereits anderswo gelöst haben oder nicht, gebe ich hier die Antwort, falls andere auf dasselbe Problem stoßen.
In erster Linie scheint dieses Problem dadurch entstanden zu sein Wir lesen die Dinge nicht immer richtig und folge blind allen Anweisungen, die für unseren Fall gelten. Hinweis: sie tun es nicht.</ strong>
In den Installationsanweisungen für Caffe (vorausgesetzt Ubuntu-Anweisungen) gibt es einen Abschnitt, der besagt:
Alles ist in 14.04 verpackt.
sudo apt-get install libgflags-dev libgoogle-glog-dev liblmdb-dev protobuf-compiler
Blindes Ignorieren des nächsten Titels, in dem es klar heißt:
Verbleibende Abhängigkeiten, 12.04
Wir installieren diese Abhängigkeiten, indem wir sie nach Bedarf erstellen und installieren, was zu dem unglücklichen Nebeneffekt führt, 2 Versionen von libgflags zu haben, eine dynamische (in /usr/lib[/x86_x64]
und eine statische in /usr/local/lib
Auflösung
- Versprechen Sie sich, dass wir die Anweisungen beim nächsten Mal richtig lesen.
Deinstallieren Sie libgflags
sudo apt-get remove -y libgflags
Löschen
make install
Versionensudo rm -f /usr/local/lib/libgflags.a /usr/local/lib/libgflags_nothreads.a sudo rm -rf /usr/local/include/gflags
Sauberer Caffe Build
cd <path>/<to>/caffe make clean
Installieren Sie das libgflags-Paket erneut
sudo apt-get install -y libgflags-dev
Baue Caffe wieder auf
make all make test make runtest
Et Voila. Alle Tests sollten jetzt laufen und Sie sind bereit, das Boot zu rocken.
1 für die Antwort № 2
Ich hatte auch zwei Bibliotheken installiert, eine gemeinsame.so Bibliothek und eine statische .a Bibliothek. Ich habe sie alle sowie den Ordner / usr / local / include / glog entfernt. Die .so-Datei, die ich mitgebracht hatte, als ich das System kompilierte, während die .a-Datei von einem nativen und aktuellen Build stammte. Letztendlich ging es darum, Glog (nativ) so aufzubauen, dass es die .so-Dateien lieferte. Ich habe mit einem sauberen Download begonnen:
git clone git://github.com/google/glog
Dann habe ich CMakeLists.txt bearbeitet. Wo steht:
add_library (glog
${GLOG_SRCS}
)
Ich habe es geändert in:
add_library (glog SHARED
${GLOG_SRCS}
)
Als nächstes sollten Sie in der Lage sein, den anderen Anweisungen zu folgen. Für meinen speziellen Fall musste ich etwas andere Anweisungen verwenden, ohne zu sagen, dass Sie dies tun müssen. Für mich war es: mkdir bauen cd bauen
export CXXFLAGS="-fPIC"
cmake ..
make
sudo make install
Dies gab mir die .so-Dateien und legte sie an der richtigen Stelle. Dann habe ich mit caffe angefangen und es hat den Fehler für mich behoben.