Hi,
EPD uses a mingw64 gcc compiler by default. I think to build pyopencl
extensions with gcc you'll need at least compatible boost_python and
OpenCL link libraries, besides adjusting compiler and linker switches.
Try using Visual C compiler, e.g. "python setup.py build -cmsvc".
Btw, I just uploaded new builds (not tested yet).
Christoph
On 4/12/2011 8:52 PM, Daryl Bond wrote:
Hi all,
As the heading suggests I am having some issues with the build/install
process.
I downloaded the latest version of pyopencl from git and proceeded to
install following the instructions from the wiki:
System: windows 7 x64
Python 2.7: Enthought x64
Boost: boost 1.46.1
Built boost from source using bjam.
Using the following siteconf.py settings:
BOOST_INC_DIR = [r'C:\Boost\boost_1_46_1']
BOOST_LIB_DIR = [r'C:\Boost\boost_1_46_1\x64\lib']
BOOST_COMPILER = 'msvc'
BOOST_PYTHON_LIBNAME = ['boost_python-vc90-mt-1_46_1']
USE_SHIPPED_BOOST = False
CL_TRACE = False
CL_ENABLE_GL = False
CL_INC_DIR = [r'C:\Program Files (x86)\ATI Stream\include']
CL_LIB_DIR = [r'C:\Program Files (x86)\ATI Stream\lib\x86_64']
CL_LIBNAME = ['OpenCL']
CXXFLAGS = [‘/EHsc’,’/DBOOST_PYTHON_NO_PY_SIGNATURES’]
LDFLAGS = [‘/FORCE’]
Then:
python setup.py install
And get the following output:
running install
install_dir C:\Python27\Lib\site-packages\
running bdist_egg
running egg_info
writing requirements to pyopencl.egg-info\requires.txt
writing pyopencl.egg-info\PKG-INFO
writing top-level names to pyopencl.egg-info\top_level.txt
writing dependency_links to pyopencl.egg-info\dependency_links.txt
reading manifest file 'pyopencl.egg-info\SOURCES.txt'
reading manifest template 'MANIFEST.in'
writing manifest file 'pyopencl.egg-info\SOURCES.txt'
installing library code to build\bdist.win-amd64\egg
running install_lib
running build_py
copying pyopencl\array.py -> build\lib.win-amd64-2.7\pyopencl
copying pyopencl\characterize.py -> build\lib.win-amd64-2.7\pyopencl
copying pyopencl\clmath.py -> build\lib.win-amd64-2.7\pyopencl
copying pyopencl\clrandom.py -> build\lib.win-amd64-2.7\pyopencl
copying pyopencl\elementwise.py -> build\lib.win-amd64-2.7\pyopencl
copying pyopencl\reduction.py -> build\lib.win-amd64-2.7\pyopencl
copying pyopencl\scan.py -> build\lib.win-amd64-2.7\pyopencl
copying pyopencl\tools.py -> build\lib.win-amd64-2.7\pyopencl
copying pyopencl\version.py -> build\lib.win-amd64-2.7\pyopencl
copying pyopencl\_cluda.py -> build\lib.win-amd64-2.7\pyopencl
copying pyopencl\_mymako.py -> build\lib.win-amd64-2.7\pyopencl
copying pyopencl\__init__.py -> build\lib.win-amd64-2.7\pyopencl
running build_ext
building '_cl' extension
C:\Python27\Scripts\gcc.exe -mno-cygwin -mdll -O -Wall -DMS_WIN64
-DPYGPU_PACKAG
E=pyopencl -DPYGPU_PYOPENCL=1 -Isrc/cpp -IC:\Boost\boost_1_46_1
"-IC:\Program Fi
les (x86)\ATI Stream\include"
-IC:\Python27\lib\site-packages\numpy\core\include
-IC:\Python27\include -IC:\Python27\PC -c src/wrapper/wrap_cl.cpp -o
build\temp
.win-amd64-2.7\Release\src\wrapper\wrap_cl.o /EHsc
/DBOOST_PYTHON_NO_PY_SIGNATUR
ES
gcc.exe: /EHsc: No such file or directory
gcc.exe: /DBOOST_PYTHON_NO_PY_SIGNATURES: No such file or directory
In file included from
C:\Boost\boost_1_46_1/boost/python/object/make_instance.hp
p:9:0,
from C:\Boost\boost_1_46_1/boost/python/object/make_ptr_instanc
e.hpp:8,
from C:\Boost\boost_1_46_1/boost/python/to_python_indirect.hpp:
11,
from C:\Boost\boost_1_46_1/boost/python/converter/arg_to_python
.hpp:10,
from C:\Boost\boost_1_46_1/boost/python/call.hpp:15,
from C:\Boost\boost_1_46_1/boost/python/object_core.hpp:14,
from C:\Boost\boost_1_46_1/boost/python/object.hpp:9,
from C:\Boost\boost_1_46_1/boost/python/slice.hpp:11,
from src/wrapper/wrap_cl.hpp:47,
from src/wrapper/wrap_cl.cpp:1:
C:\Boost\boost_1_46_1/boost/python/object/instance.hpp:14:36: warning:
type attr
ibutes ignored after type is already defined
error: command 'gcc' failed with exit status 1
###################################################################
if I use the following siteconf.py settings:
BOOST_INC_DIR = [r'C:\Boost\boost_1_46_1']
BOOST_LIB_DIR = [r'C:\Boost\boost_1_46_1\x64\lib']
BOOST_COMPILER = 'msvc'
BOOST_PYTHON_LIBNAME = ['boost_python-vc90-mt-1_46_1']
USE_SHIPPED_BOOST = False
CL_TRACE = False
CL_ENABLE_GL = False
CL_INC_DIR = [r'C:\Program Files (x86)\ATI Stream\include']
CL_LIB_DIR = [r'C:\Program Files (x86)\ATI Stream\lib\x86_64']
CL_LIBNAME = ['OpenCL']
CXXFLAGS = []
LDFLAGS = []
Then:
running install
install_dir C:\Python27\Lib\site-packages\
running bdist_egg
running egg_info
writing requirements to pyopencl.egg-info\requires.txt
writing pyopencl.egg-info\PKG-INFO
writing top-level names to pyopencl.egg-info\top_level.txt
writing dependency_links to pyopencl.egg-info\dependency_links.txt
reading manifest file 'pyopencl.egg-info\SOURCES.txt'
reading manifest template 'MANIFEST.in'
writing manifest file 'pyopencl.egg-info\SOURCES.txt'
installing library code to build\bdist.win-amd64\egg
running install_lib
running build_py
copying pyopencl\array.py -> build\lib.win-amd64-2.7\pyopencl
copying pyopencl\characterize.py -> build\lib.win-amd64-2.7\pyopencl
copying pyopencl\clmath.py -> build\lib.win-amd64-2.7\pyopencl
copying pyopencl\clrandom.py -> build\lib.win-amd64-2.7\pyopencl
copying pyopencl\elementwise.py -> build\lib.win-amd64-2.7\pyopencl
copying pyopencl\reduction.py -> build\lib.win-amd64-2.7\pyopencl
copying pyopencl\scan.py -> build\lib.win-amd64-2.7\pyopencl
copying pyopencl\tools.py -> build\lib.win-amd64-2.7\pyopencl
copying pyopencl\version.py -> build\lib.win-amd64-2.7\pyopencl
copying pyopencl\_cluda.py -> build\lib.win-amd64-2.7\pyopencl
copying pyopencl\_mymako.py -> build\lib.win-amd64-2.7\pyopencl
copying pyopencl\__init__.py -> build\lib.win-amd64-2.7\pyopencl
running build_ext
building '_cl' extension
C:\Python27\Scripts\gcc.exe -mno-cygwin -mdll -O -Wall -DMS_WIN64
-DPYGPU_PACKAG
E=pyopencl -DPYGPU_PYOPENCL=1 -Isrc/cpp -IC:\Boost\boost_1_46_1
"-IC:\Program Fi
les (x86)\ATI Stream\include"
-IC:\Python27\lib\site-packages\numpy\core\include
-IC:\Python27\include -IC:\Python27\PC -c src/wrapper/wrap_cl.cpp -o
build\temp
.win-amd64-2.7\Release\src\wrapper\wrap_cl.o
In file included from
C:\Boost\boost_1_46_1/boost/python/object/make_instance.hp
p:9:0,
from C:\Boost\boost_1_46_1/boost/python/object/make_ptr_instanc
e.hpp:8,
from C:\Boost\boost_1_46_1/boost/python/to_python_indirect.hpp:
11,
from C:\Boost\boost_1_46_1/boost/python/converter/arg_to_python
.hpp:10,
from C:\Boost\boost_1_46_1/boost/python/call.hpp:15,
from C:\Boost\boost_1_46_1/boost/python/object_core.hpp:14,
from C:\Boost\boost_1_46_1/boost/python/object.hpp:9,
from C:\Boost\boost_1_46_1/boost/python/slice.hpp:11,
from src/wrapper/wrap_cl.hpp:47,
from src/wrapper/wrap_cl.cpp:1:
C:\Boost\boost_1_46_1/boost/python/object/instance.hpp:14:36: warning:
type attr
ibutes ignored after type is already defined
C:\Python27\Scripts\gcc.exe -mno-cygwin -mdll -O -Wall -DMS_WIN64
-DPYGPU_PACKAG
E=pyopencl -DPYGPU_PYOPENCL=1 -Isrc/cpp -IC:\Boost\boost_1_46_1
"-IC:\Program Fi
les (x86)\ATI Stream\include"
-IC:\Python27\lib\site-packages\numpy\core\include
-IC:\Python27\include -IC:\Python27\PC -c src/wrapper/wrap_cl_part_1.cpp
-o bui
ld\temp.win-amd64-2.7\Release\src\wrapper\wrap_cl_part_1.o
In file included from
C:\Boost\boost_1_46_1/boost/python/object/make_instance.hp
p:9:0,
from C:\Boost\boost_1_46_1/boost/python/object/make_ptr_instanc
e.hpp:8,
from C:\Boost\boost_1_46_1/boost/python/to_python_indirect.hpp:
11,
from C:\Boost\boost_1_46_1/boost/python/converter/arg_to_python
.hpp:10,
from C:\Boost\boost_1_46_1/boost/python/call.hpp:15,
from C:\Boost\boost_1_46_1/boost/python/object_core.hpp:14,
from C:\Boost\boost_1_46_1/boost/python/object.hpp:9,
from C:\Boost\boost_1_46_1/boost/python/slice.hpp:11,
from src/wrapper/wrap_cl.hpp:47,
from src/wrapper/wrap_cl_part_1.cpp:1:
C:\Boost\boost_1_46_1/boost/python/object/instance.hpp:14:36: warning:
type attr
ibutes ignored after type is already defined
C:\Python27\Scripts\gcc.exe -mno-cygwin -mdll -O -Wall -DMS_WIN64
-DPYGPU_PACKAG
E=pyopencl -DPYGPU_PYOPENCL=1 -Isrc/cpp -IC:\Boost\boost_1_46_1
"-IC:\Program Fi
les (x86)\ATI Stream\include"
-IC:\Python27\lib\site-packages\numpy\core\include
-IC:\Python27\include -IC:\Python27\PC -c src/wrapper/wrap_cl_part_2.cpp
-o bui
ld\temp.win-amd64-2.7\Release\src\wrapper\wrap_cl_part_2.o
In file included from
C:\Boost\boost_1_46_1/boost/python/object/make_instance.hp
p:9:0,
from C:\Boost\boost_1_46_1/boost/python/object/make_ptr_instanc
e.hpp:8,
from C:\Boost\boost_1_46_1/boost/python/to_python_indirect.hpp:
11,
from C:\Boost\boost_1_46_1/boost/python/converter/arg_to_python
.hpp:10,
from C:\Boost\boost_1_46_1/boost/python/call.hpp:15,
from C:\Boost\boost_1_46_1/boost/python/object_core.hpp:14,
from C:\Boost\boost_1_46_1/boost/python/object.hpp:9,
from C:\Boost\boost_1_46_1/boost/python/slice.hpp:11,
from src/wrapper/wrap_cl.hpp:47,
from src/wrapper/wrap_cl_part_2.cpp:1:
C:\Boost\boost_1_46_1/boost/python/object/instance.hpp:14:36: warning:
type attr
ibutes ignored after type is already defined
C:\Python27\Scripts\gcc.exe -mno-cygwin -mdll -O -Wall -DMS_WIN64
-DPYGPU_PACKAG
E=pyopencl -DPYGPU_PYOPENCL=1 -Isrc/cpp -IC:\Boost\boost_1_46_1
"-IC:\Program Fi
les (x86)\ATI Stream\include"
-IC:\Python27\lib\site-packages\numpy\core\include
-IC:\Python27\include -IC:\Python27\PC -c src/wrapper/wrap_constants.cpp
-o bui
ld\temp.win-amd64-2.7\Release\src\wrapper\wrap_constants.o
In file included from
C:\Boost\boost_1_46_1/boost/python/object/make_instance.hp
p:9:0,
from C:\Boost\boost_1_46_1/boost/python/object/make_ptr_instanc
e.hpp:8,
from C:\Boost\boost_1_46_1/boost/python/to_python_indirect.hpp:
11,
from C:\Boost\boost_1_46_1/boost/python/converter/arg_to_python
.hpp:10,
from C:\Boost\boost_1_46_1/boost/python/call.hpp:15,
from C:\Boost\boost_1_46_1/boost/python/object_core.hpp:14,
from C:\Boost\boost_1_46_1/boost/python/object.hpp:9,
from C:\Boost\boost_1_46_1/boost/python/slice.hpp:11,
from src/wrapper/wrap_cl.hpp:47,
from src/wrapper/wrap_constants.cpp:1:
C:\Boost\boost_1_46_1/boost/python/object/instance.hpp:14:36: warning:
type attr
ibutes ignored after type is already defined
src/wrapper/wrap_constants.cpp: In function 'void
pyopencl_expose_constants()':
src/wrapper/wrap_constants.cpp:87:5: warning: deprecated conversion from
string
constant to 'char*'
src/wrapper/wrap_constants.cpp:91:5: warning: deprecated conversion from
string
constant to 'char*'
src/wrapper/wrap_constants.cpp:92:5: warning: deprecated conversion from
string
constant to 'char*'
src/wrapper/wrap_constants.cpp:93:5: warning: deprecated conversion from
string
constant to 'char*'
C:\Python27\Scripts\gcc.exe -mno-cygwin -mdll -O -Wall -DMS_WIN64
-DPYGPU_PACKAG
E=pyopencl -DPYGPU_PYOPENCL=1 -Isrc/cpp -IC:\Boost\boost_1_46_1
"-IC:\Program Fi
les (x86)\ATI Stream\include"
-IC:\Python27\lib\site-packages\numpy\core\include
-IC:\Python27\include -IC:\Python27\PC -c src/wrapper/wrap_mempool.cpp
-o build
\temp.win-amd64-2.7\Release\src\wrapper\wrap_mempool.o
In file included from src/wrapper/wrap_mempool.cpp:3:0:
src/wrapper/wrap_cl.hpp:27:0: warning: "NOMINMAX" redefined
c:/python27/egg-info/mingw/usr/lib/gcc/../../x86_64-w64-mingw32/include/c++/4.5.
2/x86_64-w64-mingw32/bits/os_defines.h:46:0: note: this is the location
of the p
revious definition
In file included from
C:\Boost\boost_1_46_1/boost/python/object/make_instance.hp
p:9:0,
from C:\Boost\boost_1_46_1/boost/python/object/make_ptr_instanc
e.hpp:8,
from C:\Boost\boost_1_46_1/boost/python/to_python_indirect.hpp:
11,
from C:\Boost\boost_1_46_1/boost/python/converter/arg_to_python
.hpp:10,
from C:\Boost\boost_1_46_1/boost/python/call.hpp:15,
from C:\Boost\boost_1_46_1/boost/python/object_core.hpp:14,
from C:\Boost\boost_1_46_1/boost/python/args.hpp:25,
from C:\Boost\boost_1_46_1/boost/python.hpp:11,
from src/wrapper/wrap_helpers.hpp:8,
from src/wrapper/wrap_mempool.cpp:2:
C:\Boost\boost_1_46_1/boost/python/object/instance.hpp:14:36: warning:
type attr
ibutes ignored after type is already defined
C:\Python27\Scripts\gcc.exe -mno-cygwin -mdll -O -Wall -DMS_WIN64
-DPYGPU_PACKAG
E=pyopencl -DPYGPU_PYOPENCL=1 -Isrc/cpp -IC:\Boost\boost_1_46_1
"-IC:\Program Fi
les (x86)\ATI Stream\include"
-IC:\Python27\lib\site-packages\numpy\core\include
-IC:\Python27\include -IC:\Python27\PC -c src/wrapper/bitlog.cpp -o
build\temp.
win-amd64-2.7\Release\src\wrapper\bitlog.o
writing build\temp.win-amd64-2.7\Release\src\wrapper\_cl.def
C:\Python27\Scripts\g++.exe -mno-cygwin -mdll -static --output-lib
build\temp.wi
n-amd64-2.7\Release\src\wrapper\lib_cl.a --def
build\temp.win-amd64-2.7\Release\
src\wrapper\_cl.def -s
build\temp.win-amd64-2.7\Release\src\wrapper\wrap_cl.o bu
ild\temp.win-amd64-2.7\Release\src\wrapper\wrap_cl_part_1.o
build\temp.win-amd64
-2.7\Release\src\wrapper\wrap_cl_part_2.o
build\temp.win-amd64-2.7\Release\src\w
rapper\wrap_constants.o
build\temp.win-amd64-2.7\Release\src\wrapper\wrap_mempoo
l.o build\temp.win-amd64-2.7\Release\src\wrapper\bitlog.o
-LC:\Boost\boost_1_46_
1\x64\lib "-LC:\Program Files (x86)\ATI Stream\lib\x86_64"
-LC:\Python27\libs -L
C:\Python27\PCbuild\amd64 -lboost_python-vc90-mt-1_46_1 -lOpenCL
-lpython27 -lms
vcr90 -o build\lib.win-amd64-2.7\pyopencl\_cl.pyd
g++.exe: build\temp.win-amd64-2.7\Release\src\wrapper\lib_cl.a: No such
file or
directory
error: command 'g++' failed with exit status 1
I checked the directory
“\temp.win-amd64-2.7\Release\src\wrapper\lib_cl.a” and there is indeed
no such file.
Note that I have been able to use pyopencl if I install using the
prebuilt binaries that are available at:
http://www.lfd.uci.edu/~gohlke/pythonlibs/#pycuda
however I would like to use the vector types that are not available with
that build.
Any help with this would be greatly appreciated.
My apologies for such a lengthy post, if there is a more appropriate
method of posting this type of query then please let me know.
Many thanks,
Daryl
_______________________________________________
PyOpenCL mailing list
[email protected]
http://lists.tiker.net/listinfo/pyopencl
_______________________________________________
PyOpenCL mailing list
[email protected]
http://lists.tiker.net/listinfo/pyopencl