Скорее всего код работает, если просто запустить, а при сборке или при запуске не хватает либ, у меня так было с фрезером, когда уже собрал ехе, и запустил, вываливалось ошибки, нет либ, даже некоторые в
setup.py указывал все равно не находил, закидывал руками в собранную программу сам.