Sie haben recht, das klingt sehr nach einem Linker-Fehler.
Stellen Sie sicher, dass die Linker-Flags richtig gesetzt sind, z-lOpenCL
ViennaCL-Installationsfehler
Ich versuche, ViennaCL-1.2.1 in Scientific Linux für zukünftiges GPU-Computing zu installieren. Wenn ich versuche, make aufzurufen, erhalte ich eine Vielzahl von Fehlern, wobei die meisten entlang der Zeile "undefinierte Verweise auf 'clXXXXX' verweisen. Ich gehe davon aus, dass dies darauf zurückzuführen ist, dass meine OpenCL-Bibliothek nicht richtig gefunden wurde. Was ich nicht weiß, ist, ob Ich habe genügend Bibliotheken, in / usr / lib habe ich libOpenCL.so und ich habe den aktuellsten NVIDIA-Treiber für meine Grafikkarte installiert, der OpenCL unterstützt, aber ich brauche mehr Downloads von der NVIDIA-Site die ViennaCL-Bibliothek verwenden?
BEARBEITEN: Ich habe das obige Make-Problem (glaube ich) durch einfaches erneutes Ausführen von cmake gelöst. Ich denke, dass ich die Bibliotheken nicht richtig installiert hatte, als ich cmake zum ersten Mal ausgeführt habe und es zu stillen Fehlern beim Erstellen der make-Dateien kam. Dies hat jedoch lediglich die Art des Problems geändert.
Wann immer ich eines der in ViennaCL enthaltenen Tutorials oder Benchmarks ausführte, erhalte ich einen schwerwiegenden Fehler, bei dem "ViennaCL einen unbekannten OpenCL-Fehler festgestellt hat". Es heißt, dies könnte auf mehrere Übersetzungsfehler zurückzuführen sein, geht aber nicht weiter ins Detail. Der einzige Fehler, der keinen Fehler auslöst, ist "Bandbreitenreduzierung", der laut Handbuch der einzige ist, der kein OpenCL erfordert.
Hier sehen Sie meinen Installationsprozess für ViennaCL und die GPU-Treiber:
- sftp ViennaCL-1.2.1 to ~/Documents/packageInstall - cd /usr/include - sudo mkdir viennacl - sudo cp -r ~/Documents/packageInstall/ViennaCL-1.2.1/viennacl/* /usr/include/viennacl - sudo mkdir CL - sudo cp -r ~/Documents/packageInstall/ViennaCL-1.2.1/CL/* /usr/include/CL - sftp gpucomputingsdk_4.2.9_linux.run to ~/Documents/packageInstall - sftp cudatoolkit_4.2.9_linux_64_rhel6.0.run to ~/Documents/packageInstall - cd ~/Documents/packageInstall - sudo sh ./cudatoolkit_4.2.9_linux_64_rhel6.0.run - sudo sh ./gpucomputingsdk_4.2.9_linux.run - cd ViennaCL-1.2.1/build - cmake .. - sudo make - ./examples/tutorial/blas1 (or any other example)
2 Antworten auf die Frage
Mit wichtigen Hinweisen von Karl Rupp löste ich das Problem, indem ich den Benutzer, der versucht, die Programme auszuführen, der Gruppe 'Video' hinzufügt, und dann den nvidia-Dienst bei jedem Start manuell startet. Die Gruppe "Video" war erforderlich, um den Zugriff auf die OpenCL-Bibliothek zu ermöglichen, und die Treiber müssen gestartet werden, damit auf die GPU zugegriffen werden kann.
Verwandte Probleme
-
1
Gibt es eine Möglichkeit, Installationen / Updates zu verhindern, die meine Festplatte mit kryptisch...
-
1
Muss ich SP1 neu installieren, wenn ich Vista SP1 installiere, bevor ich IIS aktiviere?
-
4
So installieren Sie den GNOME-Desktop unter Linux (CENTOS)
-
3
Sollte ich bei der Installation von Windows XP "Format" oder "Format (Quick)" wählen?
-
4
Wie installiere ich Windows 7 RC von einer USB-Festplatte?
-
1
Windows Vista erkennt das CD-Laufwerk nach der Installation von iTunes nicht
-
7
Windows auf einer SD-Karte installieren
-
5
Windows Vista Home OEM-Lizenz legal herabstufen?
-
2
Wie installiere ich einen Lüfter richtig in meinem Computergehäuse?
-
1
Nokia PC Suite bleibt während der Installation hängen