Document how to build portable, cross-platform binaries
Dieses Issue hat noch niemand übernommen.
- Vorherrschende Sprache
- Keine Sprachdaten
- Sterne
- 110
- Forks
- 17
- PR-Merge-Kennzahlen
- Keine gemergten PRs in 30 T.
Beschreibung
Creating C++ binaries portable to a given platform (osx, linux, windows) or platform version (ubuntu precise or trusty) is absolutely feasible but a poorly documented topic. Often our goal at Mapbox is to support the latest C++11 and C++14 features but maintain code portable to older operating systems like Windows 7, OS X 10.8, and Ubuntu Precise, or RHEL 6/7. This is also feasible. For example its possible to run C++14 binaries on AWS lambda (built on ubuntu precise) even though you can't easily compile them on AWS Lambda.
We should document how Mapbox writes and distributes portable C?C++ code to make clear when this approach is advantageous and when it is not. And to ensure the techniques are robust and replicable.
This issue is to track:
- getting this all documented here
- Moving the content from https://github.com/mapbox/node-pre-gyp/wiki/External-libraries to this future doc
- Moving binary portability FAQ from https://github.com/mapbox/node-pre-gyp/wiki/FAQ#frequently-ask-questions-about-node-pre-gyp to here
Beitragsleitfaden
Erste Schritte
- Lies das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreib ins Issue, dass du es übernimmst — das erspart doppelte Arbeit.
- Forke das Repository und arbeite in einem Branch.
- Öffne einen Pull Request, der die Issue-Nummer nennt.
Rechercherichtung
Beginne mit der Durchsicht der Wiki-Seite „External libraries“ von node-pre-gyp und der im Issue verlinkten FAQ zur Binärportabilität. Führe die relevanten Inhalte in der geplanten Dokumentation zusammen und behandle dabei, wann portable C/C++-Binärdateien vorteilhaft sind und wie Mapbox sie schreibt und verteilt. Das Ziel ist erreicht, wenn das Thema hier dokumentiert ist und beide verlinkten Quellen migriert wurden.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Bewertung
- Tech-Stack
- cpp
- Bereich
- build-system, documentation
- Issue-Typ
- Dokumentation
- Schwierigkeit
- 4/5
- Geschätzter Aufwand
- 3-5 Tage
- Aktivitätsstatus
- Veraltet
- Klarheit
- Größtenteils klar
- Anfängerfreundlichkeit
- 38/100