Inappropriate ioctl for device
Plug your Uno into the Mac using a known good USB cable.
Go to the Apple menu -&gt; About This Mac -&gt; More Info -&gt; System Report
Under the USB selection (on the left) please confirm whether or not you see something like this:

You can also open a Terminal window and type:
system_profiler SPUSBDataType

Amongst other things you should see:
USB:

    USB High-Speed Bus:

      Host Controller Location: Built-in USB
      Host Controller Driver: AppleUSBEHCI
      PCI Device ID: 0x3b34 
      PCI Revision ID: 0x0006 
      PCI Vendor ID: 0x8086 
      Bus Number: 0xfd 

        Hub:

          Product ID: 0x2514
          Vendor ID: 0x0424  (SMSC)
          Version: 0.03
          Speed: Up to 480 Mb/sec
          Location ID: 0xfd100000 / 2
          Current Available (mA): 500
          Current Required (mA): 2

            Communication Device:

              Product ID: 0x0043
              Vendor ID: 0x2341
              Version: 0.01
              Serial Number: 9314036423335121A0B1
              Speed: Up to 12 Mb/sec
              Manufacturer: Arduino (www.arduino.cc)
              Location ID: 0xfd130000 / 8
              Current Available (mA): 500
              Current Required (mA): 100

Note the &quot;www.arduino.cc&quot; entry.
In your Arduino IDE you should see the Arduino as a tty.usbmodemfd131 (or some similar number).

If you see all that it should work.
If not, please state in what way it differs.

Programmer -&gt; AVRISP mkll

The Tools &gt; Programmer menu selection is only used when you do Tools &gt; Burn Bootloader or &quot;Upload Using Programmer. It is completely ignored when doing a standard &quot;Upload&quot;. You should be doing an &quot;Upload&quot; (Command-U) not an &quot;Upload using programmer&quot; (Shift+Command+U). So it makes absolutely no difference what you select from the Tools &gt; Programmer menu.