undefined symbol SQLAllocHandle using perl on Ubuntu - sql-server

It seems like the perl program is trying to load the ODBC.so file instead of the freetds file that should be used instead. It's giving a symbol lookup error message. Trying to find SQLAllocHandle in ODBC.so
Has anyone ran into this error before? Just got done installing the drivers so I'm completely at a loss and utterly confused.

Found out the issue. iodbc drivers were affecting the unixodbc drivers. So I removed the iodbc files from /usr/lib.
Removed the DBD::ODBC module and then reinstalled it.
Fixed.

Related

Compiling embedded linux drivers

This might have passed to the unix and linux stack exchange, but since it involves compiling, i am posting it here.
I want to compile usbserial, usb-wwan, and/or qcserial drivers for 2.6.35-9 Debian for ARMv7.
First problem, there is no 2.6.35-9 driver in the apt-get repos. I tried to compile with 2.6.32-kirkwood, while compilation works, insmod / modprobe, including -f, respectively --force switch fails, with the message :
insmod: error inserting 'usbserial.ko': -1 Invalid module format
I have looked up this and this. In this question, I was pointed to Debian 2.6.35-9 headers, but they did not install, for some dependency problem (Error message : Couldn't resolve dependency, without a list of missing dependencies). So I opened the .deb with ar, but it does not contain anything besides under data.tar.gz a /usr/share/doc ... etc - so no usable header files (or am I missing something?)
I am doing the compilation on the target machine (A Mirabox from Marvell) itself.
So, my question is,
Can I download the Ubuntu 2.6.35 headers? Ubuntu uses Debian core, and the linux kernel is the same, with adaptions to the distro, or it is a fatal error? Is there any Armv7 header for a 2.6.35-9 at all?
If not, then what do I do? Where do I get the correct header files?
Also, 2.6.35 code for usbserial / qcserial is buggy anyway. I was using the code from the 3.2 kernel, thinking the errors might have been fixed. Was it a bad choice? If so, what to do

libavdevice.dylib is the wrong version, how do I update it?

I am running osx 10.9 mavericks and unfortunately DaVinci Resolve no longer works. I think it has a possibility of working as the error message I get is this:
Dyld Error Message:
Library not loaded: #executable_path/../Libraries/libavdevice.dylib
Referenced from: /Applications/DaVinci Resolve.app/Contents/MacOS/Resolve
Reason: Incompatible library version: Resolve requires version 54.0.0 or later, but libavdevice.dylib provides version 52.0.0
I tried downloading ffmpeg and replacing the dylib but that didn't work. Anybody know how to update it?
I suggest using a package management tool Homebrew or MacPorts. My preference is Homebrew.
Alternatively you could install ffmpeg from source and get all the associated libav libraries

Problems building libmemcached on Mac OSX (and Mint, and CentOS)

Downloaded the tarball from https://launchpad.net/libmemcached/+download/libmemcached-1.0.12.tar.gz (linked to from libmemcached.org). Ran the usual ./configure + make protocol, got a number of errors related to implicitly converting 64-bit value to 32-bit, and eventually a failure to find event.h.
Earlier, tried installing on Mint (./libtool: line 1125: g++: command not found) and CentOS (./libmemcached-1.0/memcached.h:46:27: error: tr1/cinttypes: No such file or directory)
I'm not too bright when it comes to debugging this, but I'm very used to ./configure + make "just working". Anybody able to help?
Thanks,
Chap
I meet it yet. And, I found it :
https://github.com/mxcl/homebrew/issues/20635
In the page, the error been found is a libmemcahed bug that had been report as https://bugs.launchpad.net/libmemcached/+bug/1216521

Qemu configure throws zlib,pthread and kvm missing errors

I have been trying to get my qemu version running on a new machine. I installed zlib1g-dev, zlib-bin etc. When I do a whereis zlib, I get
zlib: /usr/include/zlib.h /usr/share/man/man3/zlib.3.gz
I tried compiling and installing zlib from source too, but the same issue was present.
The exact error I get is
big/little test failed
Error: zlib check failed
Make sure to have the zlib libs and headers installed.
Additionally, if I comment out the the exit due to this, I get
Error: pthread check failed
and
ERROR: User requested feature kvm
ERROR: configure was not able to find it
kvm modules are enabled and the machine supports hardware virtualization. I had checked it using kvm-ok. lsmod shows kvm and kvm_intel modules.
I am really stumped about these errors. Any help or pointers would be greatly appreciated.
I am still not sure of the actual dependencies that caused the problem, but all the issues were fixed by using
sudo apt-get depmod qemu
After this, I am now able to configure qemu

unixodbc and netezza ODBC driver issue (Undefined symbol: SSL_connect)

I'm trying to set up unixODBC to connect to a Netezza database, however I'm getting a "Undefined symbol: SSL_connect" when I try to connect using isql.
Currently using: CentOS 5.5, unixODBC 2.3.0 (Same issue with 2.2.11).
I have done the following:
Configured the LD_LIBRARY_PATH, ODBCINI, and NZ_INI_FILE_PATH according to the README.txt that came with the ODBC drivers.
Ensued that all libraries are loaded by using the ldd command and setting up symbolic links for libssl and libcrypto.
Updated the /etc/ld.so.conf file to ensure the netezza drivers path is loaded.
Used nm to confirm that the SSL_connect symbol is in the driver.
Running dltest against the file for this symbol reports a "file not found" error, which is what I normally get when I try to run isql -v, however I changed the LD_DEBUG environment variable to get additional debugging info, which led me to SSL_connect.
(FYI, export LD_DEBUG=files isql sospos is what I used.)
Any thoughts? This is driving my crazy as it appears everything is there, but it's still not working. Worst part is that I set up the same thing on Ubuntu 10.10 months ago and it worked without any issues.
UPDATE:
First, ldd on the libnzodbc.so file looks good. All dependencies have been satisfied.
Second, the only thing I could see in the file that was missing was the libc.mo file for the en_US locale, so I set up a symbolic link to the en_GB one. Unfortunately, it's still throwing the same error even though it it looks like it found every other lib it's looking for. Is there anything else in the strace output I should be looking for?
UPDATE 2:
An issue I'm currently seeing is that isql is looking for gconv_end in ISO8859-1.so, however that symbol does not exist. Interestingly enough, the symbol does not exist on my Ubuntu server VM and isql works fine. Both versions of unixODBC I specified above have the same issue.
UPDATE 3:
O.K. Re-ran ldd with the -d and -r options and yes, there are still issues. Every SSL* symbol is missing. I'm guessing this means that I created a symbolic link to the wrong file. Anyone know which ssl library file contains SSL_connect?
O.K. Figured it out. It turns out the symbolic link I created was pointing to the wrong library file. Originally I did this:
(/usr/lib/) ln -s libssl3.so libssl.so.4
I should have done this:
(/usr/lib) ln -s ../../lib/libssl.so.0.9.8e libssl.so.4
Well, SSL_connect is from the OpenSSL libs. Maybe you could try using strace on isql and post the parts where it fails (I suspect) to load a libssl. It may be that your existing ssl lib doesn't match what the driver is looking for. What does ldd show on the driver lib?
If anyone is still looking at a similar issue, there's a django-netezza package that works well: https://github.com/msabramo/django-netezza

Resources