In glxew.h the macros for GLXEW_FUN_EXPORT / GLXEW_VAR_EXPORT are empty when using GLEW_MX. There is a conditional #ifdef GLEW_MX - this results in multiple definitions when linking different translation units that include glxew.h. I temporarily patched it on my local system by removing the conditional and setting GLXEW_FUN_EXPORT to GLEW_FUN_EXPORT and GLXEW_VAR_EXPORT to GLEW_VAR_EXPORT respectively. I cannot see any reason for this construct and it seems wrong. The resulting code worked and I see no value to not define both preprocessor symbols according to the same rules as in core GLEW.