In the case of using Z3 theorem solver for macOS and Windows, binaries need to be included for each operating system.
The loading of the Z3 module is being done using scripting.
import os
import sys
import random
import numpy as np
import platform
if platform.system() == 'Windows':
libs_path = os.path.join(project.folder, 'libs_win')
elif platform.system() == 'Darwin':
libs_path = os.path.join(project.folder, 'libs_mac')
else:
libs_path = None
if libs_path and libs_path not in sys.path:
sys.path.insert(0, libs_path)
# Now import the module
import z3