2016-07-11 16 views
0

Ich versuche, Syntaxnet mit Bazel ohne Root-Rechte zu bauen. Ich habe bazel 0.2.2b heruntergeladen und das Syntaxnet-Git-Repository wie auf seiner Website vorgeschlagen heruntergeladen. Ich habe es geschafft, pass the new gcc für den Bazel-Build und setzen Sie meine Umgebungsvariablen auf die lokale gcc sowie meine lokale Python-Version (2.7). Ich fügte auch swig und jdk zu PATH hinzu. Trotzdem ich folgende Fehlermeldung erhalten, wenn bazel test syntaxnet/... util/utf8/... zu laufen versuchen:Build Syntaxnet mit Bazel: Pywrap Fehler

INFO: Found 65 targets and 12 test targets... ERROR: /home/davba/.cache/bazel/_bazel_debauscd/33ff1ccf943e8d1167bc44c81c9ea8f4/external/org_tensorflow/tensorflow/python/BUILD:1023:1: output 'external/org_tensorflow/tensorflow/python/pywrap_tensorflow.cc' was not created. ERROR: /home/davba/.cache/bazel/_bazel_debauscd/33ff1ccf943e8d1167bc44c81c9ea8f4/external/org_tensorflow/tensorflow/python/BUILD:1023:1: output 'external/org_tensorflow/tensorflow/python/pywrap_tensorflow.py' was not created. ERROR: /home/davba/.cache/bazel/_bazel_debauscd/33ff1ccf943e8d1167bc44c81c9ea8f4/external/org_tensorflow/tensorflow/python/BUILD:1023:1: not all outputs were created.

Danach keiner der Tests ausgeführt, was bedeutet, alle zwölf Tests übersprungen werden. Irgendwelche Ideen werden sehr geschätzt.

Edit: Ich habe festgestellt, dass ich eine alte Version von Protobuf verwendet. Leider bleibt das Problem auch nach der Aktualisierung bestehen.

Da es scheint, ein Python-Problem zu sein, und ich Python aus der Quelle gebaut hatte, habe ich versucht, Anaconda zu verwenden, endete aber mit dem gleichen Fehler.

Einige weitere Informationen: Ich verwende CentOS 6.5 und versuchte Python 2.7.11. Ich setze die Umgebungsvariablen wie folgt geändert und die Datei für den Aufbau cross bazel accordingly:

CXX=/soft/csw/linux64/rel6/gccs-4.8.5/bin/c++

CC=/soft/csw/linux64/rel6/gccs-4.8.5/bin/gcc

LDFLAGS="-L/soft/csw/linux64/rel6/gccs-4.8.5/lib -L/soft/csw/linux64/rel6/gccs-4.8.5/lib64":"-L/home/davba/syntaxnet-utils/pcre/lib"

CXXFLAGS="-L/soft/csw/linux64/rel6/gccs-4.8.5/lib -L/soft/csw/linux64/rel6/gccs-4.8.5/lib64"

LD_LIBRARY_PATH=/soft/csw/linux64/rel6/gccs-4.8.5/lib:/soft/csw/linux64/rel6/gccs-4.8.5/lib64:/home/davba/AnacondaPython/lib:$LD_LIBRARY_PATH

SWIG_PATH=/home/davba/syntaxnet-utils/compiled-swig/bin

Vielen Dank!

+0

Kannst du 'bazel test --verbose_failures Syntaxnet/... util/utf8/...' ausführen und die Ausgabe in deine Frage einfügen? – kristina

+0

Das Hinzufügen der '--verbose_failures'option scheint die Fehlerausgabe nicht zu ändern. Ich bekomme immer noch die gleichen drei Fehler und die Meldung "NO STATUS" für alle Tests. Allerdings habe ich festgestellt, dass ich eine alte Version von Protobuf benutze. Ich werde versuchen, es zu aktualisieren und es erneut auszuführen. –

Antwort

0

Ich habe versucht, es auf einer anderen Maschine mit CentOS 7.0 laufen, aber mit dem gleichen Fehler.

Endlich hatte ich die Möglichkeit, zu einem Ubuntu-Rechner mit sudo-Rechten zu wechseln, der es mir ermöglichte, das Bazel-Installationsprogramm auszuführen und Syntaxnet problemlos zu kompilieren. Dies löst das Problem in meinem Fall. Für eine "echte" Lösung denke ich, dass wir auf jemanden warten müssen, der das gleiche Problem hat.