【发布时间】:2020-04-13 11:09:00
【问题描述】:
有人对 libgpiod API 有任何经验吗?我已将它安装在我的 linux 平台上,但无法调用它的库函数。
我安装者:
git clone git://git.kernel.org/pub/scm/libs/libgpiod/libgpiod.git
cd libgpiod
./autogen.sh
make
make install
之后,我在 /usr/local/lib/ 中看到 libgpiod.so 库,在 / 中看到 gpiod.h 库usr/local/include/ (我也跑了ldconfig)。但是,当我尝试编译以下内容时:
test.c
#include <gpiod.h>
struct gpio_chip *chip;
int main(void)
{
chip = gpio_chip_open("/dev/gpiochip4");
return 0;
}
我收到以下错误:undefined reference to 'gpiod_chip_open'
谁能帮我看看哪里出错了?
非常感谢!
【问题讨论】:
-
你是怎么编译的?命令?
-
使用
gcc test.c -
没有链接?试试看:
gcc -lgpiod test.c -
谢谢!即编译。但是当我跑步时,我被告知
cannot open shared object file: No such file or directory... -
libgpiod是所有主要 Linux 发行版的一部分。为什么要自己编译? (是的,我有这方面的经验,但我自己从未编译过libgpiod)
标签: c api embedded-linux gpio dynamic-library