-
Notifications
You must be signed in to change notification settings - Fork 67
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Precompilation fails with both PyCall and PythonCall #140
Comments
Hi @cuihantao, have you included those packages via |
@pedromxavier I did add these to the package. The name = "Test1"
uuid = "062e1887-703b-4a08-a5da-6524f6b6cb77"
authors = ["Hantao Cui <[email protected]>"]
version = "0.1.0"
[deps]
PyCall = "438e738f-606a-5dbb-bf0a-cddfbfd45ab0"
PythonCall = "6099a3de-0909-46bc-b1f4-468b9a2dfc0d" Did you have any success replicating the issue? I can be readily replicated using |
Yeah I can reproduce this on Linux. The issue is that PyCall installs Python 3.9 and PythonCall installs Python 3.10, and the ABIs clash. Both PyCall and PythonCall load libpython with RTLD_GLOBAL, which means they share a global symbol namespace, hence they clash when trying to use symbols with the same name from different versions of Python. Probably if one or the other used RTLD_LOCAL this issue wouldn't arise, but I'm not sure what the implications of this are. In the meantime, you can work around it by ensuring both packages use the same Python. You can do one of:
|
Using |
Thank you! |
The MWE below fails to precompile:
Error message:
The text was updated successfully, but these errors were encountered: