Coder Social home page Coder Social logo

Comments (8)

tamasgal avatar tamasgal commented on July 22, 2024

I updated cabal (forgot to do so before…), however, I got almost the same error:

Resolving dependencies...
Configuring cuda-0.6.7.0...
Building cuda-0.6.7.0...
Failed to install cuda-0.6.7.0
Build log ( /Users/tamasgal/.cabal/logs/cuda-0.6.7.0.log ):
[1 of 1] Compiling Main             ( /var/folders/n2/fpv312vd5xg91ncw_s5f1m5m0000gn/T/cuda-0.6.7.0-3747/cuda-0.6.7.0/dist/setup/setup.hs, /var/folders/n2/fpv312vd5xg91ncw_s5f1m5m0000gn/T/cuda-0.6.7.0-3747/cuda-0.6.7.0/dist/setup/Main.o )
Linking /var/folders/n2/fpv312vd5xg91ncw_s5f1m5m0000gn/T/cuda-0.6.7.0-3747/cuda-0.6.7.0/dist/setup/setup ...
Configuring cuda-0.6.7.0...
Found CUDA toolkit at: /usr/local/cuda
Storing parameters to cuda.buildinfo.generated
Using build information from 'cuda.buildinfo.generated'.
Provide a 'cuda.buildinfo' file to override this behaviour.
Using build information from 'cuda.buildinfo.generated'.
Provide a 'cuda.buildinfo' file to override this behaviour.
Building cuda-0.6.7.0...
Preprocessing library cuda-0.6.7.0...
[ 1 of 27] Compiling Foreign.CUDA.Internal.C2HS ( Foreign/CUDA/Internal/C2HS.hs, dist/build/Foreign/CUDA/Internal/C2HS.o )
[ 2 of 27] Compiling Foreign.CUDA.Driver.Error ( dist/build/Foreign/CUDA/Driver/Error.hs, dist/build/Foreign/CUDA/Driver/Error.o )

Foreign/CUDA/Driver/Error.chs:29:1: Warning:
    The import of ‘Foreign.Ptr’ is redundant
      except perhaps to import instances from ‘Foreign.Ptr’
    To import instances alone, use: import Foreign.Ptr()
[ 3 of 27] Compiling Foreign.CUDA.Driver.Utils ( dist/build/Foreign/CUDA/Driver/Utils.hs, dist/build/Foreign/CUDA/Driver/Utils.o )
[ 4 of 27] Compiling Foreign.CUDA.Runtime.Error ( dist/build/Foreign/CUDA/Runtime/Error.hs, dist/build/Foreign/CUDA/Runtime/Error.o )

Foreign/CUDA/Runtime/Error.chs:34:1: Warning:
    The import of ‘Foreign.Ptr’ is redundant
      except perhaps to import instances from ‘Foreign.Ptr’
    To import instances alone, use: import Foreign.Ptr()

Foreign/CUDA/Runtime/Error.chs:37:1: Warning:
    The import of ‘System.IO.Unsafe’ is redundant
      except perhaps to import instances from ‘System.IO.Unsafe’
    To import instances alone, use: import System.IO.Unsafe()
[ 5 of 27] Compiling Foreign.CUDA.Runtime.Utils ( dist/build/Foreign/CUDA/Runtime/Utils.hs, dist/build/Foreign/CUDA/Runtime/Utils.o )
[ 6 of 27] Compiling Foreign.CUDA.Analysis.Device ( dist/build/Foreign/CUDA/Analysis/Device.hs, dist/build/Foreign/CUDA/Analysis/Device.o )
[ 7 of 27] Compiling Foreign.CUDA.Analysis.Occupancy ( Foreign/CUDA/Analysis/Occupancy.hs, dist/build/Foreign/CUDA/Analysis/Occupancy.o )
[ 8 of 27] Compiling Foreign.CUDA.Runtime.Device ( dist/build/Foreign/CUDA/Runtime/Device.hs, dist/build/Foreign/CUDA/Runtime/Device.o )

Foreign/CUDA/Runtime/Device.chs:33:1: Warning:
    The qualified import of ‘Foreign.ForeignPtr’ is redundant
      except perhaps to import instances from ‘Foreign.ForeignPtr’
    To import instances alone, use: import Foreign.ForeignPtr()
[ 9 of 27] Compiling Foreign.CUDA.Driver.Device ( dist/build/Foreign/CUDA/Driver/Device.hs, dist/build/Foreign/CUDA/Driver/Device.o )

