Blog

Mirroring iPad/iPhone screen on Linux – Solutions to known issues

Recently I made a tutorial about Mirroring iPad/iPhone screen on Linux. The post has gained some momentum and I’ve received a lot of messages from some users who have ran into problems either during the installation of UxPlay or while using it. I did manage to solve some of them, so I decided to compile the solution to the most common problems in a single post.

CMake Error

The CXX compiler identification is unknown
CMake Error at CMakeLists.txt:3 (project):
No CMAKE_CXX_COMPILER could be found.

You must install the basic package needed to compile a Debian package. In a Debian based distro, type

sudo apt-get install build-essential

Green or Black Screen

In this issue, the mirroring window pops up but with a green or black screen instead of the iPad/iPhone screen. Installing the package gstreamer1.0-plugins-bad worked for some users. If you are using a Debian based distro, just type

sudo apt-get install gstreamer1.0-plugins-bad

Some users had to installing a larger list of plugins for the gstreamer. Below is a command to install a other plugins that could make things work

apt-get install libgstreamer1.0-0 gstreamer1.0-plugins-base gstreamer1.0-plugins-good gstreamer1.0-plugins-bad gstreamer1.0-plugins-ugly gstreamer1.0-libav gstreamer1.0-doc gstreamer1.0-tools gstreamer1.0-x gstreamer1.0-alsa gstreamer1.0-gl gstreamer1.0-gtk3 gstreamer1.0-qt5 gstreamer1.0-pulseaudio

NVIDIA Graphics card

Some users running on NVidia GPUs had problems like the green screen that were solved only after switching from the NVidia GPU to the onboard gpu, like a Intel’s one. If you are using the Nvidia official driver, you can do this by opening the NVIDIA X Server Settings in your applications menu or running it through the Terminal

nvidia-settings

There you can switch the GPUs. You will need to reboot in order to the settings take effect.

Nvidia X Server Settings

Mirroring the mirror window on Zoom

Some users did not manage to share the mirror window when using meeting apps like Zoom. The window did not appear in the list of open windows. A workaround is the following one. With the mirror window running, open a Terminal and type

xdotool selectwindow set_window --name "mirror"

And then click on your mirror window. This should change the window’s title to “mirror” and will make it appear in the list of open windows when you share a window on Zoom.

Screenshots: UxPlay in action

7 comments

  1. In case the Below Errors are Observed;

    [ 23%] Built target plist
    [ 26%] Built target curve25519
    [ 46%] Built target ed25519
    [ 57%] Built target playfair
    [ 58%] Building C object lib/CMakeFiles/airplay.dir/dnssd.c.o
    /home/king/Downloads/Compressed/UxPlay-master/lib/dnssd.c:38:10: fatal error: dns_sd.h: No such file or directory
    38 | #include
    | ^~~~~~~~~~
    compilation terminated.
    make[2]: *** [lib/CMakeFiles/airplay.dir/build.make:108: lib/CMakeFiles/airplay.dir/dnssd.c.o] Error 1
    make[1]: *** [CMakeFiles/Makefile2:363: lib/CMakeFiles/airplay.dir/all] Error 2
    make: *** [Makefile:149: all] Error 2

    THE BELOW SOLUTION WORKS FOR DEBIAN KALI LINUX AND I GUESS UBUNTU AS WELL;

    No.1
    sudo apt-get install libavahi-compat-libdnssd-dev

    No.2
    sudo apt-get install libplist-dev

    No.3
    sudo apt-get install libgstreamer1.0-0 gstreamer1.0-plugins-base gstreamer1.0-plugins-good gstreamer1.0-plugins-bad gstreamer1.0-plugins-ugly gstreamer1.0-libav gstreamer1.0-doc gstreamer1.0-tools gstreamer1.0-x gstreamer1.0-alsa gstreamer1.0-gl gstreamer1.0-gtk3 gstreamer1.0-qt5 gstreamer1.0-pulseaudio

    No.4
    sudo apt-get install gstreamer1.0-plugins-bad

    No.5
    sudo apt-get install build-essential

    Best of Luck Guys!!!

    Like

  2. In Case Of the Below Errors after the process;

    Initialized server socket(s)
    *** WARNING *** The program ‘uxplay’ uses the Apple Bonjour compatibility layer of Avahi.
    *** WARNING *** Please fix your application to use the native API of Avahi!
    *** WARNING *** For more information see
    ^CStopping…

    THE BELOW SOLUTIONS CAN BE USED;

    export AVAHI_COMPAT_NOWARN=1

    No Need for Sudo just tye it as it is in without sudo.

    Like

    1. I kept getting this warning and did disable it but the window still does not launch to be able to start the mirroring and my iPhone will not connect…

      Like

  3. I have tried this and it had worked for me. Today I have to switch to a new ubuntu machine and I tried the same. I am able to see the screen, but the contents are not showing correctly. Some kind of issue with the screen parameters like width height. Also font size seems to be big. So may be it is not fitting to the screen. Anyone has encountered this issue?

    Like

  4. I was getting the Avahi error and disabled the error as directed above but the screen sharing window still never launches so I can’t connect and actually run the session. I have tried all the added suggestions in all these posts and rebuilt several times and still don’t get the window to load. Any suggestions? I am on intel video based system….

    Like

Leave a Reply to karicheri Cancel reply

Please log in using one of these methods to post your comment:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

%d bloggers like this: