pauldmccarthy / fsleyes

This is a mirror. Feel free to use the issue tracker. PRs welcome.
https://git.fmrib.ox.ac.uk/fsl/fsleyes/fsleyes/
Other
22 stars 11 forks source link

Windows 64-bit fslyeyes build -- unable to create shaders #24

Closed mj-harvey closed 2 years ago

mj-harvey commented 5 years ago

Hi,

I've installed fsleyes-0.29 from the package fsleyes/win64 in the conda-forge channel.

The fsleyes gui will start but attempts to load a nii file give

OpenGL.error.NullFunctionError: Attempt to call an undefined function glCreateShader, check for bool(glCreateShader) before calling
 WARNING              idle.py  343: _wxIdleLoop     - Idle task init crashed - NullFunctionError: Attempt to call an undefined function glCreateShader, check for bool(glCreateShader) before calling
Traceback (most recent call last):
  File "c:\miniconda3\lib\site-packages\fsl\utils\idle.py", line 340, in _wxIdleLoop
    task.task(*task.args, **task.kwargs)
  File "c:\miniconda3\lib\site-packages\fsleyes\gl\glvolume.py", line 262, in init
    fslgl.glvolume_funcs.init(self)
  File "c:\miniconda3\lib\site-packages\fsleyes\gl\gl21\glvolume_funcs.py", line 34, in init
    compileShaders(   self)
  File "c:\miniconda3\lib\site-packages\fsleyes\gl\gl21\glvolume_funcs.py", line 60, in compileShaders
    self.shader = shaders.GLSLShader(vertSrc, fragSrc)
  File "c:\miniconda3\lib\site-packages\fsleyes\gl\shaders\glsl\program.py", line 114, in __init__
    self.program     = self.__compile(vertSrc, fragSrc)
  File "c:\miniconda3\lib\site-packages\fsleyes\gl\shaders\glsl\program.py", line 381, in __compile
    vertShader = gl.glCreateShader(gl.GL_VERTEX_SHADER)
  File "c:\miniconda3\lib\site-packages\OpenGL\platform\baseplatform.py", line 407, in __call__
    self.__name__, self.__name__,
OpenGL.error.NullFunctionError: Attempt to call an undefined function glCreateShader, check for bool(glCreateShader) before calling

the full package listing is

