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.
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.
I think this could possibly be related to an earlier message from running generate in the ccmake interface: