srvk / eesen

The official repository of the Eesen project
http://arxiv.org/abs/1507.08240
Apache License 2.0
824 stars 342 forks source link

install error #140

Open fanlamda opened 7 years ago

fanlamda commented 7 years ago

When I make in /src, I met error like this: /home/fanl/eesen/src/netbin/train-ctc.cc:89: undefined reference to eesen::CuDevice::SelectGpuId(std::string)' /home/fanl/eesen/src/netbin/train-ctc.cc:90: undefined reference toeesen::CuDevice::DisableCaching()' /home/fanl/eesen/src/netbin/train-ctc.cc:174: undefined reference to eesen::CuDevice::PrintProfile()' train-ctc.o: In functioneesen::CuDevice::Instantiate()': /home/fanl/eesen/src/netbin/../gpucompute/cuda-device.h:46: undefined reference to eesen::CuDevice::global_device_' collect2: error: ld returned 1 exit status make[1]: *** [train-ctc] Error 1 make[1]: Leaving directory/home/fanl/eesen/src/netbin' make: *** [netbin] Error 2

Does anyone have an idea about this

riebling commented 7 years ago

Although it should build either way, I'm wondering if this has to do with how the code was configured;

  1. Are you building with or without CUDA GPU support?
  2. If with, do you have a valid CUDA library installed?
  3. What arguments were given when you ran configure?

Because the particular errors are definitely CUDA related.

The particular install instructions that matter, from https://github.com/srvk/eesen/blob/master/INSTALL are: (and of course, you need to replace '/path/to/cuda_library' with the actual path of YOUR CUDA library installation, for example /usr/local/cuda8.0)


   > cd src
   > ./configure --shared --cudatk-dir=/path/to/cuda_library
   > make depend
   > make

   EESEN can be built without CUDA (for decoding only, for example)
by omitting the cudatk-dir argument and specifying --use-cuda=no
fanlamda commented 7 years ago

@riebling thanks for reply actually when I enter ./configure --shared --cudatk-dir=/path/to/cuda_library I got the following. It seems OK with CUDA Validating presence of ATLAS libs in /usr/lib Using library /usr/lib/liblapack.so as ATLAS's CLAPACK library. Using CUDA toolkit /usr/local/cuda (nvcc compiler and runtime libraries) Static=[false] Speex library not found: You can still build Kaldi without Speex. Successfully configured for Linux [dynamic libraries] with ATLASLIBS =/usr/lib/liblapack.so /usr/lib/libcblas.so /usr/lib/libatlas.so /usr/lib/libf77blas.so

dambaquyen96 commented 6 years ago

I'm working on eesen and get the same problem as @fanlamda when installing. Have anyone met this problem and known how to get it work?

fmetze commented 6 years ago

Not sure if this is an eesen-specific thing. Have you seen other code that shows this error?

In any case, it would be helpful to have more information about what OS you are using, what software is installed, etc - I don't recall anyone else having this problem.

riebling commented 6 years ago

Not sure either; have we tried building against Cuda 9.0 yet? Thus far we've been sticking to 8.0, but 9 is the new default, and may have differences like the missing PrintProfile()