Come usi le librerie esterne in git?

2

SFML, in questo caso, ha un repository Git e un download page . Fino ad ora ho sempre scaricato dalla pagina di download, che è arrivata (almeno per il compilatore che uso) con .a e .hpp file e potrebbe essere facilmente utilizzata con MinGW con -l e -i tag.

Quando volevo usarlo su Github, però, sono sorti un paio di problemi.

  1. Quando si copia nel repository sul primo commit, il grafico Github mostrerebbe 22k modifiche sul primo commit e solo un paio di centinaia sui commit successivi. Ho risolto il problema inserendo il download in un repository privato e utilizzandolo come sottomodulo. Questo non è molto elegante e ha ancora il problema di essere OS / compilatore specifico.

  2. Uso del repository Github ufficiale come sottomodulo. Ma come si usano i file% raw cpp e hpp ? Metti i file cpp necessari nel Makefile? In tal caso, quali sono i download nella pagina di download per?

posta Post Self 22.01.2017 - 18:46
fonte

1 risposta

3

L'aggiunta di una libreria nel repository git ti renderebbe un manutentore di un'altra versione della libreria. Vuoi evitarlo il più possibile.

A seconda della libreria e del sistema operativo di destinazione, l'approccio più ragionevole è di farlo elencare come una dipendenza nel README, insieme a una buona documentazione su come installarlo su tutti i sistemi operativi di destinazione, o collegamenti a risorse che descrivono come per installarlo. Forse, se possibile, fornisci uno script automatico, ma non è realmente necessario e non è di grande aiuto dato che la compilazione da sorgente dovrebbe essere riservata agli sviluppatori e agli utenti esperti.

Per gli utenti "normali", è necessario fornire i binari che si integrano con il gestore delle dipendenze del sistema operativo (preferibilmente) o che contengano semplicemente una copia della libreria.

    
risposta data 24.01.2017 - 16:10
fonte

Leggi altre domande sui tag