Вы помещаете файл glut32.dll в каталог system32, но если вы используете 64-разрядную версию Windows, он должен находиться в каталоге Windows \ SysWOW64 вместе с другими 32-разрядными двоичными файлами.
По историческим причинам system32 содержит собственные двоичные файлы ОС и на самом деле являются 32-разрядными только в 32-разрядных версиях Windows. Несмотря на название, двоичные файлы в system32 являются 64-битными в 64-битной Windows, а 32-битные файлы идут в SysWOW64.
В настоящее время GHC не имеет порта Win64, поэтому ему необходим 32-разрядный файл glut32.dll.
Вы также можете попробовать поместить glut32.dll в тот же каталог, что и исполняемый файл.
Существует более одной версии перенасыщения для Windows; Я бы порекомендовал одну из (32-битных) двоичных сборок freeglut .