gpt4 book ai didi

c++ - 在 Ubuntu 20.04 中为 RPI4 链接 WiringPi 共享对象库

转载 作者:行者123 更新时间:2023-12-04 18:56:49 26 4
gpt4 key购买 nike

我希望有人可以帮助我研究一些我认为应该有些微不足道的事情。
我只是想编译一个包含wiringPi.h的cpp文件:

#include <wiringPi.h>

int main(){ return 0; }
我已经使用不同的链接参数运行了数十个不同的命令,无论它总是说什么:
testing_spi.cpp:2:10: fatal error: wiringPi.h: No such file or directory
2 | #include "wiringPi.h"
| ^~~~~~~~~~~~
compilation terminated.
例如,
g++ -lwiringPi -o test test.cpp
g++ -L/usr/lib/aarch64-linux-gnu -lwiringPi -o test_spi testing_spi.cpp
...
所有导致相同的输出。我已经在这里呆了几个小时,并且很困惑为什么它没有链接。
第一个 g++ 示例是在安装了wiringPi 之后运行的,如网站“sudo apt installwiringPi”中所述。在那之后没有用,我注意到 Ubuntu 带有一个预安装的版本(ver2):
sudo apt list --installed | grep wiring

WARNING: apt does not have a stable CLI interface. Use with caution in scripts.

libwiringpi2/focal,now 2.50-0ubuntu1 arm64 [installed]
wiringpi/focal,now 2.50-0ubuntu1 arm64 [installed]
但我能从 Ubuntu 找到的唯一文档是垃圾:
https://packages.ubuntu.com/focal/amd64/libwiringpi2/filelist
我能够在目录“/usr/lib/aarch64-linux-gnu/”中找到那些共享对象文件。我只是假设它以相同的方式包含“wiringPi.h”,但我也尝试了一些猜测“libwiringPi.h”、“wiringPi2.h”等。
当我查看 .so.2 文件时,我看到了一些我想使用的功能:
nm -gD --demangle /usr/lib/aarch64-linux-gnu/libwiringPi.so.2
w _ITM_deregisterTMCloneTable
w _ITM_registerTMCloneTable
U __ctype_b_loc
w __cxa_finalize
U __errno_location
U __fprintf_chk
w __gmon_start__
U __printf_chk
U __snprintf_chk
U __sprintf_chk
U __stack_chk_fail
U __stack_chk_guard
U __vsnprintf_chk
000000000000b910 T _drcSetupNet
0000000000023fd0 B _wiringPiClk
0000000000023fb8 B _wiringPiGpio
0000000000023fb0 B _wiringPiPads
0000000000023fc0 B _wiringPiPwm
0000000000023fd8 B _wiringPiTimer
0000000000023fc8 B _wiringPiTimerIrqRaw
U access
000000000000a180 T ads1115Setup
0000000000005b98 T analogRead
0000000000005bd8 T analogWrite
但是我在尝试让它正确链接时遇到了太多麻烦。任何帮助将不胜感激。我已经盯着这条路太久了。
我也会使用wiringPi 的网站版本,但在运行 sudo apt install wiringPi 后找不到任何库文件.我很乐意让任何一个版本都为我工作。提前致谢!

最佳答案

在深入研究为什么没有安装 header 之后。我猜标题不包括在内,除非它是一个'-dev'包。所以我找到了这个包:https://packages.ubuntu.com/hirsute/libwiringpi-dev它有让我编译没有错误的标题。我仍然需要尝试一些功能,但我认为这将是一个单独的问题。

关于c++ - 在 Ubuntu 20.04 中为 RPI4 链接 WiringPi 共享对象库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/67561926/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com