Ошибка при сборке libusb c/c++
C:\Users\usr\Desktop\tests_cpp>g++ un_05.cpp -L. -lusb-1.0 C:\Users\usr\AppData\Local\Temp\ccfnETc8.o:un_05.cpp:(.text+0x24): undefined reference to
libusb_init@4'*** C:\Users\usr\AppData\Local\Temp\ccfnETc8.o:un_05.cpp:(.text+0x6e): ***undefined reference tolibusb_get_device_list@8' collect2.exe: error: ld returned 1 exit status
когда я скачал библиотеку там были только 1) файл include\libusb.h 2) файлы для mingw64\mingw32 \libusb-1.0.a
и на с++ и на c одна и та же ошибка
подскажите что я делаю не так
Ответы (1 шт):
Ошибка был а в разрядности компилятора и в том что я не положил dll файлы в папку с main.cpp
Что сделать чтобы избежать данной ошибки:
1)следует проверить разрядность скомпилировав:
cout << sizeof(void*);
если 4 - 32 битная если 8 - 64 битная
2) Далее нужно взять подходящие файлы из библиотеки и перенести их к main.cpp
3) При компиляции прилинкуйте только lib___.a файл
В mingw (g++) на примере файла libusb.a:
g++ main.cpp -L. -lusb