Имеется Raspberry Pi с последним Raspbian Wheezy на борту и устройство с интерфейсом на базе чипа FTDI. Для устройства были установлены библиотеки (согласно
прилагаемому мануалу). Проблема в том, что программы не видят этих библиотек.
Запускаем пример, идущий с драйвером:
$ sudo ~/release/examples/EEPROM/read/./read
/home/pi/release/examples/EEPROM/read/./read: error while loading shared libraries: libftd2xx.so: cannot open shared object file: No such file or directory
Нет файла, говорите? Проверяем зависимости:
$ sudo ldd ~/release/examples/EEPROM/read/./read
/usr/lib/arm-linux-gnueabihf/libcofi_rpi.so (0xb6fb5000)
libftd2xx.so => not found
libc.so.6 => /lib/arm-linux-gnueabihf/libc.so.6 (0xb6e7a000)
/lib/ld-linux-armhf.so.3 (0xb6fc3000)
Действительно нет. Но! Проверяем какие библиотеки вообще есть в системе (вывод обрезан):
$ sudo ldconfig -v
/usr/local/lib:
libftd2xx.so -> libftd2xx.so.1.1.12
/usr/lib:
libftd2xx.so -> libftd2xx.so.1.1.12
И, о чудо, библиотеки в системе есть. И даже прописаны в двух местах. Но линковщик их не видит. Почему?
Прописывать отдельно путь к отдельной папке с библиотекой через переменную LD_LIBRARY_PATH пробовал. Прописывать этот-же путь через ld.so.conf пробовал.
А самая мистика в том, что на такой-же малинке с Arch Linux всё работает без всяких проблем. Более того, и на Raspbian с ядром 3.10 всё работало. Но из-за безвременной кончины SD карты пришлось накатить систему с нуля. И тут такая засада.