Foreign/CUDA/Driver/Device.chs:25:1: Warning:
    The qualified import of ‘Foreign.ForeignPtr’ is redundant
      except perhaps to import instances from ‘Foreign.ForeignPtr’
    To import instances alone, use: import Foreign.ForeignPtr()
[10 of 27] Compiling Foreign.CUDA.Driver.Context ( dist/build/Foreign/CUDA/Driver/Context.hs, dist/build/Foreign/CUDA/Driver/Context.o )
[11 of 27] Compiling Foreign.CUDA.Analysis ( Foreign/CUDA/Analysis.hs, dist/build/Foreign/CUDA/Analysis.o )
[12 of 27] Compiling Foreign.CUDA.Types ( dist/build/Foreign/CUDA/Types.hs, dist/build/Foreign/CUDA/Types.o )
[13 of 27] Compiling Foreign.CUDA.Runtime.Event ( dist/build/Foreign/CUDA/Runtime/Event.hs, dist/build/Foreign/CUDA/Runtime/Event.o )
[14 of 27] Compiling Foreign.CUDA.Runtime.Stream ( dist/build/Foreign/CUDA/Runtime/Stream.hs, dist/build/Foreign/CUDA/Runtime/Stream.o )
[15 of 27] Compiling Foreign.CUDA.Runtime.Exec ( dist/build/Foreign/CUDA/Runtime/Exec.hs, dist/build/Foreign/CUDA/Runtime/Exec.o )

Foreign/CUDA/Runtime/Exec.chs:23:1: Warning:
    The qualified import of ‘Foreign.ForeignPtr’ is redundant
      except perhaps to import instances from ‘Foreign.ForeignPtr’
    To import instances alone, use: import Foreign.ForeignPtr()
[16 of 27] Compiling Foreign.CUDA.Driver.Event ( dist/build/Foreign/CUDA/Driver/Event.hs, dist/build/Foreign/CUDA/Driver/Event.o )
[17 of 27] Compiling Foreign.CUDA.Driver.Stream ( dist/build/Foreign/CUDA/Driver/Stream.hs, dist/build/Foreign/CUDA/Driver/Stream.o )
[18 of 27] Compiling Foreign.CUDA.Driver.Exec ( dist/build/Foreign/CUDA/Driver/Exec.hs, dist/build/Foreign/CUDA/Driver/Exec.o )
[19 of 27] Compiling Foreign.CUDA.Ptr ( Foreign/CUDA/Ptr.hs, dist/build/Foreign/CUDA/Ptr.o )
[20 of 27] Compiling Foreign.CUDA.Runtime.Marshal ( dist/build/Foreign/CUDA/Runtime/Marshal.hs, dist/build/Foreign/CUDA/Runtime/Marshal.o )
[21 of 27] Compiling Foreign.CUDA.Runtime.Texture ( dist/build/Foreign/CUDA/Runtime/Texture.hs, dist/build/Foreign/CUDA/Runtime/Texture.o )

Foreign/CUDA/Runtime/Texture.chs:21:1: Warning:
    The qualified import of ‘Foreign.ForeignPtr’ is redundant
      except perhaps to import instances from ‘Foreign.ForeignPtr’
    To import instances alone, use: import Foreign.ForeignPtr()
[22 of 27] Compiling Foreign.CUDA.Driver.Marshal ( dist/build/Foreign/CUDA/Driver/Marshal.hs, dist/build/Foreign/CUDA/Driver/Marshal.o )
[23 of 27] Compiling Foreign.CUDA.Driver.Texture ( dist/build/Foreign/CUDA/Driver/Texture.hs, dist/build/Foreign/CUDA/Driver/Texture.o )
[24 of 27] Compiling Foreign.CUDA.Driver.Module ( dist/build/Foreign/CUDA/Driver/Module.hs, dist/build/Foreign/CUDA/Driver/Module.o )
[25 of 27] Compiling Foreign.CUDA.Driver ( Foreign/CUDA/Driver.hs, dist/build/Foreign/CUDA/Driver.o )
[26 of 27] Compiling Foreign.CUDA.Runtime ( Foreign/CUDA/Runtime.hs, dist/build/Foreign/CUDA/Runtime.o )
[27 of 27] Compiling Foreign.CUDA     ( Foreign/CUDA.hs, dist/build/Foreign/CUDA.o )
ld: file not found: @rpath/CUDA.framework/Versions/A/CUDA for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
cabal: Error: some packages failed to install:
cuda-0.6.7.0 failed during the building phase. The exception was:
ExitFailure 1

