无法执行 C 可执行文件

无法执行 C 可执行文件

我正在尝试将 libusb 用于我的项目,但是出现了一个神秘的问题。

我编译了 C 源代码,没有任何错误。它成功地在当前目录中生成了一个可执行的 C 文件,但是当我执行该文件时,libusb_init: No such file or directory出现了一个错误,如下面的屏幕截图所示。

在此处输入图片描述

答案1

问题出在我的代码中。if语句是if(ret <= 0),并且它与libusb_init

就是这样。工作源代码如下所示。

# include<stdio.h>
# include<stdlib.h>
# include<usb.h>
# include<libusb-1.0/libusb.h>

int main(int argc, char *argv[]){

    libusb_device **devs;
    libusb_context *context = NULL;

    size_t list;
    size_t i;
    int ret;

    ret = libusb_init(&context);

    if(ret < 0){
        perror("libusb_init");
        exit(1);
    }

    list = libusb_get_device_list(context,&devs);

    if(list < 0){
        fprintf(stderr, "error shuu\n");
        libusb_free_device_list(devs,1);
        libusb_exit(context);
        exit(1);
    }

    int listp = list;

    printf("end %d toxooromj bn\n", listp);

    for(i=0;i<list;i++){
        //print something
    }

    libusb_free_device_list(devs,1);
        libusb_exit(context);

    return 0;
}

特别感谢@Kulfy 告诉我重新考虑再次检查源代码。

相关内容