交叉编译库链接 (linux) (C++/C)
Posted
技术标签:
【中文标题】交叉编译库链接 (linux) (C++/C)【英文标题】:Cross compiling library linking (linux) (C++/C) 【发布时间】:2015-11-30 20:43:26 【问题描述】:交叉编译到我的 RPI2 时遇到问题。 在本地编译时,一切正常。
我使用 Buildroot 作为交叉编译器, 没有 lusb-1.0 的所有其他程序都可以正常工作/编译。
本例中的库是“libusb-1.0”。
编译工作正常:
g++ main.cpp -o run -lusb-1.0
编译问题:
arm-linux-g++ main.cpp -o run -lusb-1.0
错误输出:
main.cpp:2:31: fatal error: libusb-1.0/libusb.h: No such file or
directory.
#include <libusb-1.0/libusb.h>
^
程序:
#include <iostream>
#include <libusb-1.0/libusb.h>
#include <unistd.h>
#include <stdlib.h>
#include <stdio.h>
#include <errno.h>
using namespace std;
int main()
cout << "Test!" << endl;
libusb_init(NULL);
return 0;
提前感谢您的所有帮助、时间和答案!
【问题讨论】:
在 C 代码上使用 gcc 编译器时存在同样的问题。 【参考方案1】:问题解决了。
我不得不在 Buildroot 中重新选择库,然后重新构建整个 arm 编译器。
【讨论】:
以上是关于交叉编译库链接 (linux) (C++/C)的主要内容,如果未能解决你的问题,请参考以下文章