Frequently Asked Questions regarding OpenLink Software components on the Mac
- Classic (Mac OS 9.x and earlier) Support
- Lion (Mac OS X 10.7.x), Mountain Lion (OS X 10.8.x), Mavericks (OS X 10.9.x), and Yosemite (OS X 10.10.x) Support
- Leopard (Mac OS X 10.5.x) and Snow Leopard (Mac OS X 10.6.x) Support
- Are your Release 5.2 Leopard-compatible builds compatible with PPC and/or Intel?
- Are your Express Edition drivers compatible with Mac Intel client systems?
- Installation
- Upgrades
- Licensing
- What is the source of "no valid license found" errors?
- What causes an error like "Your license is not valid on a 4 processors architecture"?
- Data Source Names
- General Connection Issues
- Database-specific Connection Issues
- Client Application-specific Issues
- FileMaker
- Why do FMP7 imports return errors saying I need FMP 5.5 or later?
- Is it possible to establish a Perl connection to FMP 6 on the same Mac OS X host?
- Why doesn't FMP9 see pre-existing User DSNs that I used with FMP 7, 8 & 8.5?
- Why can't FMPro Advanced 9.1 see or use functional User DSNs?
- Why does FMPro produce "Server Handle" errors when used with Express drivers?
- How can I use FMPro to perform calculations and update remote data without an update?
- Why can't I populate LONGTEXT fields with more than 128 characters?
- Omnis
- Microsoft Excel and Microsoft Query
- Parallels or VMware
- iODBCNet
- Diagnostics
- How do I trace on Mac OS X clients?
- Can I list all the ODBC drivers on my Mac and their versions?
- How can I display the internal version (build numbers, etc.) of the iODBC components on Mac OS X?
- How can I get hardware, memory, and processor information on a Mac?
- How can I return system version and kernel version information on a Mac?
- Errors
- Software Removal
- How do I uninstall OpenLink components on Mac OS X?
- See Also
Classic (Mac OS 9.x and earlier) Support
Are you currently building new drivers for Mac OS 9?
Our support for Mac OS 9/Classic is being phased out due to its EOL status with Apple, and its inherent inability to support some key features of our drivers. Currently, no Release 6.x Data Access components exist for this platform, and none are planned.
Lion (Mac OS X 10.7.x), Mountain Lion (OS X 10.8.x), Mavericks (OS X 10.9.x), and Yosemite (OS X 10.10.x) Support
Which builds should I use?
To date, all Release 6.3 components built for Leopard have tested fully compatible with these later versions of Mac OS X. Earlier builds for Leopard may also be compatible with later OS versions, but we recommend always using the latest available download.
Leopard (Mac OS X 10.5.x) and Snow Leopard (Mac OS X 10.6.x) Support
Are your Release 5.2 Leopard-compatible builds compatible with PPC and/or Intel?
Our Release 5.x components are not, and will not be, available in Universal nor Intel binary builds, and thus cannot be used by Intel-native client applications. They can only be used with PPC-native or Rosetta-launched Universal builds on Intel Macs. Upgrade Lite or Enterprise Edition drivers to Release 6.x to obtain full Intel compatibility.
Are your Express Edition drivers compatible with Mac Intel client systems?
Yes. Our Express Edition drivers support Intel and Universal Binary applications that run on any Intel Mac.
However, PPC-native Binary applications (such as Microsoft Query, as shipped with Microsoft Office:Mac v.X through Office:Mac 2008; Office 2011 and later include an Intel-native Query) cannot use Express Edition drivers on Intel-based Macs; this is due to Apple's decision to install only Intel-native JVM components, rather than a Universal binary JVM, on these Macs. PPC-native binaries can only use Lite or Enterprise Edition drivers on Intel-based Macs.
Installation
Why do I get "There were errors installing the software." messages when installing?
Did you drag the installer .mpkg from the mounted .dmg and onto your hard disk? There are a number of limitations in the Mac OS X Installer.app. Therefore, we do not recommend this practice. Please mount the downloaded .dmg, and simply double-click the .mpkg contained within.
Upgrades
Can I install a Release 6.x Multi-Tier Generic Client ODBC Driver on the same machine as an existing Release 5.x Generic Client ODBC Driver?
Yes. These clients will coexist happily. Please always use a Generic Client from the same Release as your target Request Broker -- i.e., Release 5.x Generic Client against Release 5.x Broker/Agent. Using a mix of components (e.g., a Release 6.x Generic Client against a Release 5.x Broker/Agent, or a Release 5.x Generic Client against a Release 6.x Broker/Agent) may not produce any error messages, but such combinations are untested and unsupported, and may lead to unexpected and undesired results.
Licensing
What is the source of "no valid license found" errors?
This error message has 3 predominant causes:
- The license file is not in /Library/Application Support/OpenLink/bin
- It is not named correctly
- It has been corrupted
What causes an error like "Your license is not valid on a 4 processors architecture"?
Your machine has 4 processor cores, as either one quad-core processor or two dual-core processors. OpenLink licenses by the core, so you need to obtain a larger license.
Data Source Names
Why can't I save System DSNs on my Mac OS X client?
Take the following action:
- Open a Terminal.app session.
- cd into the
/Library/ODBC
directory. - Run this command:
ls -l odbc*ini
- Check permissions on the
odbc.ini
andodbcinst.ini
files. For example:
-rw-rw-r-- 1 nobody nobody 489 May 27 2005 odbc.ini -rw-rw-r-- 1 nobody nobody 944 Dec 21 08:50 odbcinst.ini
- Ensure that
odbc.ini
andodbcinst.ini
are owned byroot
. - Ensure that
odbc.ini
andodbcinst.ini
are owned by the admin group.
The following syntax can be used to make changes to the user and group ownership of the odbc files:
sudo chown root:admin /Library/ODBC/odbc*.ini
General Connection Issues
My application is looking for a ODBC.preference file
The application's $ODBCINI
setting should target your System-level /Library/ODBC/odbc.ini
.
Locate the problem dependency in the application's native configuration file.
For example:
ODBCINI=/private/var/root/Library/Preferences/ODBC.preference
Change the variable to read:
ODBCINI=/Library/ODBC/odbc.ini
You may need to reboot to make this all take effect, depending on how that client application is written.
Database-specific Connection Issues
DB2
Do your Express Edition drivers connect to DB2 hosted on iSeries?
Experience suggests that our Single-Tier Express Edition Driver for DB2 for Mac OS X may be used successfully against some iSeries-hosted DB2 instances. This is not the case in all situations. Use of our Lite Edition ODBC Driver for JDBC Data Sources with the JT400 package is more likely to succeed due to differences in the way DB2 on AS/400 communicates vs DB2 on Windows/Linux. We generally have success in using our current Express Edition against AS/400, but there are some environments where this does not work, and thus the JT400 package is necessary.
If you would like to test with the JT400 package, do the following:
- Obtain JT400.zip.
- Unzip JT400.zip.
- Locate the jt400.jar in the lib subdirectory.
- Put this jar file into your Mac's
/Library/Java/Extensions/
directory. - Download and install our Lite Edition ODBC Driver for JDBC Data Sources.
- Configure an OpenLink DSN.
- Pass the following Driver Classname in your DSN:
com.ibm.as400.access.AS400JDBCDriver
- Build the JDBC URL using the documented syntax.
The following example URL specifies a connection to the database on system mysystem.helloworld.com with mylibrary as the default schema.
The connection will use the system naming convention and return full error messages:
jdbc:as400://mysystem.helloworld.com/mylibrary;naming=system;errors=full file:///Users/OpenLink/Desktop/JT400-JTopen/jtopen 6_0_javadoc/com/ibm/as400/access/doc-files/JDBCProperties.html errors=full prompt=false metadata source=0
FileMaker
Can I use your drivers to query FileMaker from a Mac?
Yes and no. Please see our detailed answer.
Oracle
Why can't I use your Lite Edition drivers to connect my Mac Intel-native applications to Oracle?
The OpenLink "Lite" Edition Driver for Oracle relies upon Oracle-supplied OCI Libraries, which have not been delivered for Intel-based Macs. You can only use Express Edition drivers on an Intel-based Mac, if your client application is PPC-native or is Universal and set to "Open in Rosetta" Intel-native applications. By default, Universal applications running normally will launch the Intel-native portion of the Universal driver, which will then try to load an Intel-native OCI library -- which is not available at the time of writing.
Client Application-specific Issues
FileMaker
Why do FMP7 imports return errors saying I need FMP 5.5 or later?
Consult FileMaker support for assistance with this error.
Is it possible to establish a Perl connection to FMP 6 on the same Mac OS X host?
Yes. The architecture would look something like this:
Perl on Mac >> iODBC Driver Manager >> OpenLink Multi-Tier Generic Client ODBC Driver ... TCP/IP connection to Windows ... >> OpenLink Multi-Tier Request Broker & ODBC Bridge Agent >> MDAC (Microsoft Data Access Components) Driver Manager >> FileMaker Pro ODBC Driver ... TCP/IP connection to Mac ... >> FileMaker Pro
Why doesn't FMP9 see pre-existing User DSNs that I used with FMP 7, 8 & 8.5?
You may be encountering issues with older versions of the iODBC frameworks. Run these commands in a Terminal.app session:
sudo find / -name .*odbc*.ini -ls sudo find / -name *odbc*.ini -ls
The odbc.ini and odbcinst.ini files should not start with a period ("."), and they should be found only in /Library/ODBC/
or /Users/*/Library/ODBC/
.
If you encounter misnamed or misplaced files, consult OpenLink Product Support for assistance in cleaning things up.
Why can't FMPro Advanced 9.1 see or use functional User DSNs?
Users have reported that reinstallation of FMPA 9.1 resolved a visibility issue with pre-existing User DSNs. It is possible that the original FMPA installation was somehow corrupted.
Why does FMPro produce "Server Handle" errors when used with Express drivers?
FileMaker can not connect to OpenLink's Express Edition drivers using the CFM library due to compatibility issues with the JVM. This is an architectural dependency that cannot be changed. Consider use of our Multi-Tier or "Lite" Edition Single-Tier drivers.How can I use FMPro to perform calculations and update remote data without an update?
Contact FileMaker support for guidance in this area.
Why can't I populate LONGTEXT fields with more than 128 characters?
This is not an ODBC or Data Access Driver issue. Consult FileMaker support for additional guidance.
Omnis
Why does Omnis crash when used with your drivers?
This error occurs due to sub-optimal library linkage in Omnis Studio. Omnis library linkage is not dynamic. Even thought it is compatible with newer versions of the iODBC driver manager frameworks, it is hard-linked to one, specific version. OpenLink will introduce an iODBC driver manager enhancement to work around this limitation. In the interim, OpenLink Product Support can assist you with the creation of soft-links that will resolve the immediate problem.
Microsoft Excel and Microsoft Query
Why does Excel produce "Unable to allocate server handle" errors?
Are you running Excel on an Intel-based Mac along with our ODBC Driver for JDBC Data Sources or our Express Edition drivers? Our JDBC-related drivers cannot be used by PPC-native applications (such as MS Excel/Query v.X through 2008) on Intel Macs, due to limitations in Apple's JVM.
The PPC-native application will load the PPC-native segment of the iODBC Driver Manager, and in turn, the PPC-native segment of the ODBC driver -- but there is no PPC-native segment of the JVM. It only installs with Intel-native binaries on Intel-based Macs.
Consult OpenLink Product Support to review your options.
Why doesn't Query list all the tables in the target data source?
Microsoft Query issues the SQLTables()
ODBC API call.
This API call takes several arguments: TABLE
, VIEW
, SYNONYM
, etc.
Microsoft Query only asks for TABLE
; our ODBC driver therefore correctly leaves out the VIEW
s and other table types.
We have introduced an enhancement into our driver to work around this issue. That said, you can manually create any query you like; the limitation only affects the graphical query builder.
Parallels or VMware
What IP address do I pass in DSNs, if Multi-Tier server components run on a Windows instance on Parallels or VMware?
The Data Source Name should use the IP address of the Windows instance. The Windows instance should get its own IP address -- distinct from the Mac's IP address -- via DHCP, hardcoding, etc.
iODBCNet
Is iODBCNet compatible with iODBC and Mac OS X?
AugSoft's "iODBCNet" installation can cause significant problems with the iODBC infrastructure on the Mac. They create files in locations they should not, change settings they should not touch, and over-write libraries with outdated versions of the same. If you are not actively using the iODBCNet components at this time, consider removal. If you must use the iODBCNet software, consult OpenLink Product Support.Diagnostics
How do I trace on Mac OS X clients?
- Launch OpenLink ODBC Administrator.app.
- Click the Tracing tab.
- Tick the radio-buttons for "All the time" and "All users."
- Designate a target file, e.g.,
~/Desktop/iodbc.$p.$t.log
- The
$p
and$t
tokens will be replaced by the client application Process ID and a Timestamp, so that logs don't over-write each other.
Can I list all the ODBC drivers on my Mac and their versions?
Executing the following command in Terminal.app will reveal all properly installed OpenLink drivers and their versions.
sudo find /{Users/*/Library,Library}/ODBC \( -name oplodbc.so -o -name "*lt.so" \) -exec ls -l {} \; -exec strings {} \; | grep "Compiled\|Version 0\|oplodbc\|lt.so\|05\.0[012]"</td>
Drivers from other vendors may have other means of interrogation. Most of this information may also be seen through the Drivers tab of the OpenLink ODBC Administrator.app.
How can I display the internal version (build numbers, etc.) of the iODBC components on Mac OS X?
Use the `iODBC Test.command` (/Applications/iODBC/) to test a DSN. When it launches, you'll see the iODBC version. You will also receive a list of DSNs available for use. Enter a connect string of the following form --
DSN=<dsn>[;UID=<username>[;PWD=<password>]]
-- e.g., --
DSN=oracle-dsn;UID=scott;PWD=tiger
Upon successful connection, you'll see the driver name and version printed above the SQL> prompt.
How can I get hardware, memory, and processor information on a Mac?
Run this command:
system_profiler SPHardwareDataType
How can I return system version and kernel version information on a Mac?
Run this command:
system_profiler SPSoftwareDataType
Errors
Not a Mach-O MH_BUNDLE file type
This error could occur if you have a combination of Universal and PowerPC software on the Mac OS X host.
Resolution would consist of removal of all OpenLink components and re-installation with guidance from OpenLink Product Support.
The file
command can be used to verify whether or not particular components are Universal or PPC-based.
For example:
% file sql_st_lt.so sql_st_lt.so: Mach-O bundle ppc
Software Removal
How do I uninstall OpenLink components on Mac OS X?
Use the following sequence to perform a clean uninstall of all iODBC and Data Access components added by installers from OpenLink Software.
- Double-click the
Uninstall.command
script (/Applications/OpenLink/Universal Data Access Drivers (* Tier Edition)/
). If the script is not present, skip ahead to #3. - Answer the questions posed by the script.
Please note that you must answer with the mixed-case, full-word answers.
Anything other than `
Yes
`, `All
`, or `Quit
`, will be interpreted as `No
`, including `y
`, `Y
`, and `yes
`. - Verify that all of the following directories (including contents), and specified individual files, have been removed --
/Applications/iODBC /Applications/OpenLink* /Library/Application Support/iodbc /Library/Application Support/openlink /Library/Frameworks/iODBC* /Library/Java/Extensions/libopljodbc*.jnilib /Library/Java/Extensions/opljdbc*.jar /Library/Java/Extensions/virtjdbc*.jar /Library/LaunchDaemons/com.openlinksw.* /Library/ODBC/OpenLink* /Library/Receipts/iODBC* /Library/Receipts/Opl* /Library/Receipts/UDA* /Library/Receipts/VIRT* /Library/Receipts/Virt* /Library/StartupItems/Oplmgr /Users/*/Library/Preferences/com.openlinksw* /Users/*/Library/Saved Application State/com.openlinksw* /private/var/db/receipts/com.openlinksw.*
- You can copy and paste the following command into Terminal.app to remove all of the above --
sudo rm -rf /Applications/iODBC /Applications/OpenLink* "/Library/Application Support/iodbc" "/Library/Application Support/openlink" /Library/Frameworks/iODBC* /Library/LaunchDaemons/com.openlinksw.* /Library/ODBC/OpenLink* /Library/Receipts/iODBC* /Library/Receipts/Opl* /Library/Receipts/UDA* /Library/Receipts/VIRT* /Library/Receipts/Virt* /Library/StartupItems/Oplmgr /Library/Java/Extensions/libopljodbc* /Library/Java/Extensions/opljdbc* /Library/Java/Extensions/virtjdbc* /Users/*/Library/Preferences/com.openlinksw* /Users/*/Library/Saved\ Application\ State/com.openlinksw* /private/var/db/receipts/com.openlinksw.*
See Also
Referenced by...