| Summary: | libodbccr symlink | ||
|---|---|---|---|
| Product: | Red Hat Enterprise Linux 6 | Reporter: | slimeypete |
| Component: | unixODBC | Assignee: | Tom Lane <tgl> |
| Status: | CLOSED INSUFFICIENT_DATA | QA Contact: | qe-baseos-daemons |
| Severity: | high | Docs Contact: | |
| Priority: | unspecified | ||
| Version: | 6.1 | CC: | blaeul, hhorak, milan.kerslager |
| Target Milestone: | rc | ||
| Target Release: | --- | ||
| Hardware: | x86_64 | ||
| OS: | Linux | ||
| Whiteboard: | |||
| Fixed In Version: | Doc Type: | Bug Fix | |
| Doc Text: | Story Points: | --- | |
| Clone Of: | Environment: | ||
| Last Closed: | 2011-10-21 03:58:09 UTC | Type: | --- |
| Regression: | --- | Mount Type: | --- |
| Documentation: | --- | CRM: | |
| Verified Versions: | Category: | --- | |
| oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |
| Cloudforms Team: | --- | Target Upstream Version: | |
This request was evaluated by Red Hat Product Management for inclusion in the current release of Red Hat Enterprise Linux. Because the affected component is not scheduled to be updated in the current release, Red Hat is unfortunately unable to address this request at this time. Red Hat invites you to ask your support representative to propose this request, if appropriate and relevant, in the next release of Red Hat Enterprise Linux. If you would like it considered as an exception in the current release, please ask your support representative. I can't reproduce this given what I understand the test case to be, namely create a file test.php containing
<?php
$odbc_pdo = new PDO("odbc:mydsn", "myuser", "mypassword");
?>
and run it with "php -f test.php". It appears to work fine for me,
Please provide a more concrete test case that assumes I know nothing at all about PHP (which is close enough to true).
Closing for lack of information. I have similar problem with RHEL 7. Seems like unixODBC uses file/library locations different from what RHEL distribution contains. I had a quite similar error message and solution on a 64-bit Debian: Can't open cursor lib '/etc/libodbccr.so' : file not found My solution was to execute "ln -s libodbccr.so.2 libodbccr.so" in the directory "/usr/lib/x86_64-linux-gnu". My Debian is (according to uname -a) 3.16.0-4-amd64 #1 SMP Debian 3.16.7-ckt9-3~deb8u1. After this fix I could successfully connect to a MDB Access database using PHP. The error above was thrown by the 'new PDO' line below: $sDriver = 'MDBTools'; $sConnection = "odbc:Driver=$sDriver; DBQ=$sFile;"; $db = new PDO($sConnection); |
Description of problem: When using PHP PDO ODBC I found that UnixODBC reports the following in the ODBC trace log: [[unixODBC][Driver Manager]Can't open cursor lib 'libodbccr' : file not found] [ODBC][9797][1310038018.060407][SQLGetDiagRec.c][661] I found that the way to 'fix' this was: root@blunt:/usr/lib64/$ ln -s libodbccr.so.2.0.0 libodbccr.so.1 ... so I presume UnixODBC is trying to link to libodbccr.so.1 instead of libodbccr.so.2 . Version-Release number of selected component (if applicable): x86_64 2.2.14 11.el6 How reproducible: 100% Steps to Reproduce: 1. Create a PHP file which does this: $odbc_pdo = new PDO("odbc:mydsn", "myuser", "mypassword"); Actual results: The connection is created Expected results: PHP crashes out and Apache complains that the child process exited unexpectedly. Additional info: I presume this is applicable to more general usage of UnixODBC when cursors are being used.