-
Notifications
You must be signed in to change notification settings - Fork 35
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
Non-standard native library names #110
Comments
That's worth looking into. Good to know that it should start with |
+FreeBSD / *BSD is POSIX :-P |
I tried a quick diff: diff --git a/cmsis_pack_manager/__init__.py b/cmsis_pack_manager/__init__.py
index db7887e35..a2d3ab3ec 100644
--- a/cmsis_pack_manager/__init__.py
+++ b/cmsis_pack_manager/__init__.py
@@ -21,7 +21,7 @@ from shutil import rmtree
from json import load
from zipfile import ZipFile
from appdirs import user_data_dir
-from ._native import ffi, lib
+from .lib_cmsis_native import ffi, lib
class _RaiseRust(object):
diff --git a/setup.py b/setup.py
index ca0c36516..cee637dfd 100644
--- a/setup.py
+++ b/setup.py
@@ -27,7 +27,7 @@ def build_native(spec):
)
spec.add_cffi_module(
- module_path='cmsis_pack_manager._native',
+ module_path='cmsis_pack_manager.lib_cmsis_native',
dylib=lambda: build.find_dylib('cmsis_cffi',
in_path='target/release/deps'),
header_filename=lambda: build.find_header('cmsis.h', in_path='cmsis-cffi') which does not seem to resolve the issue:
The |
It seems that this behavior is baked into milksnake's setuptools extension: https://github.com/getsentry/milksnake/blob/master/milksnake/setuptools_ext.py#L217-L218. Perhaps I should report an issue on their bug tracker and/or submit a PR to fix this issue. |
Seems like there is a new python dependency issue every couple of days.... |
Has there been any progress?
We should look at how to test these dependencies cc @ARMmbed/mbed-os-test |
Nope
I'm confused. This is not a "testing" problem really. |
Yeah, we are in 2022 and this problem still exists. This problem and the solution are already given above. Can someone merge it or something? |
CPM uses apparently non-standard native library names. On Posix systems the name is
_native__lib.so
, while on Windows it looks like_native__lib.cp37-win_amd64.pyd
.This is only a problem because PyInstaller expects libraries to match one of the following globs:
*.dll
,*.dylib
,lib*.pyd
, andlib*.so
. So basically, libs with .so and .pyd extensions are expected to have a "lib" prefix.I've worked around it in the PyInstaller .spec file for pyOCD, but thought it was worth mentioning.
The text was updated successfully, but these errors were encountered: