Segfault-Inc / Multicorn

Data Access Library
https://multicorn.org/
PostgreSQL License
701 stars 145 forks source link

When creating extension, getting could not open extension control file "/usr/share/postgresql/9.4/extension/multicorn.control": No such file or directory #167

Closed max-l closed 7 years ago

max-l commented 7 years ago

When I run

 CREATE EXTENSION multicorn;

I get :

[58P01] ERROR: could not open extension control file "/usr/share/postgresql/9.4/extension/multicorn.control": No such file or directory

in the last lines of the pgxnclient output, the installer seems to think I am installing on pg 9.5 , while I am in fact installing over a pg 9.4 version

   /usr/bin/install -c -m 644 .//multicorn.control '/usr/share/postgresql/9.5/extension/'

I have installed multicorn tieh pgxn.

output of "sudo pgxn install multicorn" :

INFO: best version: multicorn 1.3.2
INFO: saving /tmp/tmpH5Nli5/multicorn-1.3.2.zip
INFO: unpacking: /tmp/tmpH5Nli5/multicorn-1.3.2.zip
INFO: building extension
Python version is 2.7
[ -d sql ] || mkdir sql
[ -d src ] || mkdir src
touch directories.stamp
gcc -Wall -Wmissing-prototypes -Wpointer-arith -Wdeclaration-after-statement -Wendif-labels -Wmissing-format-attribute -Wformat-security -fno-strict-aliasing -fwrapv -fexcess-precision=standard -g -g -O2 -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -I/usr/include/mit-krb5 -fPIC -pie -fno-omit-frame-pointer -fpic -I. -I./ -I/usr/include/python2.7 -I. -I./ -I/usr/include/postgresql/9.5/server -I/usr/include/postgresql/internal -D_FORTIFY_SOURCE=2 -D_GNU_SOURCE -I/usr/include/libxml2  -I/usr/include/tcl8.6  -c -o src/errors.o src/errors.c
gcc -Wall -Wmissing-prototypes -Wpointer-arith -Wdeclaration-after-statement -Wendif-labels -Wmissing-format-attribute -Wformat-security -fno-strict-aliasing -fwrapv -fexcess-precision=standard -g -g -O2 -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -I/usr/include/mit-krb5 -fPIC -pie -fno-omit-frame-pointer -fpic -I. -I./ -I/usr/include/python2.7 -I. -I./ -I/usr/include/postgresql/9.5/server -I/usr/include/postgresql/internal -D_FORTIFY_SOURCE=2 -D_GNU_SOURCE -I/usr/include/libxml2  -I/usr/include/tcl8.6  -c -o src/python.o src/python.c
gcc -Wall -Wmissing-prototypes -Wpointer-arith -Wdeclaration-after-statement -Wendif-labels -Wmissing-format-attribute -Wformat-security -fno-strict-aliasing -fwrapv -fexcess-precision=standard -g -g -O2 -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -I/usr/include/mit-krb5 -fPIC -pie -fno-omit-frame-pointer -fpic -I. -I./ -I/usr/include/python2.7 -I. -I./ -I/usr/include/postgresql/9.5/server -I/usr/include/postgresql/internal -D_FORTIFY_SOURCE=2 -D_GNU_SOURCE -I/usr/include/libxml2  -I/usr/include/tcl8.6  -c -o src/query.o src/query.c
gcc -Wall -Wmissing-prototypes -Wpointer-arith -Wdeclaration-after-statement -Wendif-labels -Wmissing-format-attribute -Wformat-security -fno-strict-aliasing -fwrapv -fexcess-precision=standard -g -g -O2 -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -I/usr/include/mit-krb5 -fPIC -pie -fno-omit-frame-pointer -fpic -I. -I./ -I/usr/include/python2.7 -I. -I./ -I/usr/include/postgresql/9.5/server -I/usr/include/postgresql/internal -D_FORTIFY_SOURCE=2 -D_GNU_SOURCE -I/usr/include/libxml2  -I/usr/include/tcl8.6  -c -o src/multicorn.o src/multicorn.c
gcc -Wall -Wmissing-prototypes -Wpointer-arith -Wdeclaration-after-statement -Wendif-labels -Wmissing-format-attribute -Wformat-security -fno-strict-aliasing -fwrapv -fexcess-precision=standard -g -g -O2 -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -I/usr/include/mit-krb5 -fPIC -pie -fno-omit-frame-pointer -fpic -shared -o multicorn.so src/errors.o src/python.o src/query.o src/multicorn.o -L/usr/lib/x86_64-linux-gnu -Wl,-Bsymbolic-functions -Wl,-z,relro -Wl,-z,now -Wl,--as-needed -L/usr/lib/mit-krb5 -L/usr/lib/x86_64-linux-gnu/mit-krb5  -Wl,--as-needed  -L/usr/lib -lpython2.7 -lpthread -ldl  -lutil -lm 
.//preflight-check.sh
cp sql/multicorn.sql sql/multicorn--1.3.2.sql
INFO: installing extension
Python version is 2.7
.//preflight-check.sh
/bin/mkdir -p '/usr/lib/postgresql/9.5/lib'
/bin/mkdir -p '/usr/share/postgresql/9.5/extension'
/bin/mkdir -p '/usr/share/postgresql/9.5/extension'
/bin/mkdir -p '/usr/share/doc/postgresql-doc-9.5/extension'
/usr/bin/install -c -m 755  multicorn.so '/usr/lib/postgresql/9.5/lib/multicorn.so'
cp .//setup.py ./setup--1.3.2.py
sed -i -e "s/__VERSION__/1.3.2-dev/g" ./setup--1.3.2.py
python2.7 ./setup--1.3.2.py install
running install
running bdist_egg
running egg_info
creating python/multicorn.egg-info
writing python/multicorn.egg-info/PKG-INFO
writing top-level names to python/multicorn.egg-info/top_level.txt
writing dependency_links to python/multicorn.egg-info/dependency_links.txt
writing manifest file 'python/multicorn.egg-info/SOURCES.txt'
reading manifest file 'python/multicorn.egg-info/SOURCES.txt'
writing manifest file 'python/multicorn.egg-info/SOURCES.txt'
installing library code to build/bdist.linux-x86_64/egg
running install_lib
running build_py
creating build
creating build/lib.linux-x86_64-2.7
creating build/lib.linux-x86_64-2.7/multicorn
copying python/multicorn/compat.py -> build/lib.linux-x86_64-2.7/multicorn
copying python/multicorn/__init__.py -> build/lib.linux-x86_64-2.7/multicorn
copying python/multicorn/sqlalchemyfdw.py -> build/lib.linux-x86_64-2.7/multicorn
copying python/multicorn/csvfdw.py -> build/lib.linux-x86_64-2.7/multicorn
copying python/multicorn/gitfdw.py -> build/lib.linux-x86_64-2.7/multicorn
copying python/multicorn/googlefdw.py -> build/lib.linux-x86_64-2.7/multicorn
copying python/multicorn/ldapfdw.py -> build/lib.linux-x86_64-2.7/multicorn
copying python/multicorn/testfdw.py -> build/lib.linux-x86_64-2.7/multicorn
copying python/multicorn/imapfdw.py -> build/lib.linux-x86_64-2.7/multicorn
copying python/multicorn/processfdw.py -> build/lib.linux-x86_64-2.7/multicorn
copying python/multicorn/statefdw.py -> build/lib.linux-x86_64-2.7/multicorn
copying python/multicorn/gcfdw.py -> build/lib.linux-x86_64-2.7/multicorn
copying python/multicorn/xmlfdw.py -> build/lib.linux-x86_64-2.7/multicorn
copying python/multicorn/rssfdw.py -> build/lib.linux-x86_64-2.7/multicorn
copying python/multicorn/utils.py -> build/lib.linux-x86_64-2.7/multicorn
creating build/lib.linux-x86_64-2.7/multicorn/fsfdw
copying python/multicorn/fsfdw/structuredfs.py -> build/lib.linux-x86_64-2.7/multicorn/fsfdw
copying python/multicorn/fsfdw/docutils_meta.py -> build/lib.linux-x86_64-2.7/multicorn/fsfdw
copying python/multicorn/fsfdw/restfsfdw.py -> build/lib.linux-x86_64-2.7/multicorn/fsfdw
copying python/multicorn/fsfdw/__init__.py -> build/lib.linux-x86_64-2.7/multicorn/fsfdw
copying python/multicorn/fsfdw/test.py -> build/lib.linux-x86_64-2.7/multicorn/fsfdw
running build_ext
building 'multicorn._utils' extension
creating build/temp.linux-x86_64-2.7
creating build/temp.linux-x86_64-2.7/src
x86_64-linux-gnu-gcc -pthread -fno-strict-aliasing -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -fPIC -I/usr/include/postgresql -I/usr/include/postgresql -I/usr/include/postgresql/9.5/server -I/usr/include/python2.7 -c src/utils.c -o build/temp.linux-x86_64-2.7/src/utils.o -shared
src/utils.c: In function ‘init_utils’:
src/utils.c:163:23: warning: variable ‘st’ set but not used [-Wunused-but-set-variable]
  struct module_state *st;
                       ^