Which I could finally fix by changing the libcuda.dylib dependency using install_name_tool:

sudo install_name_tool -change @rpath/CUDA.framework/Versions/A/CUDA /Library/Frameworks/CUDA.framework/CUDA /usr/local/cuda/lib/libcuda.dylib

from cuda.

tamasgal avatar tamasgal commented on July 22, 2024

(sorry I accidentally clicked the close/open)

Still no luck:

λ :m +Foreign.CUDA
Prelude Foreign.CUDA
λ props 0
can't load .so/.DLL for: /Users/tamasgal/.cabal/lib/x86_64-osx-ghc-7.10.1/cuda_5NEysEVDNVg83Ls8aYPaNt/libHScuda-0.6.7.0-5NEysEVDNVg83Ls8aYPaNt-ghc7.10.1.dylib (dlopen(/Users/tamasgal/.cabal/lib/x86_64-osx-ghc-7.10.1/cuda_5NEysEVDNVg83Ls8aYPaNt/libHScuda-0.6.7.0-5NEysEVDNVg83Ls8aYPaNt-ghc7.10.1.dylib, 5): Library not loaded: @rpath/libcudart.7.5.dylib
  Referenced from: /Users/tamasgal/.cabal/lib/x86_64-osx-ghc-7.10.1/cuda_5NEysEVDNVg83Ls8aYPaNt/libHScuda-0.6.7.0-5NEysEVDNVg83Ls8aYPaNt-ghc7.10.1.dylib
  Reason: image not found)

from cuda.

tmcdonell avatar tmcdonell commented on July 22, 2024

I haven't tried with the version from homebrew before. I'm currently running CUDA 7.5 (plus older versions) on 10.10.5, installed via the NVIDIA installer.

Is the homebrew installer placing the CUDA.framework into /Library/Frameworks or somewhere else, and the libraries in (what looks like should be) /usr/local/cuda/lib/?

Also to clarify, the hack with install_name_tool didn't work?

Check env | grep DYLD_LIBRARY_PATH ?

from cuda.

tamasgal avatar tamasgal commented on July 22, 2024

Yea, all the files are where they should be and the paths are correct. The hack with install_name_tool worked, so that I could compile cabal install cuda. But I get the error when trying to use it actually…

However, it seems that the whole NVIDIA package is somehow not really working. I could compile the sample programs of the CUDA framework but when I run them, I get this error:

tamasgal@greybox ~/Desktop/samples/0_Simple/vectorAdd                                                            [16:10:18] 
> $ ./vectorAdd                                                                                                            
[Vector addition of 50000 elements]
Failed to allocate device vector A (error code CUDA driver version is insufficient for CUDA runtime version)!

from cuda.

tmcdonell avatar tmcdonell commented on July 22, 2024

Is this with homebrew still, or with the NVIDIA installer?

Also I just noticed you are using the El Capitan beta. I haven't tried that yet. If the CUDA examples themselves don't work, I suspect that you'll need to wait for an update on NVIDIA's end.

from cuda.

tmcdonell avatar tmcdonell commented on July 22, 2024

@tamasgal I pushed a change and now [executables] run without needing to specify DYLD_LIBRARY_PATH (still having issues in ghci though). This might make some progress for you, at least until the insufficient driver version error. Can you give it a go?

trevor@nightfall ~/D/P/c/cuda (master)
> echo $DYLD_LIBRARY_PATH


trevor@nightfall ~/D/P/c/cuda (master)
> ./.cabal-sandbox/bin/nvidia-device-query
CUDA device query (Driver API, statically linked)
CUDA driver version 7.5
Detected 1 CUDA capable device
<snip>

from cuda.

tamasgal avatar tamasgal commented on July 22, 2024

Sorry for the late answer and many thanks for you efforts. First I took the homebrew version, then I tried it with the newest NVIDIA installer.

Unfortunately I don't have access to that machine right now and my own computer (MacBook Pro) has no NVIDIA video card installed. I'll give it a go in the next few days, but I think we can close the discussion since the major problem is obviously a not (yet) supported beta OS.

from cuda.

tmcdonell avatar tmcdonell commented on July 22, 2024

Sure, let's look at this again once El Capitan is out and supported by NVIDIA. Thanks for your help so far!

from cuda.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.