Estoy tratando de usar make
para construir un binario a partir de un código fuente para un programa que necesito.
Enlace a la fuente: enlace
Requiere usb.h, que parece ser parte de usblib-compat. Instalé este último por brew install usblib-compat
. Pero aún no se puede ver usb.h, aunque sé dónde está (en / usr / local / Cellar / usblib-compat / version / include).
Leí mucho a través de Internet e intenté establecer muchas variables de entorno, pero no tuve éxito. ¿Alguna idea?
ACTUALIZACIÓN
Después de muchas pruebas, he progresado de alguna manera. Es decir, el archivo config.mk se lee claramente durante el proceso de creación, aunque debo admitir que no está claro cómo se hace esto; De todos modos, noté dos líneas comentadas:
CPPFLAGS += -I/usr/local/include
LDFLAGS += -L/usr/local/lib -Wl,-R/usr/local/lib
Los comenté y ahora sucede algo: se encuentra el usb.h. Creo que la primera de estas definiciones de variables le dice al compilador dónde buscar los archivos de encabezado, y la segunda le dice al vinculador dónde debe buscar las bibliotecas, pero otra vez no está del todo claro para mí.
En cualquier caso, todavía tengo problemas. Es decir, el proceso de creación genera dos advertencias y un error, y luego se detiene:
usb-device.c:90:57: warning: unused parameter 'udev' [-Wunused-parameter]
static void usb_reattach_kernel_driver(usb_dev_handle * udev, int interface) {
^
usb-device.c:90:67: warning: unused parameter 'interface' [-Wunused-parameter]
static void usb_reattach_kernel_driver(usb_dev_handle * udev, int interface) {
usb-device.c:324:13: error: use of undeclared identifier 'RTLD_DEFAULT' if ( dlsym(RTLD_DEFAULT, "libusb_init") )
Parece que este programa es difícil de portar de Linux a Mac, aunque creo que debería ser portátil. Si alguien tiene alguna idea sobre qué hacer (aparte de ejecutar una distribución de Linux ...), sería muy apreciado.