I am looking for advice on how to use Program.compile and/or
pyopencl.link_program. I had original thought I could logically divide
parts of my CL code in to separate Programs/source files that are compiled,
but not linked immediately. Then when I need to use modules together I can
pass the list of compiled Program objects to link_program.
However when I try to invoke compile from a Program initialised with a
source code string I recieve the following error,
def compile(self, options=, devices=None, headers=):
options = " ".join(options)
return self._prg.compile(options, devices, headers)
AttributeError: 'NoneType' object has no attribute 'compile'
Looking at the pyopencl source it seems this is because self._prg is not
initialized if a source string is given. Is this a bug, or am I trying to
use compile in the wrong manner? Any advice welcome!