Comments (7)
Yes, .so
is the correct extension for Python extension modules on OS X. On "win32" the extension would be .pyd
.
distutils gets it from sysconfig:
import sysconfig
print(sysconfig.get_config_var('SO'))
from brotli.
Of course the setup.py script is only meant to build and install the Python bindings. If you are looking to build a shared library to link with other non-Python code, that's not the one to use.
In that case you can try https://github.com/bagder/libbrotli
from brotli.
Thanks @anthrotype , however, this .so file is working for me when I load it in Java via JNI interface (on Mac laptop). I was a little surprised, but it's working fine to compress my java bytes in memory. According to this, I guess this brotli.so is a "shared library". Anything misunderstood here... ?
from brotli.
I am surprised it works.. Though that's not the intended purpose of a Python extension module. I'm sure others more knowledgeable of C/C++ or Java than me could suggest a better approach for what you're trying to do.
from brotli.
According to the StackOverflow .so and .dylib are almost interchangable in modern versions on OSX.
from brotli.
@shawncao
You got brotli.so compiled under Mac OSX and running it in Java? Cool.
How do you managed to use the .so file from Java?
Would you please provide some sources (e.g. via Github ghist)?
from brotli.
Soon it will be possible to compile dylib with xcode: see PR #382
from brotli.
Related Issues (20)
- Ability to clone/serialize/deserialize state in Compressor and Decompressor HOT 4
- Exception while brotliDecode in decode.ts HOT 5
- EMPTY VERSION FIELDS IN PKGCONFIG FILES (LINUX) HOT 4
- Support for user-supplied dictionaries in Python binding
- Release v1.1 HOT 14
- Publish JNI artefacts (including platform-dependent) HOT 7
- Stale comment referring to nonexisting WriteMetadata() function HOT 6
- v1.1.0rc does not build on macOS 10.12.6 HOT 8
- Strange compression ratio on large CSV file... HOT 1
- Brotli v1.1.0 tests fail with pypy3 HOT 10
- Brotli 1.1.0 breaks Python 2 compatibility HOT 3
- Create a static source tarball for releases
- CMake build broken, tries to install man files in /man not in CMAKE_INSTALL_PREFIX
- bazel error no such package '@org_brotli// HOT 4
- Brotli 1.1.0 NginX HOT 3
- Brotli 1.1.0 changed return values? HOT 5
- [Feature Request] adding a option to control whether install the executable HOT 4
- makefile broken HOT 7
- undefined symbol BrotliEncoderDestroyPreparedDictionary HOT 5
- Windows ARM64EC Target Fails - _tzcnt_u64(EC Symbol) HOT 4
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from brotli.