I was able to get a working pyopencl build w/ icc by including the
modified stdio.h as a work around for the icc 64-bit include issues.
For some reason when I ran:
the python portions of the module were clobbered.
However if I used:
>python setup.py build
Everything worked as expected.
Thanks for all of your help!
On 02/01/12 17:00, Cyrus Harrison wrote:
I looked into this error further& it appears this issue can occur when
using cstdio w/ icc when targeting 64-bit platforms.
Due to a cascade of macro issues fgetpos64, fopen64, etc are never
mapped to the standard names "fgetpos", "fopen", etc.
Here is a file someone created to get around the issue:
I was able to use this file& hack my way though a build.
I changed various files in src/wrapper and in bpl_subset/lib/python to
include this file before any boost includes.
(This is clearly not a good general solution, but I wanted to see if
anything was lurking beyond this issue)
Everything seemed to go well& the module installed, however something
is wrong with the final install (for example: the main __init__.py
exists, but is empty)
Getting closer - I should have time to pick this up again next week.
Thanks again for all of your help so far,
On 01/31/12 18:40, Andreas Kloeckner wrote:
On Tue, 31 Jan 2012 12:08:42 -0800, Cyrus
I found another missing file:
catastrophic error: could not open source file
I added it + the "detail"
subfolder& I made it a bit further.
If you mean
boost/preprocessor/slot/detail, that was already there for
Now I am stuck here:
icc -pthread -m64 -fPIC -O3 -DNDEBUG (...) -c
/usr/include/c++/4.1.2/cstdio(109): error: the global scope has no "fgetpos"
/usr/include/c++/4.1.2/cstdio(111): error: the global scope has no "fopen"
/usr/include/c++/4.1.2/cstdio(116): error: the global scope has no "freopen"
/usr/include/c++/4.1.2/cstdio(119): error: the global scope has no "fsetpos"
/usr/include/c++/4.1.2/cstdio(138): error: the global scope has no "tmpfile"
Can you compile just a regular C++ file
using<cstdio>? What's the
include path leading there? (If it's from pyopencl, we might be able to
simply switch to the<stdio.h> C form.)
PyOpenCL mailing list