Issue 236: pyodbc will not install python 2.6 ubuntu 10.04
Status:  NoFix
Owner: ----
Closed:  Jun 2012
Reported by hugo.koo...@dikw.com, Feb 1, 2012
What steps will reproduce the problem?
1. easy_install pyodbc

hugo@vaio:/etc/freetds$ easy_install pyodbc
/usr/lib/python2.6/dist-packages/setuptools/package_index.py:156: UserWarning: Unbuilt egg for setuptools [unknown version] (/usr/lib/python2.6/dist-packages)
  Environment.__init__(self,*args,**kw)
/usr/lib/python2.6/dist-packages/setuptools/command/easy_install.py:216: UserWarning: Unbuilt egg for setuptools [unknown version] (/usr/lib/python2.6/dist-packages)
  self.local_index = Environment(self.shadow_path+sys.path)
Searching for pyodbc
Reading http://pypi.python.org/simple/pyodbc/
Reading https://code.google.com/p/pyodbc
Reading https://code.google.com/p/pyodbc/downloads/list
Best match: pyodbc 3.0.3
Downloading http://pyodbc.googlecode.com/files/pyodbc-3.0.3.zip
Processing pyodbc-3.0.3.zip
Running pyodbc-3.0.3/setup.py -q bdist_egg --dist-dir /tmp/easy_install-AcqCX_/pyodbc-3.0.3/egg-dist-tmp-KepANX
cc1plus: warning: command line option "-Wstrict-prototypes" is valid for Ada/C/ObjC but not for C++
cc1plus: warning: command line option "-Wstrict-prototypes" is valid for Ada/C/ObjC but not for C++
cc1plus: warning: command line option "-Wstrict-prototypes" is valid for Ada/C/ObjC but not for C++
cc1plus: warning: command line option "-Wstrict-prototypes" is valid for Ada/C/ObjC but not for C++
cc1plus: warning: command line option "-Wstrict-prototypes" is valid for Ada/C/ObjC but not for C++
cc1plus: warning: command line option "-Wstrict-prototypes" is valid for Ada/C/ObjC but not for C++
cc1plus: warning: command line option "-Wstrict-prototypes" is valid for Ada/C/ObjC but not for C++
cc1plus: warning: command line option "-Wstrict-prototypes" is valid for Ada/C/ObjC but not for C++
cc1plus: warning: command line option "-Wstrict-prototypes" is valid for Ada/C/ObjC but not for C++
cc1plus: warning: command line option "-Wstrict-prototypes" is valid for Ada/C/ObjC but not for C++
cc1plus: warning: command line option "-Wstrict-prototypes" is valid for Ada/C/ObjC but not for C++
/tmp/easy_install-AcqCX_/pyodbc-3.0.3/src/getdata.cpp: In function ‘PyObject* GetDataDecimal(Cursor*, Py_ssize_t)’:
/tmp/easy_install-AcqCX_/pyodbc-3.0.3/src/getdata.cpp:487: warning: comparison between signed and unsigned integer expressions
cc1plus: warning: command line option "-Wstrict-prototypes" is valid for Ada/C/ObjC but not for C++
/usr/bin/ld: cannot find -lodbc
collect2: ld returned 1 exit status
error: Setup script exited with error: command 'g++' failed with exit status 1

2. build from source

