philipperemy / yolo-9000

YOLO9000: Better, Faster, Stronger - Real-Time Object Detection. 9000 classes!

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

OSError: libcudart.so.10.0: cannot open shared object file: No such file or directory

opened this issue · comments

Your code doesn't work. I try to run darknet.py in darknet/python/ and I get the following error:

File "/home/muhammadmehdi/PycharmProjects/memex/darknet.py", line 52, in <module>
    lib = CDLL("yolo-9000/darknet/libdarknet.so", RTLD_GLOBAL)
  File "/usr/lib/python3.8/ctypes/__init__.py", line 373, in __init__
    self._handle = _dlopen(self._name, mode)
OSError: libcudart.so.10.0: cannot open shared object file: No such file or directory

Process finished with exit code 1

If I execute the following, your code works:

./darknet detector test cfg/combine9k.data cfg/yolo9000.cfg ../yolo9000-weights/yolo9000.weights data/dog.jpg

I ran make with cuda-10.0 and it was successful plus the darknet detector test was also successful. So, I know I installed everything correctly. However, the python code in darknet.py doesn't run. I tried changing the symbolic link of my cuda to cuda 10.0 (before it was 11.2) and I verified the change by running nvcc -V. However, your code still doesn't work

Yeah it's common. Make sure those directories exist:

ls /usr/local/cuda/bin/
ls /usr/local/cuda/lib64/

Then run those lines before:

export PATH=/usr/local/cuda/bin/:$PATH
export LD_LIBRARY_PATH=/usr/local/cuda/lib64/:$LD_LIBRARY_PATH

You can add them to your bashrc (or zshrc).

If it still does not work, try this: https://stackoverflow.com/a/64152823/4170095.

@philipperemy I tried running your code from the Ubuntu terminal instead of PyCharm:

python3 python/darknet.py

Now, this is the error I get:

Traceback (most recent call last):
  File "python/darknet.py", line 151, in <module>
    net = load_net("cfg/yolo9000.cfg", "weights/yolo9000.weights", 0)
ctypes.ArgumentError: argument 1: <class 'TypeError'>: wrong type

Do you have the file weights/yolo9000.weights? Does the commands in this repo work for you?

This works: (Yes, I have the weights)

./darknet detector test cfg/combine9k.data cfg/yolo9000.cfg ../yolo9000-weights/yolo9000.weights data/dog.jpg

But this doesn't

python3 python/darknet.py

I need the second one to work because I need the numerical detection values for my project

I fixed the problem by converting strings to bytes before passing them to the c function

great!

To run the code in Pycharm, run the following in the terminal: sudo ldconfig /usr/local/cuda/lib64