Skip to content

Installing on OSX #11

@remaininlight

Description

@remaininlight

I have been attempting to install CUV on OSX, I am stuck on the error below when I run "make -j". Any help or pointers are appreciated. I've already navigated through a few different errors, so if we can get it working on OSX I'll put a guide together, which might be useful for others.

Scanning dependencies of target tp_theano
[ 18%] Linking CXX shared library libtp_theano.dylib
Undefined symbols for architecture x86_64:
  "cuv::cuvAssertFailed(char const*)", referenced from:
      cuv::theano_conv::convolve_2d_with_bias(cuv::tensor<float, cuv::dev_memory_space, cuv::row_major>&, cuv::tensor<float, cuv::dev_memory_space, cuv::row_major> const&, cuv::tensor<float, cuv::dev_memory_space, cuv::row_major> const&, cuv::tensor<float, cuv::dev_memory_space, cuv::row_major> const&, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, int) in tp_theano_generated_convolutions.cu.o
      cuv::theano_conv::convolve_2d(cuv::tensor<float, cuv::dev_memory_space, cuv::row_major>&, cuv::tensor<float, cuv::dev_memory_space, cuv::row_major> const&, cuv::tensor<float, cuv::dev_memory_space, cuv::row_major> const&, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, int) in tp_theano_generated_convolutions.cu.o
      cuv::theano_conv::d_convolve_d_images(cuv::tensor<float, cuv::dev_memory_space, cuv::row_major>&, cuv::tensor<float, cuv::dev_memory_space, cuv::row_major> const&, cuv::tensor<float, cuv::dev_memory_space, cuv::row_major> const&, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&) in tp_theano_generated_convolutions.cu.o
      cuv::theano_conv::d_convolve_d_images_with_bias(cuv::tensor<float, cuv::dev_memory_space, cuv::row_major>&, cuv::tensor<float, cuv::dev_memory_space, cuv::row_major> const&, cuv::tensor<float, cuv::dev_memory_space, cuv::row_major> const&, cuv::tensor<float, cuv::dev_memory_space, cuv::row_major> const&, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&) in tp_theano_generated_convolutions.cu.o
      cuv::theano_conv::d_convolve_d_kern(cuv::tensor<float, cuv::dev_memory_space, cuv::row_major>&, cuv::tensor<float, cuv::dev_memory_space, cuv::row_major> const&, cuv::tensor<float, cuv::dev_memory_space, cuv::row_major> const&, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&) in tp_theano_generated_convolutions.cu.o
  "void cuv::detail::copy<int>(int*, int const*, unsigned long, cuv::host_memory_space, cuv::host_memory_space, CUstream_st*)", referenced from:
      void cuv::linear_memory<int, cuv::host_memory_space>::copy_from<int, cuv::host_memory_space>(cuv::linear_memory<int, cuv::host_memory_space> const&, CUstream_st*) const in tp_theano_generated_convolutions.cu.o
  "void cuv::detail::copy<unsigned int>(unsigned int*, unsigned int const*, unsigned long, cuv::host_memory_space, cuv::host_memory_space, CUstream_st*)", referenced from:
      void cuv::linear_memory<unsigned int, cuv::host_memory_space>::copy_from<unsigned int, cuv::host_memory_space>(cuv::linear_memory<unsigned int, cuv::host_memory_space> const&, CUstream_st*) const in tp_theano_generated_convolutions.cu.o
  "int cuv::detail::entry_get<int>(int const*, unsigned long, cuv::host_memory_space)", referenced from:
      cuv::reference<int, cuv::host_memory_space>::operator int() const in tp_theano_generated_convolutions.cu.o
  "unsigned int cuv::detail::entry_get<unsigned int>(unsigned int const*, unsigned long, cuv::host_memory_space)", referenced from:
      cuv::reference<unsigned int, cuv::host_memory_space>::operator unsigned int() const in tp_theano_generated_convolutions.cu.o
  "_cublasGetError", referenced from:
      CudaNdarray_CreateArrayObj(CudaNdarray*) in tp_theano_generated_cuda_ndarray.cu.o
      cnda_copy_structure_to_device(CudaNdarray*) in tp_theano_generated_cuda_ndarray.cu.o
      CudaNdarray_CopyFromCudaNdarray(CudaNdarray*, CudaNdarray*, bool) in tp_theano_generated_cuda_ndarray.cu.o
      CudaNdarray_setitem(_object*, _object*, _object*) in tp_theano_generated_cuda_ndarray.cu.o
      CudaNdarray_ptr_int_size(_object*, _object*) in tp_theano_generated_cuda_ndarray.cu.o
      cublas_init() in tp_theano_generated_cuda_ndarray.cu.o
      cublas_shutdown() in tp_theano_generated_cuda_ndarray.cu.o
      ...
  "_cublasGetVector", referenced from:
      CudaNdarray_CreateArrayObj(CudaNdarray*) in tp_theano_generated_cuda_ndarray.cu.o
      CudaNdarray_ptr_int_size(_object*, _object*) in tp_theano_generated_cuda_ndarray.cu.o
      fprint_CudaNdarray(__sFILE*, CudaNdarray const*) in tp_theano_generated_cuda_ndarray.cu.o
  "_cublasInit", referenced from:
      cublas_init() in tp_theano_generated_cuda_ndarray.cu.o
  "_cublasScopy", referenced from:
      CudaNdarray_CopyFromCudaNdarray(CudaNdarray*, CudaNdarray*, bool) in tp_theano_generated_cuda_ndarray.cu.o
  "_cublasSetVector", referenced from:
      cnda_copy_structure_to_device(CudaNdarray*) in tp_theano_generated_cuda_ndarray.cu.o
      CudaNdarray_setitem(_object*, _object*, _object*) in tp_theano_generated_cuda_ndarray.cu.o
      CudaNdarray_CopyFromArray(CudaNdarray*, PyArrayObject*) in tp_theano_generated_cuda_ndarray.cu.o
  "_cublasSgemm", referenced from:
      CudaNdarray_gemm(float, CudaNdarray const*, CudaNdarray const*, float, CudaNdarray*) in tp_theano_generated_cuda_ndarray.cu.o
  "_cublasSger", referenced from:
      CudaNdarray_sger(float, CudaNdarray*, CudaNdarray*, CudaNdarray*) in tp_theano_generated_cuda_ndarray.cu.o
  "_cublasShutdown", referenced from:
      cublas_shutdown() in tp_theano_generated_cuda_ndarray.cu.o
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
make[2]: *** [src/3rd_party/cuda_ndarray/libtp_theano.0.9.dylib] Error 1
make[1]: *** [src/3rd_party/cuda_ndarray/CMakeFiles/tp_theano.dir/all] Error 2
make[1]: *** Waiting for unfinished jobs....
make[1]: *** [src/3rd_party/cudaconv2/CMakeFiles/tp_cudaconv2.dir/all] Error 2
make: *** [all] Error 2

I think this could possibly be related to an earlier message from running generate in the ccmake interface:

CMake Warning (dev):
   Policy CMP0042 is not set: MACOSX_RPATH is enabled by default.  Run "cmake
   --help-policy CMP0042" for policy details.  Use the cmake_policy command to
   set the policy and suppress this warning.

   MACOSX_RPATH is not specified for the following targets:

    cuv
    tp_cudaconv2
    tp_theano

 This warning is for project developers.  Use -Wno-dev to suppress it.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions