Why can't my Mac open this application?
December 28, 2019 8:10 AM   Subscribe

I have Kobo's desktop reader installed on my Mac, but when I click on it in Launchpad or Finder, I get the error message "The application "Kobo" can't be opened". How do I fix this?

Things I have tried that haven't worked:
- Changing the permissions on kobo.app to include +x using chmod.
- deleting and reinstalling the app

Things I have tried that have sorta worked:
- If I right click on Kobo in the Applications folder, and choose Show Package Contents, and then navigate down to the unix executable file and run that, the application will run.

Things I have tried that have actually worked:

[crickets]

This is where you come in...
posted by jacquilynne to Computers & Internet (8 answers total)
 
Did it work previously and then stopped after upgrading either Kobo or Mac OS? Or has it never worked?

Maybe obvious but worth a try if you haven't: What do you get if you right click on the app and then select Open?

Changing the permissions on kobo.app to include +x using chmod

Apologies if you're fully aware of this already: A .app file is actually just a special kind of directory. "+x" on a directory doesn't mean executable but rather "this directory can be entered", so that wouldn't have the effect you might think.

Have you tried chmod +x on the Unix executable file inside the application? You can use the command "ls -l" (that's lower case "LS -L") to check the existing permissions before you do that. If the Unix executable file's permissions don't look something like "-rwxr-xr-x" (particularly the Xs), then that's probably the problem.
posted by jedicus at 8:26 AM on December 28, 2019


Response by poster: Did it work previously and then stopped after upgrading either Kobo or Mac OS? Or has it never worked?

Not sure. I went to Kobo and tried to install it and was actually quite surprised to discover it was already installed, which came up when I tried to copy the kobo.app folder over to the applications folder and got the message that it was already there. Since I don't remember ever having installed it before, I also don't remember trying to use it before. I would imagine if I'd installed it before and it didn't work I might remember that, but I honestly don't know.

Apologies if you're fully aware of this already: A .app file is actually just a special kind of directory. "+x" on a directory doesn't mean executable but rather "this directory can be entered", so that wouldn't have the effect you might think.

No worries. I am not a Mac person generally, so I have very weird and patchy knowledge of how they work and won't be offended if people just assume I'm super dumb about stuff. I should have been able to presume that it was a directory from the fact that I could open it up like a directory and look inside, but I was just following advice from googling when I tried that.

Have you tried chmod +x on the Unix executable file inside the application?

I had not, but when I look at it now, it is already exactly what you suggest is optimal.
posted by jacquilynne at 8:34 AM on December 28, 2019


The best thing to do is simply to move Kobo to trash and reinstall.

If you want to determine what went wrong, let's assume Kobo is in the Applications directory.

As jedicus says above, Kobo is actually a directory full of other files, with the name Kobo.app. The actual path to the executable is
/Applications/Kobo.app/Contents/MacOS/Kobo

If you execute it from within Terminal, you'll see any messages that would normally be hidden, such as these messages from a valid launch; the "%" at the beginning is my Terminal prompt (yours will be different). This application is very verbose behind the scenes. All the nonsense you see below is only useful to the developers.

% /Applications/Kobo.app/Contents/MacOS/Kobo
putenv "NICKEL_HOME=/Users/blob/Library/Application Support/Kobo/Kobo Desktop Edition"
( 1.441 @ main (0x7fcf3a518eb0)) QSqlQuery::value: not positioned on a valid record
( 1.596 @ main (0x7fcf3a518eb0)) QSqlQuery::value: not positioned on a valid record
( 1.625 @ eventengine (0x7fcf3a5af3e0)) > Social: Achievement granted: "Achievement - id: 00000000-0000-0000-0000-000000001000, name: Welcome to Reading Life"
( 1.722 @ main (0x7fcf3a518eb0)) loadPlugin: loaded plugin for QRawFont
( 3.073 @ main (0x7fcf3a518eb0)) loadPlugin: loaded plugin for QFontEngine
( 4.263 @ main (0x7fcf3a518eb0)) loadPlugin: loaded plugin for QRasterPaintEngine
( 5.589 @ main (0x7fcf3a518eb0) / packetdump.warning) "https://store.kobobooks.com/?wscfv=2.0&wscf=kepub&wsa=Kobo&pwspid=00000000-0000-0000-0000-000000000011&pwsdid=04b2c4c2561d77226495be8d9e0eca821d6e6affba340a0b77f2cd1098779c27&pwspt=Desktop&pwspov=10.15&pwsav=4.18.10146" => "Operation canceled"
( 5.590 @ main (0x7fcf3a518eb0) / ui.warning) Web View Load Failed
( 9.927 @ main (0x7fcf3a518eb0) / ui.debug) "https://kbstatic1-a.akamaihd.net/1.0.0.6191/output/bundles/kobo.min.js:2: JQMIGRATE: Logging is active"
( 11.954 @ main (0x7fcf3a518eb0) / ui.debug) "https://www.kobo.com/?wscfv=2.0&wscf=kepub&wsa=Kobo&pwspid=00000000-0000-0000-0000-000000000011&pwsdid=04b2c4c2561d77226495be8d9e0eca821d6e6affba340a0b77f2cd1098779c27&pwspt=Desktop&pwspov=10.15&pwsav=4.18.10146:1: TypeError: undefined is not a constructor (evaluating 'a.forEach')"
( 12.028 @ main (0x7fcf3a518eb0) / ui.debug) "https://kbstatic1-a.akamaihd.net/1.0.0.6191/output/bundles/kobo.min.js:194: TypeError: undefined is not a constructor (evaluating 'performance.getEntriesByType("resource")')"
( 13.585 @ main (0x7fcf3a518eb0) / ui.debug) "https://www.kobo.com/?wscfv=2.0&wscf=kepub&wsa=Kobo&pwspid=00000000-0000-0000-0000-000000000011&pwsdid=04b2c4c2561d77226495be8d9e0eca821d6e6affba340a0b77f2cd1098779c27&pwspt=Desktop&pwspov=10.15&pwsav=4.18.10146:1: TypeError: undefined is not a constructor (evaluating 'c.forEach')"
( 13.589 @ main (0x7fcf3a518eb0) / ui.debug) "https://www.kobo.com/?wscfv=2.0&wscf=kepub&wsa=Kobo&pwspid=00000000-0000-0000-0000-000000000011&pwsdid=04b2c4c2561d77226495be8d9e0eca821d6e6affba340a0b77f2cd1098779c27&pwspt=Desktop&pwspov=10.15&pwsav=4.18.10146:12: TypeError: undefined is not a constructor (evaluating 'a.forEach')"


That was just starting and quitting the application. In your case, you should see some additional messages indicating the missing files.

But really, just delete it, re-download, and re-install.
posted by blob at 9:18 AM on December 28, 2019


Nth-ing the delete, re-download, install route. And after that if it gives you a different error message, open it up in finder, right-click, and click Open.
posted by cgg at 9:24 AM on December 28, 2019


Response by poster: I did already delete, re-download and reinstall. Right-click-open gives me the same error message -- that the application cannot be opened.

When I launch it by showing package contents and clicking on the executable file, it does open successfully, and also opens a terminal window with a bunch of verbose logging. There are a bunch of apparent errors in the log, but then the end result is that the application opens. Why would that be different when I directly click the executable vs. when I click kobo.app in the Applications folder?

Here's the log from successfully opening via the Show Package contents method if it's meaningful:

Last login: Sat Dec 28 11:07:33 on ttys000
Jacquilynnes-MacBook-Air:~ jacq$ /Applications/Kobo.app/Contents/MacOS/Kobo ; exit;
putenv "NICKEL_HOME=/Users/jacq/Library/Application Support/Kobo/Kobo Desktop Edition"
( 2.086 @ main (0x7fbe4140b1b0)) loadPlugin: loaded plugin for QRawFont
( 3.276 @ main (0x7fbe4140b1b0)) loadPlugin: loaded plugin for QFontEngine
( 4.353 @ main (0x7fbe4140b1b0)) loadPlugin: loaded plugin for QRasterPaintEngine
( 4.377 @ main (0x7fbe4140b1b0) / ui.debug) static QByteArray Unzipper::extractFile(const QString &, const QString &) "/Users/jacq/Library/Application Support/Kobo/Kobo Desktop Edition/dict/dicthtml.zip" "words"
( 5.553 @ main (0x7fbe4140b1b0) / packetdump.warning) "https://store.kobobooks.com/?wscfv=2.0&wscf=kepub&wsa=kobodesktop&pwspid=00000000-0000-0000-0000-000000000011&pwsdid=75b167fdcb6752d59e58c012c3fadb729ce7c765f1ca3c6962dc555268bc76fa&pwspt=Desktop&pwspov=10.11&pwsav=4.18.10146" => "Operation canceled"
( 5.554 @ main (0x7fbe4140b1b0) / ui.warning) Web View Load Failed
( 7.527 @ main (0x7fbe4140b1b0) / ui.debug) "https://kbstatic1-a.akamaihd.net/1.0.0.6191/output/bundles/kobo.min.js:2: JQMIGRATE: Logging is active"
( 8.093 @ syncstateworker (0x7fbe43909710) / ui.debug) Performing Upgrade Check for Desktop...
( 8.712 @ syncstateworker (0x7fbe43909710) / ui.debug) Check Result 0
( 8.774 @ main (0x7fbe4140b1b0) / ui.debug) Authenticated user: "cabe714f-4d80-473d-8ccf-abff2dc3a98c"
( 9.270 @ main (0x7fbe4140b1b0) / ui.debug) "https://kbstatic1-a.akamaihd.net/1.0.0.6191/output/bundles/kobo.min.js:194: TypeError: undefined is not a constructor (evaluating 'performance.getEntriesByType("resource")')"
( 9.441 @ sync (0x7fbe43a5cdb0) / ui.debug) static void UsageDataManager::resetSyncLimits(const Device &)
( 9.445 @ eventengine (0x7fbe4158d350) / sql.warning) static void DatabaseAdapter::closeConnection(QString) not open database: "/Users/jacq/Library/Application Support/Kobo/Kobo Desktop Edition/Book.sqlite"
( 9.618 @ main (0x7fbe4140b1b0) / ui.debug) "https://www.kobo.com/?wscfv=2.0&wscf=kepub&wsa=kobodesktop&pwspid=00000000-0000-0000-0000-000000000011&pwsdid=75b167fdcb6752d59e58c012c3fadb729ce7c765f1ca3c6962dc555268bc76fa&pwspt=Desktop&pwspov=10.11&pwsav=4.18.10146:1: TypeError: undefined is not a constructor (evaluating 'a.forEach')"
( 9.620 @ main (0x7fbe4140b1b0) / ui.debug) "https://www.kobo.com/?wscfv=2.0&wscf=kepub&wsa=kobodesktop&pwspid=00000000-0000-0000-0000-000000000011&pwsdid=75b167fdcb6752d59e58c012c3fadb729ce7c765f1ca3c6962dc555268bc76fa&pwspt=Desktop&pwspov=10.11&pwsav=4.18.10146:1: TypeError: undefined is not a constructor (evaluating 'a.forEach')"
( 10.609 @ main (0x7fbe4140b1b0) / ui.debug) "https://cdn.cookielaw.org/scripttemplates/5.9.0/otBannerSdk.js:7: NotSupportedError: DOM Exception 9: The implementation did not support the requested type of object or operation."
( 11.251 @ main (0x7fbe4140b1b0) / ui.debug) "https://www.kobo.com/?wscfv=2.0&wscf=kepub&wsa=kobodesktop&pwspid=00000000-0000-0000-0000-000000000011&pwsdid=75b167fdcb6752d59e58c012c3fadb729ce7c765f1ca3c6962dc555268bc76fa&pwspt=Desktop&pwspov=10.11&pwsav=4.18.10146:1: TypeError: undefined is not a constructor (evaluating 'c.forEach')"
( 11.255 @ main (0x7fbe4140b1b0) / ui.debug) "https://www.kobo.com/?wscfv=2.0&wscf=kepub&wsa=kobodesktop&pwspid=00000000-0000-0000-0000-000000000011&pwsdid=75b167fdcb6752d59e58c012c3fadb729ce7c765f1ca3c6962dc555268bc76fa&pwspt=Desktop&pwspov=10.11&pwsav=4.18.10146:12: TypeError: undefined is not a constructor (evaluating 'a.forEach')"
posted by jacquilynne at 9:34 AM on December 28, 2019


What version os Mac OS are you running?
posted by jonathanhughes at 9:58 AM on December 28, 2019 [3 favorites]


Response by poster: And now, suddenly, after fighting with this for half the morning, and posting this question, it is working. I don't think I've done anything differently from before. The icon for Kobo in the Applications folder has changed from the actual logo to the setup logo, but it now actually launches the reader.

I did let Chrome restart to install an update at one point, but that doesn't feel like it should make a difference to a completely different application.
posted by jacquilynne at 10:04 AM on December 28, 2019


Thanks for this question, the answers, and the report that it mysteriously worked after a while. I had a similar problem last week with needing to update Kobo, but the updated app wouldn't launch. I had trashed it after several attempts. I just re-installed now, launched, and it's running fine. So Im' still confused about the problem, but relieved that this voodoo worked.
posted by NumberSix at 7:53 PM on December 28, 2019


« Older I want to read about life in Great Britain during...   |   How do I make this not awkward? Newer »
This thread is closed to new comments.