我试图通过安装各种库来解决这个问题,但仍然一无所获。建议?
我检查了包含路径:
parallels@ubuntu-linux-20-04-desktop:~$ locate /assert.h | grep assert.h$
/opt/ros/noetic/include/ros/assert.h
/usr/aarch64-linux-gnu/include/assert.h
/usr/include/assert.h
parallels@ubuntu-linux-20-04-desktop:~$ dpkg -l | grep libc6-dev
ii libc6-dev:arm64 2.31-0ubuntu9.3 arm64 GNU C Library: Development Libraries and Header Files
ii libc6-dev-arm64-cross 2.31-0ubuntu9.2cross1 all GNU C Library: Development Libraries and Header Files (for cross.compliling)
parallels@ubuntu-linux-20-04-desktop:~$ dpkg -L libc6-dev-arm64-cross | grep assert.h
/usr/aarch64-linux-gnu/include/assert.h
发布于 2021-05-02 13:01:38
sudo apt-get install libc6-dev-arm64-cross
文件列表包括assert.h
。因此,如果您安装此软件包,该文件将在您的系统中。
如果在编译时找不到标头,那是因为它不在搜索路径中。因此,您应该确切地说明用于尝试编译的命令/包。
avr-gcc -xc -E -v -
或
echo | gcc -Wp,-v -x c++ - -fsyntax-only
还请检查assert.h
位于何处
sudo updatedb
locate /assert.h | grep assert.h$
如果这些不匹配(我不知道为什么不能自动正确设置),作为一个解决办法,您可以手动添加路径。您也可以尝试把它设置得更永久。
另请参阅
如果您发布以下命令的输出,则会有所帮助
dpkg -l | grep libc6-dev
dpkg -L libc6-dev-arm64-cross | grep assert.h
如果您将文本和格式复制为代码,而不是图像(不过,对您来说更多的工作),则更有用。
https://askubuntu.com/questions/1335526
复制相似问题