Hi
i am using iODBC to query data from an MYSQL database. The connections are working properly but when i do get data from Excel i get the message that no ODBC driver is installed (which is not the case).
- Mac version is 11.2.1
- Excel is the 365 subscription edition
- Excel Build
/Applications/Microsoft Excel.app/Contents/MacOS/Microsoft Excel: Mach-O universal binary with 2 architectures: [x86_64:Mach-O 64-bit executable x86_64] [arm64]
/Applications/Microsoft Excel.app/Contents/MacOS/Microsoft Excel (for architecture x86_64): Mach-O 64-bit executable x86_64
/Applications/Microsoft Excel.app/Contents/MacOS/Microsoft Excel (for architecture arm64): Mach-O 64-bit executable arm64
- The OBDC connector files are located in /Library/ODBC (all users, not under ~userID/Library/ODBC/)
- The iODBC version is the last available on iodbc.org website : 3.52.14
- I have installed MySQL driver 5.03.0013 and MySQL driver 8.00.0022 from mySQL website
thanks to @TallTed the issue is workaround by opening the Excel app with Rosetta (initial post in GitHub )
Here is his detailed solution.
The issue I believe you’re hitting is that Excel is launching as an
arm64
a/k/aM1
native application, and it cannot loadx86_64
-native libraries, which all of the iODBC and MySQL components are (as of this writing; updates for iODBC and OpenLink drivers are in the works).You can get around this by going to the Finder, navigating to
Microsoft Excel.app
, and doing aGet Info
on it. In the info box, find the " Open using Rosetta " checkbox, and check it! Now, when you launch Excel, it will run as anx86_64
binary in the Rosetta2 emulator, and it will loadx86_64
libraries like iODBC and all the ODBC drivers you’ve installed.
I would be happy to have an update when the when arm64
-native iODBC binaries will be available
Thanks