Skip to main content

How to install RVICTL with Xcode 11

How to install RVICTL with Xcode 11

In this micro tutorial I wanted to cover installing RVICTL after installing macOS 10.15 and Xcode 11.  I installed Xcode 11 beta along with the command line tools and fired up the terminal thinking that RVICTL would be available from /usr/bin, but was surprised when I did not see it from the command line.  I started to look all over my machine in the usual places but and was stumped. Finally, I found a solution and that is why I wanted to write this tutorial, to share with you that that solution in case you had seen the same problem. 

What is RVICTL?  RVICTL stands for Remote Virtual Interface Tool, that can start and stop a remote packet capture instance for any set of attached mobile devices.  RVICTL is very useful for taking a packet capture or monitoring traffic off of a specific interface on a mobile device.

UPDATE: (9-6-2019) As of macOS Catalina 10.15 Beta 7 and Xcode 11 Beta 7 installing the .pkg by hand may no longer be needed.  I installed Xcode 11 Beta 7 on macOS 10.15 Beta 7 and rvictl was available in the Terminal.

 

Here is the solution.  Go to Finder application and hit the Go menu option in the top navigation bar. Next, navigate down to Go To Folder.

Go to folder.

When the Go to the folder option pops up, add in this path: "/Applications/Xcode-beta.app/Contents/Resources/Packages"  Remember if Xcode is not in beta to remove "-beta" from the path on Xocde.  Hit go and you should see 4 packages.

Xcode Resource Packages

Double click to run through the install process for MobileDeviceDevelopment.pkg and for MobileDevice.pkg. 

RVICTL

Now from the terminal you should be able to run the rvictl command and see a response recognizing the tool!

That's it!  That is all there was to it.  Now you are good to run a packet capture and analyze traffic from any of your Apple mobile devices.  For more information on how to do so, see my article on packet captures here.  Hope you enjoyed this micro tutorial, if you have any questions, comments, or concerns, please leave a comment and I will get back to you as soon as possible.  Thanks!

Member for

3 years 9 months
Matt Eaton

Long time mobile team lead with a love for network engineering, security, IoT, oss, writing, wireless, and mobile.  Avid runner and determined health nut living in the greater Chicagoland area.

Comments

Eduardo

Wed, 09/04/2019 - 07:36 PM

did you make this in macOS Catalina? i got the message: "This package is incompatible with this version of macOS."

I did not make this pkg or use the installer from the Terminal.  To install I navigated to the MobileDevice.pkg from Finder and ran through the installation process from there and then verified the existence of rvictl by running the base command from the Terminal.

One thing to note, and I will update the post with this information, is that this no longer looks like it is need in macOS Catalina 10.15 Beta 7 and Xcode 11 Beta 7.  I installed these latest versions and the additional Xcode tools and rvictl was available.

William Haynes

Thu, 11/07/2019 - 05:26 PM

The rvictl has been relocated to /Library/Apple/usr/bin/ folder. If you look there, you will see the file. If you add this to your paths, you will be able to use rvictl again.
sudo nano /etc/paths
Add the line /Library/Apple/usr/bin/
Ctrl X to save and type Y to accept. Restart the terminal and rvictl should work now.

Faizal

Sun, 11/10/2019 - 12:51 AM

In reply to by William Haynes

Hi,

Many thanks, my problem solved.

The Xcode 11.2.1 running on Mac Catalina 10.15 doesn't include rvictl as I did. I installed Xcode from Apps Store, then could not find rvictl on Terminal. Then need to install it manually as your guide. Now it works.

Thank you so much.