# packages in environment at c:\miniconda3:
#
# Name                    Version                   Build  Channel
asn1crypto                0.24.0                   py36_0
atomicwrites              1.3.0                      py_0    conda-forge
attrs                     19.1.0                     py_0    conda-forge
backcall                  0.1.0                      py_0    conda-forge
blas                      1.0                         mkl
bleach                    3.1.0                      py_0    conda-forge
bz2file                   0.98                       py_0    conda-forge
ca-certificates           2019.1.23                     0
certifi                   2019.3.9                 py36_0
cffi                      1.11.5           py36h945400d_0
chardet                   3.0.4            py36h420ce6e_1
colorama                  0.4.1                      py_0    conda-forge
conda                     4.6.14                   py36_0
conda-env                 2.6.0                h36134e3_1
console_shortcut          0.1.1                h6bb2dd7_3
cryptography              2.6.1            py36hb32ad35_0    conda-forge
cycler                    0.10.0                     py_1    conda-forge
dcm2niix                  1.0.20181114      h1ad3211_1000    conda-forge
decorator                 4.4.0                      py_0    conda-forge
defusedxml                0.5.0                      py_1    conda-forge
entrypoints               0.3                   py36_1000    conda-forge
freetype                  2.10.0               h5db478b_0    conda-forge
fsleyes                   0.29.0                   py36_0    conda-forge
fsleyes-props             1.6.5                      py_1    conda-forge
fsleyes-widgets           0.7.3                      py_1    conda-forge
fslpy                     2.2.0              pyh24bf2e0_1    conda-forge
h5py                      2.9.0           nompi_py36h3cb27cb_1102    conda-forge
hdf5                      1.10.4          nompi_hcc15c50_1106    conda-forge
icc_rt                    2017.0.4             h97af966_0
icu                       58.1                     vc14_0    conda-forge
idna                      2.6              py36h148d497_1
importlib_metadata        0.17                     py36_1    conda-forge
indexed_gzip              0.8.10           py36hf3a302f_0    conda-forge
intel-openmp              2018.0.3                      0
ipykernel                 5.1.1            py36h39e3cac_0    conda-forge
ipython                   7.5.0            py36h39e3cac_0    conda-forge
ipython_genutils          0.2.0                      py_1    conda-forge
isodate                   0.6.0                      py_1    conda-forge
jedi                      0.13.3                   py36_0    conda-forge
jinja2                    2.10.1                     py_0    conda-forge
jpeg                      9c                hfa6e2cd_1001    conda-forge
jsonschema                3.0.1                    py36_0    conda-forge
jupyter_client            5.2.4                      py_3    conda-forge
jupyter_core              4.4.0                      py_0    conda-forge
kiwisolver                1.1.0            py36he980bc4_0    conda-forge
libpng                    1.6.37               h7602738_0    conda-forge
libsodium                 1.0.16            h2fa13f4_1001    conda-forge
libspatialindex           1.8.5                he025d50_4    conda-forge
libtiff                   4.0.10            h6512ee2_1003    conda-forge
lz4-c                     1.8.3             he025d50_1001    conda-forge
m2w64-gcc-libgfortran     5.3.0                         6
m2w64-gcc-libs            5.3.0                         7
m2w64-gcc-libs-core       5.3.0                         7
m2w64-gmp                 6.1.0                         2
m2w64-libwinpthread-git   5.0.0.4634.697f757               2
markupsafe                1.1.1            py36hfa6e2cd_0    conda-forge
matplotlib                3.1.0                    py36_0    conda-forge
matplotlib-base           3.1.0            py36h3e3dc42_0    conda-forge
menuinst                  1.4.14           py36hfa6e2cd_0
mistune                   0.8.4           py36hfa6e2cd_1000    conda-forge
mkl                       2018.0.3                      1
mkl_fft                   1.0.2            py36hb217b18_0
mkl_random                1.0.1            py36h77b88f5_1
more-itertools            4.3.0                 py36_1000    conda-forge
msys2-conda-epoch         20160418                      1
nbconvert                 5.5.0                      py_0    conda-forge
nbformat                  4.4.0                      py_1    conda-forge
networkx                  2.3                        py_0    conda-forge
nibabel                   2.4.1                      py_0    conda-forge
notebook                  5.7.8                    py36_1    conda-forge
numpy                     1.14.5           py36h9fa60d3_4
numpy-base                1.14.5           py36h5c71026_4
olefile                   0.46                       py_0    conda-forge
openssl                   1.1.1c               he774522_1
pandoc                    2.7.2                         0    conda-forge
pandocfilters             1.4.2                      py_1    conda-forge
parso                     0.4.0                      py_0    conda-forge
pathlib2                  2.3.3                 py36_1000    conda-forge
pickleshare               0.7.5                 py36_1000    conda-forge
pillow                    6.0.0            py36h9a613e6_0    conda-forge
pip                       10.0.1                   py36_0
pluggy                    0.12.0                     py_0    conda-forge
progressbar2              3.38.0                     py_1    conda-forge
prometheus_client         0.6.0                      py_0    conda-forge
prompt_toolkit            2.0.9                      py_0    conda-forge
pthread-stubs             0.4               h301d43c_1001    conda-forge
py                        1.8.0                      py_0    conda-forge
pycosat                   0.6.3            py36h413d8a4_0
pycparser                 2.18             py36hd053e01_1
pydicom                   1.2.2                      py_0    conda-forge
pygments                  2.4.2                      py_0    conda-forge
pyopengl                  3.1.1a1                  py36_0
pyopenssl                 18.0.0                   py36_0
pyparsing                 2.4.0                      py_0    conda-forge
pypubsub                  4.0.3                      py_0    conda-forge
pyqt                      5.9.2            py36h6538335_0    conda-forge
pyreadline                2.1                   py36_1000    conda-forge
pyrsistent                0.15.2           py36hfa6e2cd_0    conda-forge
pysocks                   1.6.8                    py36_0
pytest                    3.9.1                 py36_1000    conda-forge
pytest-runner             4.4                        py_0    conda-forge
python                    3.6.5                h0c2934d_0
python-dateutil           2.8.0                      py_0    conda-forge
python-utils              2.3.0                      py_1    conda-forge
pywin32                   223              py36hfa6e2cd_1
pywinpty                  0.5.5                 py36_1000    conda-forge
pyzmq                     18.0.1           py36he7828b0_1    conda-forge
qt                        5.9.7                hc6833c9_1    conda-forge
requests                  2.18.4           py36h4371aae_1
rtree                     0.8.3           py36h21ff451_1002    conda-forge
ruamel_yaml               0.15.37          py36hfa6e2cd_2
scipy                     1.1.0            py36hc28095f_0
send2trash                1.5.0                      py_0    conda-forge
setuptools                39.2.0                   py36_0
sip                       4.19.8          py36h6538335_1000    conda-forge
six                       1.11.0           py36h4db2310_1
sphinx_rtd_theme          0.4.3                      py_0    conda-forge
sqlite                    3.28.0               hfa6e2cd_0    conda-forge
terminado                 0.8.2                    py36_0    conda-forge
testpath                  0.4.2                   py_1001    conda-forge
tk                        8.6.9             hfa6e2cd_1001    conda-forge
tornado                   6.0.2            py36hfa6e2cd_0    conda-forge
traitlets                 4.3.2                 py36_1000    conda-forge
trimesh                   2.38.21                    py_0    conda-forge
urllib3                   1.22             py36h276f60a_0
vboxapi                   1.0                      pypi_0    pypi
vc                        14.1                 h0510ff6_3
vs2015_runtime            15.5.2                        3
wcwidth                   0.1.7                      py_1    conda-forge
webencodings              0.5.1                      py_1    conda-forge
wheel                     0.31.1                   py36_0
win_inet_pton             1.0.1            py36he67d7fd_1
wincertstore              0.2              py36h7fe50ca_0
winpty                    0.4.3                         4    conda-forge
wxnatpy                   0.3.1                      py_1    conda-forge
wxpython                  4.0.6            py36h6538335_0    conda-forge
xnat                      0.3.17                     py_0    conda-forge
xz                        5.2.4             h2fa13f4_1001    conda-forge
yaml                      0.1.7                hc54c509_2
zeromq                    4.3.1             he025d50_1000    conda-forge
zipp                      0.5.1                      py_0    conda-forge
zlib                      1.2.11            h2fa13f4_1004    conda-forge
zstd                      1.4.0                hd8a0e53_0    conda-forge

The Windows build is 1809, the machine has a Kaby Lake GT2 GPU with driver supporting

OpenGL 4.5 (241 ext) - Intel(R) HD Graphics 620

Is the Windows build expected to be working at this stage? I see it's not referred to in any FSL documentation, I only found the package by chance.

mj-harvey commented 5 years ago

(It would be really great to get the Windows build working, I'm currently supporting a group who are running it fsleyes via VNC from a shared linux machine and the experience is less-than-excellent)

pauldmccarthy commented 5 years ago

Unfortunately I can't offer any support for the windows builds. The only reason they're there is because they're required by conda-forge. If you come up with a solution, please let me know.

pauldmccarthy commented 3 years ago

@mj-harvey I just installed FSLeyes via miniconda/conda-forge onto a Windows 10 laptop, and had no trouble at all. I don't have physical access to the laptop (it is managed by a colleague of mine, who gave me remote access), and am useless with Windows, so don't know much else about it. But I'd be interested to hear if you, or anybody else, has success with FSLeyes on Windows