Libusb交叉编译

  使用过USB的同学,应该都知道Libusb这个库。这个库使用起来非常简单,内部提供了强大的接口,下面我来总结一下 交叉编译过程

  libusb驱动库包含了 libusb-1.0.9.tar.bz2 和 libusb-compat-0.1.4.tar.bz2,下载地址如下:

  https://download.csdn.net/download/bearobot/11029834

1、编译 libusb-1.0.9.tar.bz2 库:
    (1).解压:
    # tar -xvf libusb-1.0.9.tar.bz2
    # cd libusb-1.0.9
    (2).使用 gcc 编译时,即在PC 虚拟机的 Linux平台上面使用时候:
    当在32bit的编译器上编译时:
    # ./configure --prefix=$(pwd)/_install_libusb   --disable-shared --enable-static CC=gcc
    当在64bit的编译器上编译时:
    # CFLAGS="-O -fPIC" ./configure --prefix=$(pwd)/_install_libusb --disable-shared --enable-static CC=gcc
    (3).使用 arm-linux-gcc 编译(需要指定主机:--host="arm-linux")时,即在arm平台上面使用时候:
    当在 arm 32bit的编译器上编译时:
    # ./configure --host="arm-linux" --prefix=$(pwd)/_install_libusb   --disable-shared --enable-static CC=arm-linux-gcc
    当在arm 64bit的编译器上编译时:
    # CFLAGS="-O -fPIC" ./configure --host="arm-linux" --prefix=$(pwd)/_install_libusb --disable-shared --enable-static  CC=arm-linux-gcc
    (4).编译
    # make
    # make install
    (5).编译完成,即可在 _install_libusb 目录下看到生成的 库文件 和 h文件,tree如下图,其中 libusb-1.0.a 和 libusb.h 即为我们需要的文件:
 

Libusb交叉编译_第1张图片

2、编译 libusb-compat-0.1.4.tar.bz2 库:
    (1).解压:
    # tar -xvf libusb-compat-0.1.4.tar.bz2
    # cd libusb-compat-0.1.4
    (2).将 libusb-1.0.9.tar.bz2 生成的文件夹拷贝到本目录(需要特别注意这一步,否则后面会生成Makefile失败):
    # cp ../libusb-1.0.9/_install_libusb/ ./ -rf
    (3).使用 gcc 编译时,即在PC 虚拟机的 Linux平台上面使用时候:
    当在32bit的编译器上编译时:
    # ./configure --prefix=$(pwd)/_install_libusb  PKG_CONFIG_PATH=$(pwd)/_install_libusb/lib/pkgconfig --enable-static --disable-shared CC=gcc
    当在64bit的编译器上编译时:
    # CFLAGS="-fPIC" ./configure --prefix=$(pwd)/_install_libusb PKG_CONFIG_PATH=$(pwd)/_install_libusb/lib/pkgconfig --enable-static --disable-shared CC=gcc
    (4).使用 arm-linux-gcc 编译(需要指定主机:--host="arm-linux")时,即在arm平台上面使用时候:
    当在 arm 32bit的编译器上编译时:
    # ./configure --host="arm-linux" --prefix=$(pwd)/_install_libusb  PKG_CONFIG_PATH=$(pwd)/_install_libusb/lib/pkgconfig --enable-static --disable-shared CC=arm-linux-gcc
    当在arm 64bit的编译器上编译时:
     # CFLAGS="-fPIC" ./configure --host="arm-linux" --prefix=$(pwd)/_install_libusb PKG_CONFIG_PATH=$(pwd)/_install_libusb/lib/pkgconfig --enable-static --disable-shared CC=arm-linux-gcc
    (5).编译
    # make
    # make install
    (5).编译完成,即可在 _install_libusb 目录下看到生成的 库文件 和 h文件,tree如下图,其中 libusb-1.0.alibusb.h & libusb.a & usb.h 即为我们需要的文件:

Libusb交叉编译_第2张图片

 

    上述即为libusb库的交叉编译过程,我们将 libusb-1.0.alibusb.h & libusb.a & usb.h 编译到我们程序中即可使用libusb通讯。

 

  本人能力有限,如有疑问或者错误,请及时提出了。谢谢!!!

你可能感兴趣的:(USB入门教程,libusb,usb)