x86_64-linux-gnu-gcc -pthread -shared -Wl,-O1 -Wl,-Bsymbolic-functions -Wl,-Bsymbolic-functions -Wl,-z,relro -fno-strict-aliasing -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -D_FORTIFY_SOURCE=2 -g -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security build/temp.linux-x86_64-2.7/src/utils.o -o build/lib.linux-x86_64-2.7/multicorn/_utils.so
creating build/bdist.linux-x86_64
creating build/bdist.linux-x86_64/egg
creating build/bdist.linux-x86_64/egg/multicorn
copying build/lib.linux-x86_64-2.7/multicorn/compat.py -> build/bdist.linux-x86_64/egg/multicorn
copying build/lib.linux-x86_64-2.7/multicorn/csvfdw.py -> build/bdist.linux-x86_64/egg/multicorn
copying build/lib.linux-x86_64-2.7/multicorn/utils.py -> build/bdist.linux-x86_64/egg/multicorn
copying build/lib.linux-x86_64-2.7/multicorn/__init__.py -> build/bdist.linux-x86_64/egg/multicorn
copying build/lib.linux-x86_64-2.7/multicorn/gitfdw.py -> build/bdist.linux-x86_64/egg/multicorn
copying build/lib.linux-x86_64-2.7/multicorn/googlefdw.py -> build/bdist.linux-x86_64/egg/multicorn
copying build/lib.linux-x86_64-2.7/multicorn/gcfdw.py -> build/bdist.linux-x86_64/egg/multicorn
copying build/lib.linux-x86_64-2.7/multicorn/imapfdw.py -> build/bdist.linux-x86_64/egg/multicorn
copying build/lib.linux-x86_64-2.7/multicorn/testfdw.py -> build/bdist.linux-x86_64/egg/multicorn
creating build/bdist.linux-x86_64/egg/multicorn/fsfdw
copying build/lib.linux-x86_64-2.7/multicorn/fsfdw/test.py -> build/bdist.linux-x86_64/egg/multicorn/fsfdw
copying build/lib.linux-x86_64-2.7/multicorn/fsfdw/structuredfs.py -> build/bdist.linux-x86_64/egg/multicorn/fsfdw
copying build/lib.linux-x86_64-2.7/multicorn/fsfdw/__init__.py -> build/bdist.linux-x86_64/egg/multicorn/fsfdw
copying build/lib.linux-x86_64-2.7/multicorn/fsfdw/restfsfdw.py -> build/bdist.linux-x86_64/egg/multicorn/fsfdw
copying build/lib.linux-x86_64-2.7/multicorn/fsfdw/docutils_meta.py -> build/bdist.linux-x86_64/egg/multicorn/fsfdw
copying build/lib.linux-x86_64-2.7/multicorn/_utils.so -> build/bdist.linux-x86_64/egg/multicorn
copying build/lib.linux-x86_64-2.7/multicorn/ldapfdw.py -> build/bdist.linux-x86_64/egg/multicorn
copying build/lib.linux-x86_64-2.7/multicorn/statefdw.py -> build/bdist.linux-x86_64/egg/multicorn
copying build/lib.linux-x86_64-2.7/multicorn/processfdw.py -> build/bdist.linux-x86_64/egg/multicorn
copying build/lib.linux-x86_64-2.7/multicorn/xmlfdw.py -> build/bdist.linux-x86_64/egg/multicorn
copying build/lib.linux-x86_64-2.7/multicorn/sqlalchemyfdw.py -> build/bdist.linux-x86_64/egg/multicorn
copying build/lib.linux-x86_64-2.7/multicorn/rssfdw.py -> build/bdist.linux-x86_64/egg/multicorn
byte-compiling build/bdist.linux-x86_64/egg/multicorn/compat.py to compat.pyc
byte-compiling build/bdist.linux-x86_64/egg/multicorn/csvfdw.py to csvfdw.pyc
byte-compiling build/bdist.linux-x86_64/egg/multicorn/utils.py to utils.pyc
byte-compiling build/bdist.linux-x86_64/egg/multicorn/__init__.py to __init__.pyc
byte-compiling build/bdist.linux-x86_64/egg/multicorn/gitfdw.py to gitfdw.pyc
byte-compiling build/bdist.linux-x86_64/egg/multicorn/googlefdw.py to googlefdw.pyc
byte-compiling build/bdist.linux-x86_64/egg/multicorn/gcfdw.py to gcfdw.pyc
byte-compiling build/bdist.linux-x86_64/egg/multicorn/imapfdw.py to imapfdw.pyc
byte-compiling build/bdist.linux-x86_64/egg/multicorn/testfdw.py to testfdw.pyc
byte-compiling build/bdist.linux-x86_64/egg/multicorn/fsfdw/test.py to test.pyc
byte-compiling build/bdist.linux-x86_64/egg/multicorn/fsfdw/structuredfs.py to structuredfs.pyc
byte-compiling build/bdist.linux-x86_64/egg/multicorn/fsfdw/__init__.py to __init__.pyc
byte-compiling build/bdist.linux-x86_64/egg/multicorn/fsfdw/restfsfdw.py to restfsfdw.pyc
byte-compiling build/bdist.linux-x86_64/egg/multicorn/fsfdw/docutils_meta.py to docutils_meta.pyc
byte-compiling build/bdist.linux-x86_64/egg/multicorn/ldapfdw.py to ldapfdw.pyc
byte-compiling build/bdist.linux-x86_64/egg/multicorn/statefdw.py to statefdw.pyc
byte-compiling build/bdist.linux-x86_64/egg/multicorn/processfdw.py to processfdw.pyc
byte-compiling build/bdist.linux-x86_64/egg/multicorn/xmlfdw.py to xmlfdw.pyc
byte-compiling build/bdist.linux-x86_64/egg/multicorn/sqlalchemyfdw.py to sqlalchemyfdw.pyc
byte-compiling build/bdist.linux-x86_64/egg/multicorn/rssfdw.py to rssfdw.pyc
creating stub loader for multicorn/_utils.so
byte-compiling build/bdist.linux-x86_64/egg/multicorn/_utils.py to _utils.pyc
creating build/bdist.linux-x86_64/egg/EGG-INFO
copying python/multicorn.egg-info/PKG-INFO -> build/bdist.linux-x86_64/egg/EGG-INFO
copying python/multicorn.egg-info/SOURCES.txt -> build/bdist.linux-x86_64/egg/EGG-INFO
copying python/multicorn.egg-info/dependency_links.txt -> build/bdist.linux-x86_64/egg/EGG-INFO
copying python/multicorn.egg-info/top_level.txt -> build/bdist.linux-x86_64/egg/EGG-INFO
writing build/bdist.linux-x86_64/egg/EGG-INFO/native_libs.txt
zip_safe flag not set; analyzing archive contents...
multicorn.fsfdw.test: module references __file__
creating dist
creating 'dist/multicorn-1.3.2-py2.7-linux-x86_64.egg' and adding 'build/bdist.linux-x86_64/egg' to it
removing 'build/bdist.linux-x86_64/egg' (and everything under it)
Processing multicorn-1.3.2-py2.7-linux-x86_64.egg
creating /usr/local/lib/python2.7/dist-packages/multicorn-1.3.2-py2.7-linux-x86_64.egg
Extracting multicorn-1.3.2-py2.7-linux-x86_64.egg to /usr/local/lib/python2.7/dist-packages
Adding multicorn 1.3.2 to easy-install.pth file

Installed /usr/local/lib/python2.7/dist-packages/multicorn-1.3.2-py2.7-linux-x86_64.egg
Processing dependencies for multicorn==1.3.2
Finished processing dependencies for multicorn==1.3.2
rm ./setup--1.3.2.py
/usr/bin/install -c -m 644 .//multicorn.control '/usr/share/postgresql/9.5/extension/'
/usr/bin/install -c -m 644 .//sql/multicorn--1.3.2.sql  '/usr/share/postgresql/9.5/extension/'
/usr/bin/install -c -m 644 .//.//doc/multicorn.md '/usr/share/doc/postgresql-doc-9.5/extension/'
max-l commented 7 years ago

The problem was caused by installing this :

apt-get install postgresql-server-dev-all

which was a pre requisite for running "pgxn install multicorn"

the problem would have been avoided by only installing the specific version

apt-get install postgresql-server-dev-9.4 

see: http://stackoverflow.com/questions/30143046/pg-config-shows-9-4-instead-of-9-3/39473680#39473680

So it's not really a multicorn problem, but the doc could help by saying that apt-get install postgresql-server-dev-CURRENT_PG_VERSION needs to be installed on ubuntu 14