交叉编译库链接 (linux) (C++/C)
Cross compiling library linking (linux) (C++/C)
我在交叉编译我的 RPI2 时遇到问题。
在本地编译时,一切正常。
我正在使用 Buildroot 作为交叉编译器,
没有 lusb-1.0 的所有其他程序 works/compiles 没问题。
本例中的图书馆是'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;
}
提前感谢您的帮助、时间和答案!
问题已解决。
我不得不重新select Buildroot 中的库,并重新构建整个 arm-compiler。
我在交叉编译我的 RPI2 时遇到问题。 在本地编译时,一切正常。
我正在使用 Buildroot 作为交叉编译器, 没有 lusb-1.0 的所有其他程序 works/compiles 没问题。
本例中的图书馆是'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;
}
提前感谢您的帮助、时间和答案!
问题已解决。
我不得不重新select Buildroot 中的库,并重新构建整个 arm-compiler。