交叉编译库链接(linux)(C++/C)

Cross compiling library linking (linux) (C++/C)

本文关键字:C++ linux 链接 交叉编译      更新时间:2023-10-16

交叉编译到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;
}

提前感谢您的帮助、时间和答案!

问题已解决。

我不得不在Buildroot中重新选择库,并重新构建整个arm编译器。