Hi there.
We are currently working on a commandlet that depends on several other libraries (For example: numpy and google protobuf). They are already installed in Windows Python environment (Python version 2.7) and currently it is possible for us to have them by manually add the hardcoded path in Unreal’s python shell by running sys.path.import(“MyPath”). (Reference this link) Or configuring the DefaultEngine.ini by adding
[/Script/PythonScriptPlugin.PythonScriptPluginSettings]
+AdditionalPaths=(Path=“MyPath”)
The problem raises when we want to distribute these commandlets and have other people use them. We can’t hardcode it anymore so we started to find ways to let unreal recognize libraries already installed in the machine. After some experiencing, we realized that Unreal seems to be holding its own “Python Environments” and have a different sys.path compared to operation system’s python environment. Shall we instead put all libraries in the place where Unreal can recognize it? Or is there a way to let unreal read what libraries OS already have?
Thank you tech arts!