Comments (5)
Yes, but I'm new to cmake and have no clue how to reliably find the system-wide installation.
As it's header-only, i don't reckon it a pressing issue, but hints or PRs are welcome!
from vipster.
For a header-only library it can add a cmake variable PYBIND11_HEADER_PATH
variable that would use these headers.
from vipster.
Better yet, Python binding should be its own, separate project. Systems generally have multiple versions of python installed at the same time, and the binding also needs to be independently installed at the same time for each of them. setup.py
-based bindings are the best, and a way to go.
from vipster.
For a header-only library it can add a cmake variable
PYBIND11_HEADER_PATH
variable that would use these headers.
Ah, of course. So defaulting to external/pybind11
, but can be replaced with user-/maintainer-defined values. Will look into it.
Better yet, Python binding should be its own, separate project. Systems generally have multiple versions of python installed at the same time, and the binding also needs to be independently installed at the same time for each of them.
setup.py
-based bindings are the best, and a way to go.
The targeted python version can be choosen as for all pybind11-projects, so that's a non-issue.
I've thought about splitting it up, but there are two problems:
- especially on windows, path-mangling and package-management is not the norm, so i want to (eventually) distribute the python stuff alongside the rest. This'll lead to either circular dependencies or the need for a master-project with three subprojects.
- not the slightes clue how to correctly distribute this over PyPI, as the building would need to be performed by
setup.py
(no clue how to make sure that the user has all C++-dependencies) or a ton of wheels be created.
Both are kinda too much work for too little gain, atm.
from vipster.
setup.py
-based installation is now implemented, together with searching for a systemwide pybind11 installation before falling back to external/pybind11
.
Beginning with the next release vipster will be available on PyPI.
from vipster.
Related Issues (20)
- [File format] Moltemplate export capability HOT 17
- Python-based script-widget
- [BUG] Shows wrong bond lengths HOT 1
- [Enhancement] Dynamically link LAMMPS, initialise git submodules via CMake as needed HOT 11
- [BUG] The "Atoms" list allows to type arbitrary strings into the "Type" column HOT 1
- [Qt frontend] Show the distance between atoms when two atoms are selected in the "Atoms" view HOT 2
- [BUG] fatal error: 'molecule.h' file not found HOT 2
- [BUG] ld: error: undefined symbol: LAMMPS_NS::LAMMPS::LAMMPS(int, char**, int) HOT 5
- [BUG] cmake looks for lammps/exceptions.h in a wrong location HOT 2
- [BUG] clang prints warnings some of which look potentially damaging HOT 3
- [BUG] Vipster Binary Image crashes on CentOS when loading PW.x Output data HOT 6
- [Rendering] Allow multiple visualization types for the same (group of) atom types. HOT 1
- [BUG] GUI translates all atoms instead of the unit cell itself HOT 1
- [BUG] QtVipster binary missing after (local) build HOT 7
- [BUG] Broken python bundling HOT 1
- [Py Bindings] Improve type conversions of main libvipster classes
- [File format] Quantum-Espresso: Align support with newer PWScf versions
- [Library] Increase core-library unit test coverage
- [Qt Frontend] Improve architecture
- [BUG] Build fails with fmt-10 HOT 2
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 vipster.