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

Reply via email to