Won't compile to .mobi or recognize Kindlegen

Hi. I’m pulling my hair out here. Loving Scrivener but very frustrated with a couple things. I have gone to compile for a Kindle eBook and can only compile to ePUB. It won’t compile to .MOBI because it doesn’t recognize KindleGen. I have KindleGen loaded. I can use the Previewer to look at the ePUB compile. Is the .MOBI not supported anymore??? Do I have to use ePUB compile? Is what I see in the Kindle Previewer what I will get or will it be different since I compiled in ePUB? Is this why my images are not full width when I set them at 600 px? I’m on a MacBook.

Kindle Previewer has KindleGen built-in, so when you open an ePub file it will perform the conversion and produce a .mobi file alongside the original .epub. This is precisely identical to the version of KindleGen Amazon provides separately, which you link Scrivener to, so yes whatever you see in Previewer is going to be what you get from the separate KindleGen utility. Do note however that “Kindle” means quite a broad range of rendering these days. Be sure to test multiple devices in the Previewer when working on formatting.

All right, as to the problem itself, it’s hard to say without more information, like the precise wording of any error messages you are seeing. I can say that a rare problem I’m aware of involves using a decompression program (Stuff-It is one, last I checked) that doesn’t properly recognised embedded UNIX flags. KindleGen is a command-line utility, and as such it must have the executable rights set to function as a program. If it isn’t set, Scrivener’s attempt to execute it will be rejected by your Mac. Rather than getting elbow deep into the UNIX settings on your system, the simplest solution would just be to remove the current KindleGen install, and then decompress the downloaded copy again, this time making sure to use the Mac’s default archive utility. You’ll know that the KindleGen utility has extracted correctly if the icon for it looks like a little black “DOS” prompt. That means it is set up to be an executable. If it has a white document icon then the system is set up to think it is a document file, and will refuse to run it.