Page 1 of 1

MiracleCast over Mageia 5

PostPosted: Sep 5th, '15, 14:32
by telliev
Is there any way to run MiracleCast over Mageia? Thanks!

Re: MiracleCast over Mageia 5

PostPosted: Sep 5th, '15, 14:44
by doktor5000
Maybe compile and run it, like on any other linux distro?

Re: MiracleCast over Mageia 5

PostPosted: Sep 5th, '15, 14:49
by telliev
Ok, can it be included in the repos as a package? MiraCast is getting more and more famous.. ;)

Re: MiracleCast over Mageia 5

PostPosted: Sep 5th, '15, 16:41
by telliev
Ok, i'm trying to compile it but i got in trouble. Could you please help me with this?

Code: Select all
[telliev@localhost 17:34:16 build]$ make
[  4%] Building C object src/shared/CMakeFiles/miracle-shared.dir/rtsp.c.o
/home/telliev/miraclecast/src/shared/rtsp.c:31:30: fatal error: systemd/sd-event.h: No such file or directory
 #include <systemd/sd-event.h>
                              ^
compilation terminated.


systemd-devel package is installed.

Re: MiracleCast over Mageia 5

PostPosted: Sep 5th, '15, 20:15
by doktor5000
If you'd like it to be included in a package, then please report that as a package request, after searching if it hasn't been reported yet already: https://wiki.mageia.org/en/How_to_repor ... ge_request

That file is not included in any Mageia package:

Code: Select all
[doktor5000@Mageia5]─[20:11:17]─[~] urpmf sd-event.h
[doktor5000@Mageia5]─[20:11:45]─[~]


Seems it's only contained in newer systemd versions.

Re: MiracleCast over Mageia 5

PostPosted: Sep 5th, '15, 21:46
by telliev
So what shall we do now? Maby its time for an update of systemd, or we simply wait for the next version of the distro? ;)

Re: MiracleCast over Mageia 5

PostPosted: Sep 6th, '15, 01:37
by jiml8
This is where it is helpful to be able to program C in order to proceed.

What you do now is a google search for that file. If it is found as part of a package, you install that package on your Mageia system, though if the package is not supported by mageia you will have to install it manually (probably by compiling it). If the file exists independently of any package (unlikely, but possible), you just install the file in /usr/include.

You then try again to compile the package you are trying to compile. If you encounter other unsatisfied dependencies, you repeat the search/install procedure until you have everything.

Then your package will compile and install...and probably will run.

Re: MiracleCast over Mageia 5

PostPosted: Sep 6th, '15, 10:27
by telliev
Hello! Thanks for the info. I found the needed dependences: sd-event.h, sd-bus.h, sd-bus-protocol.h in 'systemd-225.tar.gz' and i copied them into '/usr/include/systemd' but i got some errors now which i cannot decode when trying to compile:

