2016-10-31 6 views
1

Ich versuche Caffe Deep Learning Network-Lösung mit Windows zu bauen und ich habe buchstäblich alles versucht, damit es funktioniert.LNK1104 Visual Studio 2015

Ich fand ähnliche Fragen, aber sie waren VS 2010 oder 2013 und ich habe keine der Optionen in den meisten Antworten aufgeführt.

Erstens: Ich benutze VS 2015, cudNN und neuesten Caffe, und ich versuche, es mit Windows X 64 zu bauen.

Zweitens: Ich habe zwei Ansätze versucht (begann mit dem Hinzufügen von cudNN Pfad in beiden Fällen)

1) Referenz: http://embedonix.com/articles/machine-learning/compiling-caffe-with-cuda-and-cudnn-support-on-windows-from-source/2/

ich diesen Befehl verwendet haben:

nuget restore Caffe.sln -PackagesDirectory ..\..\NugetPackages -ConfigFile nuget.config 

dann startete Visual Studio und versuchte, die Lösung zu bauen, aber ich bekomme diesen Fehler:

LNK1104 cannot open file 'libboost_date_time-vc140-mt-gd-1_59.lib' classification 

2) Ich habe versucht, diese Methode: https://github.com/BVLC/caffe/tree/windows, die von ihrer offiziellen Website ist.

Aber ich bin immer Fehler: „Der Eintrag Prozedur point_CrtSetCheckCOunt nicht in dem Dynamic Link Library ... protoc.exe befinden könnte“

Hat jemand eine Lösung, wie eines dieser Probleme zu lösen, so Ich könnte es installieren?

+0

Mögliches Duplikat von [Kompilieren von C++ - Programm verursacht "Schwerwiegender Fehler LNK1104"] (http://stackoverflow.com/questions/927574/compiling-c-programm-causes-fatal-error-lnk1104) –

Antwort

1

Ich stehe vor einem ähnlichen Problem. Eine der Bibliotheken, von der der Code abhängig ist, hängt von der Boost-Funktion ab.

Ihr Code muss jetzt auch Boost importieren.

Zum Glück gibt es Boost-Pakete über nugget. Sie müssen sie alle manuell überprüfen, bis die Fehler verschwunden sind. Der erste wäre boost_date_time.

Meine Pakete Datei sieht nun wie folgt aus:

<packages> 
    <package id="boost" version="1.63.0.0" targetFramework="native" /> 
    <package id="boost_atomic-vc140" version="1.63.0.0" targetFramework="native" /> 
    <package id="boost_chrono-vc140" version="1.63.0.0" targetFramework="native" /> 
    <package id="boost_date_time-vc140" version="1.63.0.0" targetFramework="native" /> 
    <package id="boost_filesystem-vc140" version="1.63.0.0" targetFramework="native" /> 
    <package id="googletest" version="1.8.0.0" targetFramework="native" /> 
    </packages> 

Das funktioniert, weil die Projektziele nun erweitert werden beeing und Sie erhalten den Pfad zu dem Verzeichnis der Lib-Datei als zusätzliche Bibliotheksverzeichnis zu dem Projekt hinzugefügt.

Der nächste Fehler, den Sie jetzt bekommen können, ist LNK2019 und dieser wäre mit allen oder Teilen der Boost-Bibliothek verbunden, die dynamisch in Ihrer Abhängigkeit verknüpft sind. Die Lösung für mich ist anders für die Lösung für Sie hier - aber ich bin sicher, dass es eine Caffe-spezifische Lösung gibt.