Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 403341 - >=net-wireless/bluez-4.98 causes c++ apps to fail to compile against it.
Summary: >=net-wireless/bluez-4.98 causes c++ apps to fail to compile against it.
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal normal (vote)
Assignee: Pacho Ramos
URL:
Whiteboard:
Keywords: Inclusion
: 404581 (view as bug list)
Depends on:
Blocks: 401957
  Show dependency tree
 
Reported: 2012-02-13 04:58 UTC by Steev Klimaszewski (RETIRED)
Modified: 2012-03-03 17:56 UTC (History)
3 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Steev Klimaszewski (RETIRED) gentoo-dev 2012-02-13 04:58:33 UTC
As of bluez 4.98 applications that include /usr/include/bluetooth/bluetooth.h fail to build in c++.  error:  invalid conversion from 'void*' to 'bt_get_le64(void*)::<anonymous struct>*'

Other distros are using the following patch to enable them to build and work again.

https://launchpadlibrarian.net/91997861/fix_bluez.patch

Reproducible: Always
Comment 1 Pacho Ramos gentoo-dev 2012-02-13 09:47:41 UTC
Well, I was waiting for upstream to apply it, but I don't understand what they are waiting for :S
Comment 2 Guillaume ZITTA 2012-02-14 07:50:02 UTC
same problem with xbmc-9999, it compiles fine with this patch, thks
Comment 3 Pacho Ramos gentoo-dev 2012-02-14 08:44:39 UTC
+*bluez-4.98-r2 (14 Feb 2012)
+
+  14 Feb 2012; Pacho Ramos <pacho@gentoo.org> +bluez-4.98-r2.ebuild,
+  +files/bluez-4.98-fix-header.patch, +files/bluez-4.98-fix-socket.patch,
+  -bluez-4.98.ebuild:
+  Fix compilation problems against bluez, bug #403341 (by Steev Klimaszewski and
+  Marcel Unbehaun); fix needing to enable socket, bug #401065 (by Andreas
+  Eckstein and Ivan ivanov). Drop old.
+
Comment 4 SpanKY gentoo-dev 2012-02-26 23:45:34 UTC
*** Bug 404581 has been marked as a duplicate of this bug. ***
Comment 5 Markus Rathgeb 2012-03-03 15:54:11 UTC
Hello!

This bug is closed, but...

typeof is not part of the C++ standard, and isn't available when we use -std=c++0x.
g++ should support __typeof__ even with -std=c++0x.

So perhaps we could change the current solution to use __typeof__ instead of typeof to support also programs that are using c++0x standard.
Comment 6 Pacho Ramos gentoo-dev 2012-03-03 16:02:04 UTC
This needs to be reported to upstream and see if they find a common fix:
http://www.bluez.org/development/lists/
Comment 7 Markus Rathgeb 2012-03-03 16:49:20 UTC
I will do so!

The upstream bluetooth.h does not handle a separate functionality for C++.
So could the file "bluez-4.98-fix-header.patch" be changed to use __typeof__ if __cplusplus is defined?
Comment 8 Pacho Ramos gentoo-dev 2012-03-03 17:56:16 UTC
I would prefer to get it solved finally by upstream but, if you are currently having problems to build some app due that change, please attach a patch and will try to commit until then