Emulator Issues #5167
closedCannot build with bluez 4.98
0%
Description
From build log around 75%:
/usr/include/bluetooth/bluetooth.h:131:9: error: invalid conversion from
‘void*’ to ‘bt_get_le64(void*)::<anonymous struct>’ [-fpermissive]
/usr/include/bluetooth/bluetooth.h: In function ‘uint64_t bt_get_be64(void)’:
/usr/include/bluetooth/bluetooth.h:136:9: error: invalid conversion from
‘void*’ to ‘bt_get_be64(void*)::<anonymous struct>’ [-fpermissive]
/usr/include/bluetooth/bluetooth.h: In function ‘uint32_t bt_get_le32(void)’:
/usr/include/bluetooth/bluetooth.h:141:9: error: invalid conversion from
‘void*’ to ‘bt_get_le32(void*)::<anonymous struct>’ [-fpermissive]
/usr/include/bluetooth/bluetooth.h: In function ‘uint32_t bt_get_be32(void)’:
/usr/include/bluetooth/bluetooth.h:146:9: error: invalid conversion from
‘void*’ to ‘bt_get_be32(void*)::<anonymous struct>’ [-fpermissive]
/usr/include/bluetooth/bluetooth.h: In function ‘uint16_t bt_get_le16(void)’:
/usr/include/bluetooth/bluetooth.h:151:9: error: invalid conversion from
‘void*’ to ‘bt_get_le16(void*)::<anonymous struct>’ [-fpermissive]
/usr/include/bluetooth/bluetooth.h: In function ‘uint16_t bt_get_be16(void)’:
/usr/include/bluetooth/bluetooth.h:156:9: error: invalid conversion from
‘void*’ to ‘bt_get_be16(void*)::<anonymous struct>*’ [-fpermissive]
Works fine with bluez 4.96.
Inclusion of a file and linking with bluez works fine (GCC 4.6.2).
GCC complains about these file set:
http://code.google.com/p/dolphin-emu/source/browse/Source/Core/Core/Src/HW/WiimoteReal/WiimoteReal.cpp
http://code.google.com/p/dolphin-emu/source/browse/Source/Core/Core/Src/HW/WiimoteReal/WiimoteReal.h
http://code.google.com/p/dolphin-emu/source/browse/Source/Core/Core/Src/HW/WiimoteReal/WiimoteRealBase.h (where bluetooth.h is included)
But I imagine it's actually to do with lines like 55 in http://code.google.com/p/dolphin-emu/source/browse/Source/Core/Core/Src/HW/WiimoteReal/WiimoteReal.cpp :
bdaddr = (bdaddr_t){{0, 0, 0, 0, 0, 0}};
On Gentoo, we are quickly shifting to bluez 4.98+. 4.96 may no longer be available soon because it conflicts with hid2hci no longer using udev but now using bluez.
Updated by audvare almost 13 years ago
Actually, this is an issue with bluez and C++ not allowing implicit conversion from void *.
http://permalink.gmane.org/gmane.linux.bluez.kernel/20275
After using that patch, I was able to compile fine.
Updated by delroth almost 13 years ago
- Status changed from New to Invalid
Yes, this is a bluez bug and we can't do anything about it.