cc -I/usr/include/libevdev-1.0 -o roccat-vulcan hid.o roccat-vulcan.o output.o evdev.o fx.o -levdev -lhidapi-libusb -ludev /usr/bin/ld: roccat-vulcan.o:(.bss+0x0): multiple definition ofrv_topo_model'; hid.o:(.bss+0x0): first defined here
/usr/bin/ld: roccat-vulcan.o:(.data+0x0): multiple definition of rv_colors'; hid.o:(.bss+0x20): first defined here /usr/bin/ld: roccat-vulcan.o:(.bss+0x4): multiple definition ofrv_color_off'; hid.o:(.bss+0x5c): first defined here
/usr/bin/ld: roccat-vulcan.o:(.bss+0xc): multiple definition of rv_verbose'; hid.o:(.bss+0x64): first defined here /usr/bin/ld: roccat-vulcan.o:(.data+0x3c): multiple definition ofrv_products'; hid.o:(.bss+0x68): first defined here
/usr/bin/ld: roccat-vulcan.o:(.data+0x50): multiple definition of rv_products_str'; hid.o:(.bss+0x70): first defined here /usr/bin/ld: roccat-vulcan.o:(.bss+0x20): multiple definition ofrv_fixed'; hid.o:(.bss+0xa0): first defined here
/usr/bin/ld: roccat-vulcan.o:(.bss+0x4a0): multiple definition of rv_active_keys'; hid.o:(.bss+0x520): first defined here /usr/bin/ld: roccat-vulcan.o:(.bss+0x530): multiple definition ofrv_released_keys'; hid.o:(.bss+0x5b0): first defined here
/usr/bin/ld: roccat-vulcan.o:(.bss+0x540): multiple definition of rv_pressed_keys'; hid.o:(.bss+0x5c0): first defined here /usr/bin/ld: roccat-vulcan.o:(.bss+0x550): multiple definition ofrv_repeated_keys'; hid.o:(.bss+0x5d0): first defined here
/usr/bin/ld: output.o:(.bss+0x0): multiple definition of rv_topo_model'; hid.o:(.bss+0x0): first defined here /usr/bin/ld: output.o:(.bss+0x20): multiple definition ofrv_colors'; hid.o:(.bss+0x20): first defined here
/usr/bin/ld: output.o:(.bss+0x5c): multiple definition of rv_color_off'; hid.o:(.bss+0x5c): first defined here /usr/bin/ld: output.o:(.bss+0x64): multiple definition ofrv_verbose'; hid.o:(.bss+0x64): first defined here
/usr/bin/ld: output.o:(.bss+0x68): multiple definition of rv_products'; hid.o:(.bss+0x68): first defined here /usr/bin/ld: output.o:(.bss+0x70): multiple definition ofrv_products_str'; hid.o:(.bss+0x70): first defined here
/usr/bin/ld: output.o:(.bss+0xa0): multiple definition of rv_fixed'; hid.o:(.bss+0xa0): first defined here /usr/bin/ld: output.o:(.bss+0x520): multiple definition ofrv_active_keys'; hid.o:(.bss+0x520): first defined here
/usr/bin/ld: output.o:(.bss+0x5b0): multiple definition of rv_released_keys'; hid.o:(.bss+0x5b0): first defined here /usr/bin/ld: output.o:(.bss+0x5c0): multiple definition ofrv_pressed_keys'; hid.o:(.bss+0x5c0): first defined here
/usr/bin/ld: output.o:(.bss+0x5d0): multiple definition of rv_repeated_keys'; hid.o:(.bss+0x5d0): first defined here /usr/bin/ld: evdev.o:(.bss+0x0): multiple definition ofrv_topo_model'; hid.o:(.bss+0x0): first defined here
/usr/bin/ld: evdev.o:(.bss+0x20): multiple definition of rv_colors'; hid.o:(.bss+0x20): first defined here /usr/bin/ld: evdev.o:(.bss+0x5c): multiple definition ofrv_color_off'; hid.o:(.bss+0x5c): first defined here
/usr/bin/ld: evdev.o:(.bss+0x64): multiple definition of rv_verbose'; hid.o:(.bss+0x64): first defined here /usr/bin/ld: evdev.o:(.bss+0x68): multiple definition ofrv_products'; hid.o:(.bss+0x68): first defined here
/usr/bin/ld: evdev.o:(.bss+0x70): multiple definition of rv_products_str'; hid.o:(.bss+0x70): first defined here /usr/bin/ld: evdev.o:(.bss+0xa0): multiple definition ofrv_fixed'; hid.o:(.bss+0xa0): first defined here
/usr/bin/ld: evdev.o:(.bss+0x520): multiple definition of rv_active_keys'; hid.o:(.bss+0x520): first defined here /usr/bin/ld: evdev.o:(.bss+0x5b0): multiple definition ofrv_released_keys'; hid.o:(.bss+0x5b0): first defined here
/usr/bin/ld: evdev.o:(.bss+0x5c0): multiple definition of rv_pressed_keys'; hid.o:(.bss+0x5c0): first defined here /usr/bin/ld: evdev.o:(.bss+0x5d0): multiple definition ofrv_repeated_keys'; hid.o:(.bss+0x5d0): first defined here
/usr/bin/ld: fx.o:(.bss+0x0): multiple definition of rv_topo_model'; hid.o:(.bss+0x0): first defined here /usr/bin/ld: fx.o:(.bss+0x20): multiple definition ofrv_colors'; hid.o:(.bss+0x20): first defined here
/usr/bin/ld: fx.o:(.bss+0x5c): multiple definition of rv_color_off'; hid.o:(.bss+0x5c): first defined here /usr/bin/ld: fx.o:(.bss+0x64): multiple definition ofrv_verbose'; hid.o:(.bss+0x64): first defined here
/usr/bin/ld: fx.o:(.bss+0x68): multiple definition of rv_products'; hid.o:(.bss+0x68): first defined here /usr/bin/ld: fx.o:(.bss+0x70): multiple definition ofrv_products_str'; hid.o:(.bss+0x70): first defined here
/usr/bin/ld: fx.o:(.bss+0xa0): multiple definition of rv_fixed'; hid.o:(.bss+0xa0): first defined here /usr/bin/ld: fx.o:(.bss+0x520): multiple definition ofrv_active_keys'; hid.o:(.bss+0x520): first defined here
/usr/bin/ld: fx.o:(.bss+0x5b0): multiple definition of rv_released_keys'; hid.o:(.bss+0x5b0): first defined here /usr/bin/ld: fx.o:(.bss+0x5c0): multiple definition ofrv_pressed_keys'; hid.o:(.bss+0x5c0): first defined here
/usr/bin/ld: fx.o:(.bss+0x5d0): multiple definition of rv_repeated_keys'; hid.o:(.bss+0x5d0): first defined here collect2: error: ld returned 1 exit status make: *** [Makefile:13: roccat-vulcan] Error 1
set all variables in roccat-vulcan.h to extern.
i.e. "int rv_topo_model;" -> "extern int rv_topo_model;"
Do this for all variables mentioned in the linkage error. It should compile afterwards.
All packages are installed. Make Log:
cc -I/usr/include/libevdev-1.0 -o roccat-vulcan hid.o roccat-vulcan.o output.o evdev.o fx.o -levdev -lhidapi-libusb -ludev /usr/bin/ld: roccat-vulcan.o:(.bss+0x0): multiple definition of
rv_topo_model'; hid.o:(.bss+0x0): first defined here /usr/bin/ld: roccat-vulcan.o:(.data+0x0): multiple definition ofrv_colors'; hid.o:(.bss+0x20): first defined here /usr/bin/ld: roccat-vulcan.o:(.bss+0x4): multiple definition of
rv_color_off'; hid.o:(.bss+0x5c): first defined here /usr/bin/ld: roccat-vulcan.o:(.bss+0xc): multiple definition ofrv_verbose'; hid.o:(.bss+0x64): first defined here /usr/bin/ld: roccat-vulcan.o:(.data+0x3c): multiple definition of
rv_products'; hid.o:(.bss+0x68): first defined here /usr/bin/ld: roccat-vulcan.o:(.data+0x50): multiple definition ofrv_products_str'; hid.o:(.bss+0x70): first defined here /usr/bin/ld: roccat-vulcan.o:(.bss+0x20): multiple definition of
rv_fixed'; hid.o:(.bss+0xa0): first defined here /usr/bin/ld: roccat-vulcan.o:(.bss+0x4a0): multiple definition ofrv_active_keys'; hid.o:(.bss+0x520): first defined here /usr/bin/ld: roccat-vulcan.o:(.bss+0x530): multiple definition of
rv_released_keys'; hid.o:(.bss+0x5b0): first defined here /usr/bin/ld: roccat-vulcan.o:(.bss+0x540): multiple definition ofrv_pressed_keys'; hid.o:(.bss+0x5c0): first defined here /usr/bin/ld: roccat-vulcan.o:(.bss+0x550): multiple definition of
rv_repeated_keys'; hid.o:(.bss+0x5d0): first defined here /usr/bin/ld: output.o:(.bss+0x0): multiple definition ofrv_topo_model'; hid.o:(.bss+0x0): first defined here /usr/bin/ld: output.o:(.bss+0x20): multiple definition of
rv_colors'; hid.o:(.bss+0x20): first defined here /usr/bin/ld: output.o:(.bss+0x5c): multiple definition ofrv_color_off'; hid.o:(.bss+0x5c): first defined here /usr/bin/ld: output.o:(.bss+0x64): multiple definition of
rv_verbose'; hid.o:(.bss+0x64): first defined here /usr/bin/ld: output.o:(.bss+0x68): multiple definition ofrv_products'; hid.o:(.bss+0x68): first defined here /usr/bin/ld: output.o:(.bss+0x70): multiple definition of
rv_products_str'; hid.o:(.bss+0x70): first defined here /usr/bin/ld: output.o:(.bss+0xa0): multiple definition ofrv_fixed'; hid.o:(.bss+0xa0): first defined here /usr/bin/ld: output.o:(.bss+0x520): multiple definition of
rv_active_keys'; hid.o:(.bss+0x520): first defined here /usr/bin/ld: output.o:(.bss+0x5b0): multiple definition ofrv_released_keys'; hid.o:(.bss+0x5b0): first defined here /usr/bin/ld: output.o:(.bss+0x5c0): multiple definition of
rv_pressed_keys'; hid.o:(.bss+0x5c0): first defined here /usr/bin/ld: output.o:(.bss+0x5d0): multiple definition ofrv_repeated_keys'; hid.o:(.bss+0x5d0): first defined here /usr/bin/ld: evdev.o:(.bss+0x0): multiple definition of
rv_topo_model'; hid.o:(.bss+0x0): first defined here /usr/bin/ld: evdev.o:(.bss+0x20): multiple definition ofrv_colors'; hid.o:(.bss+0x20): first defined here /usr/bin/ld: evdev.o:(.bss+0x5c): multiple definition of
rv_color_off'; hid.o:(.bss+0x5c): first defined here /usr/bin/ld: evdev.o:(.bss+0x64): multiple definition ofrv_verbose'; hid.o:(.bss+0x64): first defined here /usr/bin/ld: evdev.o:(.bss+0x68): multiple definition of
rv_products'; hid.o:(.bss+0x68): first defined here /usr/bin/ld: evdev.o:(.bss+0x70): multiple definition ofrv_products_str'; hid.o:(.bss+0x70): first defined here /usr/bin/ld: evdev.o:(.bss+0xa0): multiple definition of
rv_fixed'; hid.o:(.bss+0xa0): first defined here /usr/bin/ld: evdev.o:(.bss+0x520): multiple definition ofrv_active_keys'; hid.o:(.bss+0x520): first defined here /usr/bin/ld: evdev.o:(.bss+0x5b0): multiple definition of
rv_released_keys'; hid.o:(.bss+0x5b0): first defined here /usr/bin/ld: evdev.o:(.bss+0x5c0): multiple definition ofrv_pressed_keys'; hid.o:(.bss+0x5c0): first defined here /usr/bin/ld: evdev.o:(.bss+0x5d0): multiple definition of
rv_repeated_keys'; hid.o:(.bss+0x5d0): first defined here /usr/bin/ld: fx.o:(.bss+0x0): multiple definition ofrv_topo_model'; hid.o:(.bss+0x0): first defined here /usr/bin/ld: fx.o:(.bss+0x20): multiple definition of
rv_colors'; hid.o:(.bss+0x20): first defined here /usr/bin/ld: fx.o:(.bss+0x5c): multiple definition ofrv_color_off'; hid.o:(.bss+0x5c): first defined here /usr/bin/ld: fx.o:(.bss+0x64): multiple definition of
rv_verbose'; hid.o:(.bss+0x64): first defined here /usr/bin/ld: fx.o:(.bss+0x68): multiple definition ofrv_products'; hid.o:(.bss+0x68): first defined here /usr/bin/ld: fx.o:(.bss+0x70): multiple definition of
rv_products_str'; hid.o:(.bss+0x70): first defined here /usr/bin/ld: fx.o:(.bss+0xa0): multiple definition ofrv_fixed'; hid.o:(.bss+0xa0): first defined here /usr/bin/ld: fx.o:(.bss+0x520): multiple definition of
rv_active_keys'; hid.o:(.bss+0x520): first defined here /usr/bin/ld: fx.o:(.bss+0x5b0): multiple definition ofrv_released_keys'; hid.o:(.bss+0x5b0): first defined here /usr/bin/ld: fx.o:(.bss+0x5c0): multiple definition of
rv_pressed_keys'; hid.o:(.bss+0x5c0): first defined here /usr/bin/ld: fx.o:(.bss+0x5d0): multiple definition ofrv_repeated_keys'; hid.o:(.bss+0x5d0): first defined here collect2: error: ld returned 1 exit status make: *** [Makefile:13: roccat-vulcan] Error 1