-
Notifications
You must be signed in to change notification settings - Fork 206
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
python binding and build enhancement #150
base: master
Are you sure you want to change the base?
Conversation
Signed-off-by: wqh17101 <597935261@qq.com> (cherry picked from commit 49004fc)
Signed-off-by: wqh17101 <597935261@qq.com>
add .vs Signed-off-by: wqh17101 <597935261@qq.com>
Not sure what you're trying to achive with this patch series. Is it just due to build issues with Python bindings on Windows? If so, the problem is very likely because PYTHON_LIBS was not set. In the case of Github's workflow, it should be initialized with:
I have a patch fixing it, but it has a drawback: it causes MacOS build to fail. |
The patch which auto-detect the LDFLAGS is:
|
No, in the old version , the way python work with is to build a zbarlib and a python wrapper, there are two libs. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
No, in the old version , the way python work with is to build a zbarlib and a python wrapper, there are two libs.
But for now using a pythonic way we can make a installer(wheel) with one lib contain above , it is
easy for user to use without downloading the large source code to build.
This is not a "large source code"... zbar/*.[ch] have 52k lines. The entire code has just 74k lines on C and 1,6k lines on python
:-)
Btw, the patch fixing configure.ac
was applied. Python bindings are compiling fine for all targets.
So keep a original for some users, and provide a more convinient way tis a good idea
I'm ok on having a python binding that would be easer, provided that it is properly integrated with autotools. In any case, I suspect that some things could be simplified, now that the python libraries compile just fine on all OSes.
I guess I'll later add a make check to Windows and Mac OS actions CI workflow, in order to check if the built binaries are working properly there.
Let me explain how ZBAR-LITE work. |
Threre are three ways for Python users to use zbar now.
|
8f60db5
to
e97218f
Compare
658f548
to
c7d9809
Compare
Keeping the original and the new one as separate libraries is a bad idea, as, if someone compiles something against the libraries, there will be duplicated symbols. The best is to add the newer functions needed by the new python code at the same library (don't forget to increment library's version at |
|
including below file: config_template dir MANIFEST.in preparation.sh README.md setup.py Signed-off-by: wqh17101 <597935261@qq.com>
add zbar_llite to support building python whl from any OS
add setup_plus.py to support building wheels with pre-compilered zbar lib
add ZBAR_LITE marco for future updates
add patch version to zbar python module