hugo@vaio:~/python/pyodbc-3.0.3$ python setup.py build install
running build
running build_ext
building 'pyodbc' extension
creating build
creating build/temp.linux-x86_64-2.6
creating build/temp.linux-x86_64-2.6/home
creating build/temp.linux-x86_64-2.6/home/hugo
creating build/temp.linux-x86_64-2.6/home/hugo/python
creating build/temp.linux-x86_64-2.6/home/hugo/python/pyodbc-3.0.3
creating build/temp.linux-x86_64-2.6/home/hugo/python/pyodbc-3.0.3/src
gcc -pthread -fno-strict-aliasing -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -fPIC -DPYODBC_VERSION=3.0.3 -I/usr/include/python2.6 -c /home/hugo/python/pyodbc-3.0.3/src/pyodbccompat.cpp -o build/temp.linux-x86_64-2.6/home/hugo/python/pyodbc-3.0.3/src/pyodbccompat.o -Wno-write-strings
cc1plus: warning: command line option "-Wstrict-prototypes" is valid for Ada/C/ObjC but not for C++
gcc -pthread -fno-strict-aliasing -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -fPIC -DPYODBC_VERSION=3.0.3 -I/usr/include/python2.6 -c /home/hugo/python/pyodbc-3.0.3/src/pyodbcmodule.cpp -o build/temp.linux-x86_64-2.6/home/hugo/python/pyodbc-3.0.3/src/pyodbcmodule.o -Wno-write-strings
cc1plus: warning: command line option "-Wstrict-prototypes" is valid for Ada/C/ObjC but not for C++
gcc -pthread -fno-strict-aliasing -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -fPIC -DPYODBC_VERSION=3.0.3 -I/usr/include/python2.6 -c /home/hugo/python/pyodbc-3.0.3/src/errors.cpp -o build/temp.linux-x86_64-2.6/home/hugo/python/pyodbc-3.0.3/src/errors.o -Wno-write-strings
cc1plus: warning: command line option "-Wstrict-prototypes" is valid for Ada/C/ObjC but not for C++
gcc -pthread -fno-strict-aliasing -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -fPIC -DPYODBC_VERSION=3.0.3 -I/usr/include/python2.6 -c /home/hugo/python/pyodbc-3.0.3/src/buffer.cpp -o build/temp.linux-x86_64-2.6/home/hugo/python/pyodbc-3.0.3/src/buffer.o -Wno-write-strings
cc1plus: warning: command line option "-Wstrict-prototypes" is valid for Ada/C/ObjC but not for C++
gcc -pthread -fno-strict-aliasing -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -fPIC -DPYODBC_VERSION=3.0.3 -I/usr/include/python2.6 -c /home/hugo/python/pyodbc-3.0.3/src/connection.cpp -o build/temp.linux-x86_64-2.6/home/hugo/python/pyodbc-3.0.3/src/connection.o -Wno-write-strings
cc1plus: warning: command line option "-Wstrict-prototypes" is valid for Ada/C/ObjC but not for C++
gcc -pthread -fno-strict-aliasing -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -fPIC -DPYODBC_VERSION=3.0.3 -I/usr/include/python2.6 -c /home/hugo/python/pyodbc-3.0.3/src/cnxninfo.cpp -o build/temp.linux-x86_64-2.6/home/hugo/python/pyodbc-3.0.3/src/cnxninfo.o -Wno-write-strings
cc1plus: warning: command line option "-Wstrict-prototypes" is valid for Ada/C/ObjC but not for C++
gcc -pthread -fno-strict-aliasing -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -fPIC -DPYODBC_VERSION=3.0.3 -I/usr/include/python2.6 -c /home/hugo/python/pyodbc-3.0.3/src/getdata.cpp -o build/temp.linux-x86_64-2.6/home/hugo/python/pyodbc-3.0.3/src/getdata.o -Wno-write-strings
cc1plus: warning: command line option "-Wstrict-prototypes" is valid for Ada/C/ObjC but not for C++
/home/hugo/python/pyodbc-3.0.3/src/getdata.cpp: In function ‘PyObject* GetDataDecimal(Cursor*, Py_ssize_t)’:
/home/hugo/python/pyodbc-3.0.3/src/getdata.cpp:487: warning: comparison between signed and unsigned integer expressions
gcc -pthread -fno-strict-aliasing -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -fPIC -DPYODBC_VERSION=3.0.3 -I/usr/include/python2.6 -c /home/hugo/python/pyodbc-3.0.3/src/row.cpp -o build/temp.linux-x86_64-2.6/home/hugo/python/pyodbc-3.0.3/src/row.o -Wno-write-strings
cc1plus: warning: command line option "-Wstrict-prototypes" is valid for Ada/C/ObjC but not for C++
gcc -pthread -fno-strict-aliasing -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -fPIC -DPYODBC_VERSION=3.0.3 -I/usr/include/python2.6 -c /home/hugo/python/pyodbc-3.0.3/src/pyodbcdbg.cpp -o build/temp.linux-x86_64-2.6/home/hugo/python/pyodbc-3.0.3/src/pyodbcdbg.o -Wno-write-strings
cc1plus: warning: command line option "-Wstrict-prototypes" is valid for Ada/C/ObjC but not for C++
gcc -pthread -fno-strict-aliasing -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -fPIC -DPYODBC_VERSION=3.0.3 -I/usr/include/python2.6 -c /home/hugo/python/pyodbc-3.0.3/src/cursor.cpp -o build/temp.linux-x86_64-2.6/home/hugo/python/pyodbc-3.0.3/src/cursor.o -Wno-write-strings
cc1plus: warning: command line option "-Wstrict-prototypes" is valid for Ada/C/ObjC but not for C++
gcc -pthread -fno-strict-aliasing -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -fPIC -DPYODBC_VERSION=3.0.3 -I/usr/include/python2.6 -c /home/hugo/python/pyodbc-3.0.3/src/sqlwchar.cpp -o build/temp.linux-x86_64-2.6/home/hugo/python/pyodbc-3.0.3/src/sqlwchar.o -Wno-write-strings
cc1plus: warning: command line option "-Wstrict-prototypes" is valid for Ada/C/ObjC but not for C++
gcc -pthread -fno-strict-aliasing -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -fPIC -DPYODBC_VERSION=3.0.3 -I/usr/include/python2.6 -c /home/hugo/python/pyodbc-3.0.3/src/params.cpp -o build/temp.linux-x86_64-2.6/home/hugo/python/pyodbc-3.0.3/src/params.o -Wno-write-strings
cc1plus: warning: command line option "-Wstrict-prototypes" is valid for Ada/C/ObjC but not for C++
creating build/lib.linux-x86_64-2.6
g++ -pthread -shared -Wl,-O1 -Wl,-Bsymbolic-functions build/temp.linux-x86_64-2.6/home/hugo/python/pyodbc-3.0.3/src/pyodbccompat.o build/temp.linux-x86_64-2.6/home/hugo/python/pyodbc-3.0.3/src/pyodbcmodule.o build/temp.linux-x86_64-2.6/home/hugo/python/pyodbc-3.0.3/src/errors.o build/temp.linux-x86_64-2.6/home/hugo/python/pyodbc-3.0.3/src/buffer.o build/temp.linux-x86_64-2.6/home/hugo/python/pyodbc-3.0.3/src/connection.o build/temp.linux-x86_64-2.6/home/hugo/python/pyodbc-3.0.3/src/cnxninfo.o build/temp.linux-x86_64-2.6/home/hugo/python/pyodbc-3.0.3/src/getdata.o build/temp.linux-x86_64-2.6/home/hugo/python/pyodbc-3.0.3/src/row.o build/temp.linux-x86_64-2.6/home/hugo/python/pyodbc-3.0.3/src/pyodbcdbg.o build/temp.linux-x86_64-2.6/home/hugo/python/pyodbc-3.0.3/src/cursor.o build/temp.linux-x86_64-2.6/home/hugo/python/pyodbc-3.0.3/src/sqlwchar.o build/temp.linux-x86_64-2.6/home/hugo/python/pyodbc-3.0.3/src/params.o -lodbc -o build/lib.linux-x86_64-2.6/pyodbc.so
/usr/bin/ld: cannot find -lodbc
collect2: ld returned 1 exit status
error: command 'g++' failed with exit status 1


What is the expected output? What do you see instead?

I expect to install correctly ...
Did google on ld error output without luck

What version of the product are you using? On what operating system?

3.0.3 on ubuntu 10.04 with python 2.6

Please provide any additional information below.

Am i missing a prerequisite?

hugo
Feb 2, 2012
#1 j...@arasin.com
It appears as though you don't have unixodbc-dev installed.
Feb 7, 2012
#2 dreis...@gmail.com
I just had the same issue. Installing the unixodbc-dev package solved.

Got a lot of "command line option "-Wstrict-prototypes" is valid for Ada/C/ObjC but not for C++" warnings, but it installed correctly.
Jun 23, 2012
Project Member #3 mkleehammer
(No comment was entered for this change.)
Status: NoFix