【发布时间】:2011-12-23 18:49:34
【问题描述】:
我正在尝试编译此处找到的项目之一 USB-I2C/SPI/GPIO 接口适配器。
我下载了i2c_bridge-0.0.1-rc2.tgz 包。我安装了libusb,似乎一切顺利,没有任何问题。我进入i2c_bridge-0.0.1-rc2/ 目录并制作。编译。我进入i2c_bridge-0.0.1-rc2/i2c 文件夹并制作。它编译并给我./i2c。但是,当我运行它时,它会显示error while loading shared libraries: libi2cbrdg.so: cannot open shared object file: No such file or directory
i2c_bridge-0.0.1-rc2/i2c 中的 makefile 的库目录为 ../。 libi2cbrdg.so 位于此目录 (i2c_bridge-0.0.1-rc2) 中。我还将文件复制到/usr/local/lib。 i2c_bridge-0.0.1-rc2/ 目录的ls 是
i2c i2cbrdg.d i2cbrdg.o libi2cbrdg.a Makefile tests
i2cbrdg.c i2cbrdg.h INSTALL libi2cbrdg.so README u2c4all.sh
(那个i2c是一个目录)
如果我sudo ./i2c,它仍然会给我带来问题。
我必须去掉所有 makefile 中的 -Werror 和 -noWdecrepated(拼写?)选项才能让它们编译,但这不应该影响它吗?
它还需要什么才能找到.so 文件?如果有人可以帮助我找出问题所在,我将不胜感激。如果需要更多信息,我可以发布。
【问题讨论】:
-
cannot open shared object file有时会通过发出sudo ldconfig来刷新先前编译和安装的包的共享库缓存以使其为下游包的编译做好准备
标签: build find debian shared-objects