Comments (2)
I'm not sure why the Socket::Private symbols were still in the build. Indeed I've seen crashes in the past in Socket::Private from CuraEngine so it must've been exposed somewhere. I've tried your suggestion of explicitly hiding it and everything still works fine.
We've not really put a lot of effort into giving this a proper stable ABI. I think the PIMPL pattern was implemented mostly as an experiment. This library doesn't change very often after all. Since this change works for you and doesn't hurt for the rest, I'll merge it.
from libarcus.
Thanks for the quick response!
I know that your main focus has always been on the Python library, and libArcus was more of a glue component for CuraEngine.
But it's always better to be a bit mindful about such things.
With these fixes, the exported symbols from the library are vastly reduced: https://salsa.debian.org/3dprinting-team/libarcus/blob/master/debian/libarcus3.symbols
There's still a minor discrepancy between gcc8 and gcc9, but it's much less than it was before.
from libarcus.
Related Issues (20)
- MessageTypeStore class should (probably) be exported HOT 2
- how to set cmake to Identify anaconda Virtual environment HOT 1
- python3-dev HOT 4
- make error: *** target pattern contains no '%'. Stop. HOT 9
- PYTHON_SITE_PACKAGES_DIR is not honored HOT 10
- Update to SIP5
- HELP: Sip errors on MacOS HOT 4
- sudo command in "Building" section incorrect
- no matching function in protobuf HOT 7
- Action Required: Fix WhiteSource Configuration File - .whitesource
- Build fails with protobuf 3.18 HOT 2
- How do I get SIP on Windows? HOT 1
- Failed to get Python3_SITELIB. Error: when cmake Arcus. HOT 1
- Linking CXX shared library pyArcus.so No such file or directory HOT 2
- Missing sipbuild HOT 7
- error: packages failed to build: arcus-5.0.0-2 HOT 4
- Failing compilation
- unable to built a libArcus
- LICENSE and README.md files disagree on what the license is
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 libarcus.