Code: Select all
[telliev@localhost 11:21:32 build]$ make
[ 24%] Built target miracle-shared
[ 28%] Building C object src/CMakeFiles/miracled.dir/miracled.c.o
Linking C executable miracled
[ 28%] Built target miracled
Scanning dependencies of target miracle-wifid
[ 32%] Building C object src/wifi/CMakeFiles/miracle-wifid.dir/wifid.c.o
[ 36%] Building C object src/wifi/CMakeFiles/miracle-wifid.dir/wifid-dbus.c.o
[ 40%] Building C object src/wifi/CMakeFiles/miracle-wifid.dir/wifid-link.c.o
[ 44%] Building C object src/wifi/CMakeFiles/miracle-wifid.dir/wifid-peer.c.o
[ 48%] Building C object src/wifi/CMakeFiles/miracle-wifid.dir/wifid-supplicant.c.o
Linking C executable miracle-wifid
CMakeFiles/miracle-wifid.dir/wifid.c.o: In function `cleanup_sd_bus_message':
wifid.c:(.text+0x1bd): undefined reference to `sd_bus_message_unref'
CMakeFiles/miracle-wifid.dir/wifid.c.o: In function `bus_error_message':
wifid.c:(.text+0x25d): undefined reference to `sd_bus_error_has_name'
CMakeFiles/miracle-wifid.dir/wifid.c.o: In function `manager_signal_fn':
wifid.c:(.text+0x6d8): undefined reference to `sd_event_exit'
CMakeFiles/miracle-wifid.dir/wifid.c.o: In function `manager_free':
wifid.c:(.text+0x79c): undefined reference to `sd_event_source_unref'
wifid.c:(.text+0x7e2): undefined reference to `sd_event_source_unref'
wifid.c:(.text+0x80a): undefined reference to `sd_bus_unref'
wifid.c:(.text+0x819): undefined reference to `sd_event_unref'
CMakeFiles/miracle-wifid.dir/wifid.c.o: In function `manager_new':
wifid.c:(.text+0x8bd): undefined reference to `sd_event_default'
wifid.c:(.text+0x929): undefined reference to `sd_event_set_watchdog'
wifid.c:(.text+0x991): undefined reference to `sd_bus_default_system'
wifid.c:(.text+0x9f9): undefined reference to `sd_bus_attach_event'
wifid.c:(.text+0xadc): undefined reference to `sd_event_add_signal'
wifid.c:(.text+0xb50): undefined reference to `sd_event_source_set_priority'
wifid.c:(.text+0xd58): undefined reference to `sd_event_add_io'
CMakeFiles/miracle-wifid.dir/wifid.c.o: In function `manager_read_name':
wifid.c:(.text+0xe65): undefined reference to `sd_bus_call_method'
wifid.c:(.text+0xe8d): undefined reference to `sd_bus_message_enter_container'
wifid.c:(.text+0xeb5): undefined reference to `sd_bus_message_read'
wifid.c:(.text+0x1031): undefined reference to `sd_bus_error_free'
CMakeFiles/miracle-wifid.dir/wifid.c.o: In function `manager_run':
wifid.c:(.text+0x127c): undefined reference to `sd_event_loop'
CMakeFiles/miracle-wifid.dir/wifid-dbus.c.o: In function `peer_dbus_get_path':
wifid-dbus.c:(.text+0x77): undefined reference to `sd_bus_path_encode'
CMakeFiles/miracle-wifid.dir/wifid-dbus.c.o: In function `link_dbus_get_path':
wifid-dbus.c:(.text+0x125): undefined reference to `sd_bus_path_encode'
CMakeFiles/miracle-wifid.dir/wifid-dbus.c.o: In function `peer_dbus_connect':
wifid-dbus.c:(.text+0x1bd): undefined reference to `sd_bus_message_read'
wifid-dbus.c:(.text+0x241): undefined reference to `sd_bus_reply_method_return'
CMakeFiles/miracle-wifid.dir/wifid-dbus.c.o: In function `peer_dbus_disconnect':
wifid-dbus.c:(.text+0x281): undefined reference to `sd_bus_reply_method_return'
CMakeFiles/miracle-wifid.dir/wifid-dbus.c.o: In function `peer_dbus_get_link':
wifid-dbus.c:(.text+0x2ec): undefined reference to `sd_bus_message_append_basic'
CMakeFiles/miracle-wifid.dir/wifid-dbus.c.o: In function `peer_dbus_get_p2p_mac':
wifid-dbus.c:(.text+0x355): undefined reference to `sd_bus_message_append_basic'
CMakeFiles/miracle-wifid.dir/wifid-dbus.c.o: In function `peer_dbus_get_friendly_name':
wifid-dbus.c:(.text+0x3c6): undefined reference to `sd_bus_message_append_basic'
CMakeFiles/miracle-wifid.dir/wifid-dbus.c.o: In function `peer_dbus_get_connected':
wifid-dbus.c:(.text+0x429): undefined reference to `sd_bus_message_append'
CMakeFiles/miracle-wifid.dir/wifid-dbus.c.o: In function `peer_dbus_get_interface':
wifid-dbus.c:(.text+0x48b): undefined reference to `sd_bus_message_append'
CMakeFiles/miracle-wifid.dir/wifid-dbus.c.o: In function `peer_dbus_get_local_address':
wifid-dbus.c:(.text+0x4ed): undefined reference to `sd_bus_message_append'
CMakeFiles/miracle-wifid.dir/wifid-dbus.c.o: In function `peer_dbus_get_remote_address':
wifid-dbus.c:(.text+0x54f): undefined reference to `sd_bus_message_append'
CMakeFiles/miracle-wifid.dir/wifid-dbus.c.o: In function `peer_dbus_get_wfd_subelements':
wifid-dbus.c:(.text+0x5b1): undefined reference to `sd_bus_message_append'
CMakeFiles/miracle-wifid.dir/wifid-dbus.c.o: In function `peer_dbus_find':
wifid-dbus.c:(.text+0x60c): undefined reference to `sd_bus_path_decode'
CMakeFiles/miracle-wifid.dir/wifid-dbus.c.o: In function `peer_dbus_properties_changed':
wifid-dbus.c:(.text+0xa89): undefined reference to `sd_bus_emit_properties_changed_strv'
CMakeFiles/miracle-wifid.dir/wifid-dbus.c.o: In function `peer_dbus_provision_discovery':
wifid-dbus.c:(.text+0xba0): undefined reference to `sd_bus_emit_signal'
CMakeFiles/miracle-wifid.dir/wifid-dbus.c.o: In function `peer_dbus_go_neg_request':
wifid-dbus.c:(.text+0xcac): undefined reference to `sd_bus_emit_signal'
CMakeFiles/miracle-wifid.dir/wifid-dbus.c.o: In function `peer_dbus_formation_failure':
wifid-dbus.c:(.text+0xd8d): undefined reference to `sd_bus_emit_signal'
CMakeFiles/miracle-wifid.dir/wifid-dbus.c.o: In function `peer_dbus_added':
wifid-dbus.c:(.text+0xe56): undefined reference to `sd_bus_emit_interfaces_added'
CMakeFiles/miracle-wifid.dir/wifid-dbus.c.o: In function `peer_dbus_removed':
wifid-dbus.c:(.text+0xf1f): undefined reference to `sd_bus_emit_interfaces_removed'
CMakeFiles/miracle-wifid.dir/wifid-dbus.c.o: In function `link_dbus_get_interface_index':
wifid-dbus.c:(.text+0xfcb): undefined reference to `sd_bus_message_append_basic'
CMakeFiles/miracle-wifid.dir/wifid-dbus.c.o: In function `link_dbus_get_interface_name':
wifid-dbus.c:(.text+0x1021): undefined reference to `sd_bus_message_append_basic'
CMakeFiles/miracle-wifid.dir/wifid-dbus.c.o: In function `link_dbus_get_friendly_name':
wifid-dbus.c:(.text+0x1083): undefined reference to `sd_bus_message_append'
CMakeFiles/miracle-wifid.dir/wifid-dbus.c.o: In function `link_dbus_set_friendly_name':
wifid-dbus.c:(.text+0x10da): undefined reference to `sd_bus_message_read'
CMakeFiles/miracle-wifid.dir/wifid-dbus.c.o: In function `link_dbus_get_p2p_scanning':
wifid-dbus.c:(.text+0x1165): undefined reference to `sd_bus_message_append'
CMakeFiles/miracle-wifid.dir/wifid-dbus.c.o: In function `link_dbus_set_p2p_scanning':
wifid-dbus.c:(.text+0x11bc): undefined reference to `sd_bus_message_read'
CMakeFiles/miracle-wifid.dir/wifid-dbus.c.o: In function `link_dbus_get_wfd_subelements':
wifid-dbus.c:(.text+0x1232): undefined reference to `sd_bus_message_append'
CMakeFiles/miracle-wifid.dir/wifid-dbus.c.o: In function `link_dbus_set_wfd_subelements':
wifid-dbus.c:(.text+0x1289): undefined reference to `sd_bus_message_read'
CMakeFiles/miracle-wifid.dir/wifid-dbus.c.o: In function `link_dbus_find':
wifid-dbus.c:(.text+0x12f2): undefined reference to `sd_bus_path_decode'
CMakeFiles/miracle-wifid.dir/wifid-dbus.c.o: In function `link_dbus_properties_changed':
wifid-dbus.c:(.text+0x1618): undefined reference to `sd_bus_emit_properties_changed_strv'
CMakeFiles/miracle-wifid.dir/wifid-dbus.c.o: In function `link_dbus_added':
wifid-dbus.c:(.text+0x16ed): undefined reference to `sd_bus_emit_interfaces_added'
CMakeFiles/miracle-wifid.dir/wifid-dbus.c.o: In function `link_dbus_removed':
wifid-dbus.c:(.text+0x17b3): undefined reference to `sd_bus_emit_interfaces_removed'
CMakeFiles/miracle-wifid.dir/wifid-dbus.c.o: In function `manager_dbus_connect':
wifid-dbus.c:(.text+0x1ce8): undefined reference to `sd_bus_add_object_vtable'
wifid-dbus.c:(.text+0x1d1c): undefined reference to `sd_bus_add_node_enumerator'
wifid-dbus.c:(.text+0x1d5c): undefined reference to `sd_bus_add_fallback_vtable'
wifid-dbus.c:(.text+0x1da0): undefined reference to `sd_bus_add_fallback_vtable'
wifid-dbus.c:(.text+0x1dcc): undefined reference to `sd_bus_add_object_manager'
wifid-dbus.c:(.text+0x1df1): undefined reference to `sd_bus_request_name'
CMakeFiles/miracle-wifid.dir/wifid-dbus.c.o: In function `manager_dbus_disconnect':
wifid-dbus.c:(.text+0x1ec6): undefined reference to `sd_bus_release_name'
CMakeFiles/miracle-wifid.dir/wifid-supplicant.c.o: In function `supplicant_group_free':
wifid-supplicant.c:(.text+0x613): undefined reference to `sd_event_source_unref'
wifid-supplicant.c:(.text+0x6d4): undefined reference to `sd_event_source_unref'
CMakeFiles/miracle-wifid.dir/wifid-supplicant.c.o: In function `supplicant_group_new':
wifid-supplicant.c:(.text+0x165e): undefined reference to `sd_event_add_io'
wifid-supplicant.c:(.text+0x16e7): undefined reference to `sd_event_add_child'
CMakeFiles/miracle-wifid.dir/wifid-supplicant.c.o: In function `supplicant_failed':
wifid-supplicant.c:(.text+0x60b0): undefined reference to `sd_event_source_set_time'
wifid-supplicant.c:(.text+0x60c5): undefined reference to `sd_event_source_set_enabled'
wifid-supplicant.c:(.text+0x617e): undefined reference to `sd_event_source_unref'
CMakeFiles/miracle-wifid.dir/wifid-supplicant.c.o: In function `supplicant_spawn':
wifid-supplicant.c:(.text+0x6654): undefined reference to `sd_event_source_unref'
wifid-supplicant.c:(.text+0x6696): undefined reference to `sd_event_add_child'
CMakeFiles/miracle-wifid.dir/wifid-supplicant.c.o: In function `supplicant_timer_fn':
wifid-supplicant.c:(.text+0x6815): undefined reference to `sd_event_source_set_time'
wifid-supplicant.c:(.text+0x6826): undefined reference to `sd_event_source_set_enabled'
wifid-supplicant.c:(.text+0x6854): undefined reference to `sd_event_source_set_time'
wifid-supplicant.c:(.text+0x6865): undefined reference to `sd_event_source_set_enabled'
wifid-supplicant.c:(.text+0x690e): undefined reference to `sd_event_source_set_time'
wifid-supplicant.c:(.text+0x691f): undefined reference to `sd_event_source_set_enabled'
wifid-supplicant.c:(.text+0x696a): undefined reference to `sd_event_source_set_enabled'
wifid-supplicant.c:(.text+0x697f): undefined reference to `sd_event_source_set_enabled'
CMakeFiles/miracle-wifid.dir/wifid-supplicant.c.o: In function `supplicant_start':
wifid-supplicant.c:(.text+0x6d59): undefined reference to `sd_event_add_time'
CMakeFiles/miracle-wifid.dir/wifid-supplicant.c.o: In function `supplicant_stop':
wifid-supplicant.c:(.text+0x6e5c): undefined reference to `sd_event_source_unref'
wifid-supplicant.c:(.text+0x6e78): undefined reference to `sd_event_source_unref'
../shared/libmiracle-shared.a(wpas.c.o): In function `wpas_io_prepare_fn':
wpas.c:(.text+0x3340): undefined reference to `sd_event_source_set_io_events'
wpas.c:(.text+0x3376): undefined reference to `sd_event_source_set_time'
wpas.c:(.text+0x339c): undefined reference to `sd_event_source_set_enabled'
wpas.c:(.text+0x33c2): undefined reference to `sd_event_source_set_enabled'
../shared/libmiracle-shared.a(wpas.c.o): In function `wpas_timer_fn':
wpas.c:(.text+0x3417): undefined reference to `sd_event_source_set_enabled'
../shared/libmiracle-shared.a(wpas.c.o): In function `wpas_attach_event':
wpas.c:(.text+0x34cb): undefined reference to `sd_event_ref'
wpas.c:(.text+0x34ed): undefined reference to `sd_event_default'
wpas.c:(.text+0x353a): undefined reference to `sd_event_add_io'
wpas.c:(.text+0x3564): undefined reference to `sd_event_source_set_priority'
wpas.c:(.text+0x358a): undefined reference to `sd_event_source_set_prepare'
wpas.c:(.text+0x35d3): undefined reference to `sd_event_add_time'
wpas.c:(.text+0x35fa): undefined reference to `sd_event_source_set_enabled'
wpas.c:(.text+0x3621): undefined reference to `sd_event_source_set_priority'
../shared/libmiracle-shared.a(wpas.c.o): In function `wpas_detach_event':
wpas.c:(.text+0x367c): undefined reference to `sd_event_unref'
wpas.c:(.text+0x369d): undefined reference to `sd_event_source_unref'
wpas.c:(.text+0x36be): undefined reference to `sd_event_source_unref'
collect2: error: ld returned 1 exit status
src/wifi/CMakeFiles/miracle-wifid.dir/build.make:186: recipe for target 'src/wifi/miracle-wifid' failed
make[2]: *** [src/wifi/miracle-wifid] Error 1
CMakeFiles/Makefile2:186: recipe for target 'src/wifi/CMakeFiles/miracle-wifid.dir/all' failed
make[1]: *** [src/wifi/CMakeFiles/miracle-wifid.dir/all] Error 2
Makefile:117: recipe for target 'all' failed
make: *** [all] Error 2

Re: MiracleCast over Mageia 5

PostPosted: Sep 6th, '15, 19:39
by doktor5000
Well, it's not as easy as simply copying the necessary header files, you also need the compiled library (in your case at least libsystemd) with those symbols to link against.
And or that you'd need to compile that newer systemd version. But it includes quite some more stuff apart from that library. Installing a newer systemd without really knowing what you're doing is a recipe for disaster.

For the underlinking issues (undefined reference to 'symbol_name') see also https://wiki.mageia.org/en/Packaging_pr ... _.60xxx.27