Sorry to bump this old post, but it seems to have some useful information in it.
I'm currently trying to build the xboxdrv 8.5 package against centos 6.5 64bit, it has some problems, so I've dropped the xboxdrv version down to 8.2 as reading this thread shows it is known to work, and the known problem of the udev version is handled with the information provided in the thread and kindly built into a patch. The patch works and patches the 4 files referencing libudev.h which matches the threads information perfeclty, however, it still fails with the following relevant output /root/rpmbuild/SOURCES/xboxdrv-linux-0.8.2/src/udev_subsystem.cpp:162: undefined reference to `udev_device_get_devpath' /root/rpmbuild/SOURCES/xboxdrv-linux-0.8.2/src/udev_subsystem.cpp:164: undefined reference to `udev_device_get_action' /root/rpmbuild/SOURCES/xboxdrv-linux-0.8.2/src/udev_subsystem.cpp:168: undefined reference to `udev_device_get_subsystem' /root/rpmbuild/SOURCES/xboxdrv-linux-0.8.2/src/udev_subsystem.cpp:171: undefined reference to `udev_device_get_devtype' /root/rpmbuild/SOURCES/xboxdrv-linux-0.8.2/src/udev_subsystem.cpp:174: undefined reference to `udev_device_get_syspath' /root/rpmbuild/SOURCES/xboxdrv-linux-0.8.2/src/udev_subsystem.cpp:177: undefined reference to `udev_device_get_sysname' /root/rpmbuild/SOURCES/xboxdrv-linux-0.8.2/src/udev_subsystem.cpp:180: undefined reference to `udev_device_get_sysnum' /root/rpmbuild/SOURCES/xboxdrv-linux-0.8.2/src/udev_subsystem.cpp:183: undefined reference to `udev_device_get_devnode' /root/rpmbuild/SOURCES/xboxdrv-linux-0.8.2/src/udev_subsystem.cpp:186: undefined reference to `udev_device_get_driver' /root/rpmbuild/SOURCES/xboxdrv-linux-0.8.2/src/udev_subsystem.cpp:189: undefined reference to `udev_device_get_action' /root/rpmbuild/SOURCES/xboxdrv-linux-0.8.2/src/udev_subsystem.cpp:190: undefined reference to `udev_device_get_action' /root/rpmbuild/SOURCES/xboxdrv-linux-0.8.2/src/udev_subsystem.cpp:187: undefined reference to `udev_device_get_driver' /root/rpmbuild/SOURCES/xboxdrv-linux-0.8.2/src/udev_subsystem.cpp:184: undefined reference to `udev_device_get_devnode' /root/rpmbuild/SOURCES/xboxdrv-linux-0.8.2/src/udev_subsystem.cpp:181: undefined reference to `udev_device_get_sysnum' /root/rpmbuild/SOURCES/xboxdrv-linux-0.8.2/src/udev_subsystem.cpp:178: undefined reference to `udev_device_get_sysname' /root/rpmbuild/SOURCES/xboxdrv-linux-0.8.2/src/udev_subsystem.cpp:175: undefined reference to `udev_device_get_syspath' /root/rpmbuild/SOURCES/xboxdrv-linux-0.8.2/src/udev_subsystem.cpp:172: undefined reference to `udev_device_get_devtype' /root/rpmbuild/SOURCES/xboxdrv-linux-0.8.2/src/udev_subsystem.cpp:169: undefined reference to `udev_device_get_subsystem' /root/rpmbuild/SOURCES/xboxdrv-linux-0.8.2/src/udev_subsystem.cpp:165: undefined reference to `udev_device_get_action' libxboxdrv.a(udev_subsystem.o): In function `UdevSubsystem::on_udev_data(_GIOChannel*, GIOCondition)': /root/rpmbuild/SOURCES/xboxdrv-linux-0.8.2/src/udev_subsystem.cpp:129: undefined reference to `udev_monitor_receive_device' /root/rpmbuild/SOURCES/xboxdrv-linux-0.8.2/src/udev_subsystem.cpp:139: undefined reference to `udev_device_get_action' /root/rpmbuild/SOURCES/xboxdrv-linux-0.8.2/src/udev_subsystem.cpp:151: undefined reference to `udev_device_unref' libxboxdrv.a(controller_match_rule.o): In function `ControllerMatchRuleProperty::match(udev_device*) const': /root/rpmbuild/SOURCES/xboxdrv-linux-0.8.2/src/controller_match_rule.cpp:41: undefined reference to `udev_device_get_property_value' collect2: ld returned 1 exit status scons: *** [xboxdrv] Error 1 scons: building terminated because of errors. (ignore the fact that I'm building as root - this is an isolated testbox that I'm using to walk through the xboxdrv versions and it's possibly compatability against Centos/RHEL 6. This issue appears to be the same as detailed in the original thread, but the patch/changes suggested don't resolve the problem. Any thought and suggestions would be most welcome as I'm hopefull of getting at least xboxdrv 8.4 - if not 8.5 build for Centos 6. thanks, Matt On Wednesday, 17 August 2011 01:10:11 UTC+1, German Andres Pulido wrote: > > Hi! > > I got xboxdrv 0.8.2 and tried to compile it on my CentOS 6.0 32 bits > machine. It didn't work, here's the error (last lines): > > (lots of compiling happens before, all of it goes OK, then it creates > the archive using ar:) > ar rc libxboxdrv.a src/arg_parser.o src/axis_event.o src/axis_filter.o > src/axis_map.o src/button_event.o src/button_filter.o src/button_map.o > src/chatpad.o src/command_line_options.o src/controller.o src/ > controller_config.o src/controller_factory.o src/ > controller_match_rule.o src/controller_options.o src/controller_slot.o > src/controller_slot_config.o src/controller_slot_options.o src/ > controller_thread.o src/dbus_subsystem.o src/dummy_message_processor.o > src/evdev_absmap.o src/evdev_controller.o src/evdev_helper.o src/ > firestorm_dual_controller.o src/force_feedback_handler.o src/ > generic_usb_controller.o src/headset.o src/helper.o src/ini_parser.o > src/ini_schema.o src/ini_schema_builder.o src/linux_uinput.o src/log.o > src/modifier.o src/options.o src/path.o src/ > playstation3_usb_controller.o src/pretty_printer.o src/ > saitek_p2500_controller.o src/select.o src/udev_subsystem.o src/ > ui_abs_event_collector.o src/ui_abs_event_emitter.o src/ui_event.o src/ > ui_event_collector.o src/ui_event_emitter.o src/ui_event_sequence.o > src/ui_key_event_collector.o src/ui_key_event_emitter.o src/ > ui_rel_event_collector.o src/ui_rel_event_emitter.o src/uinput.o src/ > uinput_config.o src/uinput_message_processor.o src/uinput_options.o > src/usb_controller.o src/usb_gsource.o src/usb_helper.o src/ > usb_interface.o src/usb_subsystem.o src/word_wrap.o src/ > xbox360_controller.o src/xbox360_wireless_controller.o src/ > xbox_controller.o src/xboxdrv.o src/xboxdrv_daemon.o src/ > xboxdrv_g_controller.o src/xboxdrv_g_daemon.o src/xboxdrv_main.o src/ > xboxmsg.o src/xpad_device.o src/axisfilter/calibration_axis_filter.o > src/axisfilter/const_axis_filter.o src/axisfilter/ > deadzone_axis_filter.o src/axisfilter/invert_axis_filter.o src/ > axisfilter/log_axis_filter.o src/axisfilter/relative_axis_filter.o src/ > axisfilter/response_curve_axis_filter.o src/axisfilter/ > sensitivity_axis_filter.o src/buttonfilter/autofire_button_filter.o > src/buttonfilter/click_button_filter.o src/buttonfilter/ > const_button_filter.o src/buttonfilter/delay_button_filter.o src/ > buttonfilter/invert_button_filter.o src/buttonfilter/ > log_button_filter.o src/buttonfilter/toggle_button_filter.o src/ > axisevent/abs_axis_event_handler.o src/axisevent/ > key_axis_event_handler.o src/axisevent/rel_axis_event_handler.o src/ > axisevent/rel_repeat_axis_event_handler.o src/buttonevent/ > abs_button_event_handler.o src/buttonevent/ > cycle_key_button_event_handler.o src/buttonevent/cycle_key_sequence.o > src/buttonevent/exec_button_event_handler.o src/buttonevent/ > key_button_event_handler.o src/buttonevent/ > macro_button_event_handler.o src/buttonevent/ > rel_button_event_handler.o src/modifier/axismap_modifier.o src/ > modifier/buttonmap_modifier.o src/modifier/dpad_restrictor_modifier.o > src/modifier/dpad_rotation_modifier.o src/modifier/ > four_way_restrictor_modifier.o src/modifier/rotate_axis_modifier.o src/ > modifier/square_axis_modifier.o src/modifier/statistic_modifier.o > ranlib libxboxdrv.a > g++ -o xboxdrv -pthread src/main/main.o -L/lib libxboxdrv.a -ldbus- > glib-1 -ldbus-1 -lpthread -lgobject-2.0 -lgthread-2.0 -lrt -lglib-2.0 - > lusb-1.0 -ludev -lX11 > libxboxdrv.a(xboxdrv_daemon.o): In function `get_usb_id': > /home/gpulido/tarballs/xboxdrv-linux-0.8.2/src/xboxdrv_daemon.cpp:49: > undefined reference to `udev_device_get_property_value(udev_device*, > char const*)' > /home/gpulido/tarballs/xboxdrv-linux-0.8.2/src/xboxdrv_daemon.cpp:59: > undefined reference to `udev_device_get_property_value(udev_device*, > char const*)' > libxboxdrv.a(xboxdrv_daemon.o): In function `get_usb_path': > /home/gpulido/tarballs/xboxdrv-linux-0.8.2/src/xboxdrv_daemon.cpp:75: > undefined reference to `udev_device_get_property_value(udev_device*, > char const*)' > /home/gpulido/tarballs/xboxdrv-linux-0.8.2/src/xboxdrv_daemon.cpp:85: > undefined reference to `udev_device_get_property_value(udev_device*, > char const*)' > libxboxdrv.a(controller.o): In function `~Controller': > /home/gpulido/tarballs/xboxdrv-linux-0.8.2/src/controller.cpp:41: > undefined reference to `udev_device_unref(udev_device*)' > libxboxdrv.a(controller.o): In function > `Controller::set_udev_device(udev_device*)': > /home/gpulido/tarballs/xboxdrv-linux-0.8.2/src/controller.cpp:81: > undefined reference to `udev_device_ref(udev_device*)' > libxboxdrv.a(udev_subsystem.o): In function `~UdevSubsystem': > /home/gpulido/tarballs/xboxdrv-linux-0.8.2/src/udev_subsystem.cpp:41: > undefined reference to `udev_monitor_unref(udev_monitor*)' > /home/gpulido/tarballs/xboxdrv-linux-0.8.2/src/udev_subsystem.cpp:43: > undefined reference to `udev_unref(udev*)' > libxboxdrv.a(udev_subsystem.o): In function > `UdevSubsystem::enumerate_udev_devices()': > /home/gpulido/tarballs/xboxdrv-linux-0.8.2/src/udev_subsystem.cpp:76: > undefined reference to `udev_enumerate_new(udev*)' > /home/gpulido/tarballs/xboxdrv-linux-0.8.2/src/udev_subsystem.cpp:79: > undefined reference to > `udev_enumerate_add_match_subsystem(udev_enumerate*, char const*)' > /home/gpulido/tarballs/xboxdrv-linux-0.8.2/src/udev_subsystem.cpp:81: > undefined reference to `udev_enumerate_scan_devices(udev_enumerate*)' > /home/gpulido/tarballs/xboxdrv-linux-0.8.2/src/udev_subsystem.cpp:86: > undefined reference to > `udev_enumerate_get_list_entry(udev_enumerate*)' > /home/gpulido/tarballs/xboxdrv-linux-0.8.2/src/udev_subsystem.cpp:100: > undefined reference to `udev_device_unref(udev_device*)' > /home/gpulido/tarballs/xboxdrv-linux-0.8.2/src/udev_subsystem.cpp:87: > undefined reference to `udev_list_entry_get_next(udev_list_entry*)' > /home/gpulido/tarballs/xboxdrv-linux-0.8.2/src/udev_subsystem.cpp:90: > undefined reference to `udev_list_entry_get_name(udev_list_entry*)' > /home/gpulido/tarballs/xboxdrv-linux-0.8.2/src/udev_subsystem.cpp:92: > undefined reference to `udev_device_new_from_syspath(udev*, char > const*)' > /home/gpulido/tarballs/xboxdrv-linux-0.8.2/src/udev_subsystem.cpp:95: > undefined reference to `udev_device_get_devtype(udev_device*)' > /home/gpulido/tarballs/xboxdrv-linux-0.8.2/src/udev_subsystem.cpp:102: > undefined reference to `udev_enumerate_unref(udev_enumerate*)' > libxboxdrv.a(udev_subsystem.o): In function > `UdevSubsystem::set_device_callback(boost::function<void () > (udev_device*)> const&)': > /home/gpulido/tarballs/xboxdrv-linux-0.8.2/src/udev_subsystem.cpp:55: > undefined reference to `udev_monitor_new_from_netlink(udev*, char > const*)' > /home/gpulido/tarballs/xboxdrv-linux-0.8.2/src/udev_subsystem.cpp:56: > undefined reference to > `udev_monitor_filter_add_match_subsystem_devtype(udev_monitor*, char > const*, char const*)' > /home/gpulido/tarballs/xboxdrv-linux-0.8.2/src/udev_subsystem.cpp:57: > undefined reference to `udev_monitor_enable_receiving(udev_monitor*)' > /home/gpulido/tarballs/xboxdrv-linux-0.8.2/src/udev_subsystem.cpp:63: > undefined reference to `udev_monitor_get_fd(udev_monitor*)' > libxboxdrv.a(udev_subsystem.o): In function `UdevSubsystem': > /home/gpulido/tarballs/xboxdrv-linux-0.8.2/src/udev_subsystem.cpp:30: > undefined reference to `udev_new()' > libxboxdrv.a(udev_subsystem.o): In function > `UdevSubsystem::print_info(udev_device*)': > /home/gpulido/tarballs/xboxdrv-linux-0.8.2/src/udev_subsystem.cpp:162: > undefined reference to `udev_device_get_devpath(udev_device*)' > /home/gpulido/tarballs/xboxdrv-linux-0.8.2/src/udev_subsystem.cpp:164: > undefined reference to `udev_device_get_action(udev_device*)' > /home/gpulido/tarballs/xboxdrv-linux-0.8.2/src/udev_subsystem.cpp:168: > undefined reference to `udev_device_get_subsystem(udev_device*)' > /home/gpulido/tarballs/xboxdrv-linux-0.8.2/src/udev_subsystem.cpp:171: > undefined reference to `udev_device_get_devtype(udev_device*)' > /home/gpulido/tarballs/xboxdrv-linux-0.8.2/src/udev_subsystem.cpp:174: > undefined reference to `udev_device_get_syspath(udev_device*)' > /home/gpulido/tarballs/xboxdrv-linux-0.8.2/src/udev_subsystem.cpp:177: > undefined reference to `udev_device_get_sysname(udev_device*)' > /home/gpulido/tarballs/xboxdrv-linux-0.8.2/src/udev_subsystem.cpp:180: > undefined reference to `udev_device_get_sysnum(udev_device*)' > /home/gpulido/tarballs/xboxdrv-linux-0.8.2/src/udev_subsystem.cpp:183: > undefined reference to `udev_device_get_devnode(udev_device*)' > /home/gpulido/tarballs/xboxdrv-linux-0.8.2/src/udev_subsystem.cpp:186: > undefined reference to `udev_device_get_driver(udev_device*)' > /home/gpulido/tarballs/xboxdrv-linux-0.8.2/src/udev_subsystem.cpp:189: > undefined reference to `udev_device_get_action(udev_device*)' > /home/gpulido/tarballs/xboxdrv-linux-0.8.2/src/udev_subsystem.cpp:190: > undefined reference to `udev_device_get_action(udev_device*)' > /home/gpulido/tarballs/xboxdrv-linux-0.8.2/src/udev_subsystem.cpp:187: > undefined reference to `udev_device_get_driver(udev_device*)' > /home/gpulido/tarballs/xboxdrv-linux-0.8.2/src/udev_subsystem.cpp:184: > undefined reference to `udev_device_get_devnode(udev_device*)' > /home/gpulido/tarballs/xboxdrv-linux-0.8.2/src/udev_subsystem.cpp:181: > undefined reference to `udev_device_get_sysnum(udev_device*)' > /home/gpulido/tarballs/xboxdrv-linux-0.8.2/src/udev_subsystem.cpp:178: > undefined reference to `udev_device_get_sysname(udev_device*)' > /home/gpulido/tarballs/xboxdrv-linux-0.8.2/src/udev_subsystem.cpp:175: > undefined reference to `udev_device_get_syspath(udev_device*)' > /home/gpulido/tarballs/xboxdrv-linux-0.8.2/src/udev_subsystem.cpp:172: > undefined reference to `udev_device_get_devtype(udev_device*)' > /home/gpulido/tarballs/xboxdrv-linux-0.8.2/src/udev_subsystem.cpp:169: > undefined reference to `udev_device_get_subsystem(udev_device*)' > /home/gpulido/tarballs/xboxdrv-linux-0.8.2/src/udev_subsystem.cpp:165: > undefined reference to `udev_device_get_action(udev_device*)' > libxboxdrv.a(udev_subsystem.o): In function > `UdevSubsystem::on_udev_data(_GIOChannel*, GIOCondition)': > /home/gpulido/tarballs/xboxdrv-linux-0.8.2/src/udev_subsystem.cpp:129: > undefined reference to `udev_monitor_receive_device(udev_monitor*)' > /home/gpulido/tarballs/xboxdrv-linux-0.8.2/src/udev_subsystem.cpp:139: > undefined reference to `udev_device_get_action(udev_device*)' > /home/gpulido/tarballs/xboxdrv-linux-0.8.2/src/udev_subsystem.cpp:151: > undefined reference to `udev_device_unref(udev_device*)' > libxboxdrv.a(controller_match_rule.o): In function > `ControllerMatchRuleProperty::match(udev_device*) const': > controller_match_rule.cpp: > (.text._ZNK27ControllerMatchRuleProperty5matchEP11udev_device[ControllerMatchRuleProperty::match(udev_device*) > > > const]+0x1d): undefined reference to > `udev_device_get_property_value(udev_device*, char const*)' > collect2: ld returned 1 exit status > scons: *** [xboxdrv] Error 1 > scons: building terminated because of errors. > gpulido@megatron:~/tarballs/xboxdrv-linux-0.8.2$ > > > Any help is greatly appreciated :) > > Regards, > > Germán -- You received this message because you are subscribed to the Google Groups "xboxdrv" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To post to this group, send email to [email protected]. Visit this group at http://groups.google.com/group/xboxdrv. For more options, visit https://groups.google.com/d/optout.
