Vorkompilierte Binärdateien in einem Juwel verpacken

9

Ich habe eine Ruby Web-App , die lilypond verwendet um Noten basierend auf Benutzereingaben zu erzeugen. Ich möchte das Hosting auf heroku verschieben (Ich habe kürzlich Heroku für ein paar Projekte verwendet und es hat mir wirklich gut gefallen, und mein Traffic ist niedrig genug dass es zumindest für eine Weile kostenlos auf Heroku gehostet wird. Herokus Dyno-Architektur erlaubt es Ihnen jedoch nicht, die gewünschten Pakete zu installieren und zu installieren. Stattdessen geben Sie ihm ein Manifest für Edelsteine ​​und es installiert die Edelsteine ​​für Sie.

Also, wenn ich nach Heroku versetze, muss ich lilypond als Edelstein verpacken. Ich habe ein paar reinrassige Edelsteine ​​veröffentlicht, aber ich habe mich noch nicht mit nativen Erweiterungen oder vorkompilierten Binärdateien beschäftigt oder so.

Ist es möglich, einige vorkompilierte Binaries zu nehmen und sie in einem Edelstein zu verpacken? Im Idealfall würde dies Binaries für OS X (auf dem ich entwickle) und Debian Linux (was auf Heroku läuft) beinhalten und würde die richtige Binärdatei installieren, wenn das Juwel installiert wurde.

    
Myron Marston 04.12.2009, 18:28
quelle

3 Antworten

3

ist möglich, da vorkompilierte binäre Edelsteine ​​für Windows die Norm sind. Sehen Sie sich vielleicht den Rake-Compiler an. auch Ссылка könnte helfen -r

    
rogerdpack 04.12.2009 19:41
quelle
1

Anstelle des Vorkompilierens sollten Sie in der Lage sein, den Edelstein einfach in Ihrer .gems -Datei aufzulisten, siehe die Heroku-Dokumentation . Natürlich erfordert dies, dass Ihr Juwel den nativen Code korrekt erstellt - dies ist immer noch eine Aufgabe, aber hoffentlich einfacher.

    
laust.rud 29.07.2010 05:53
quelle
1

Ich denke, Sie haben hier ein paar Optionen:

Sie könnten die Lilypond Quelle erhalten und sie in ein Juwel mit einer nativen C-Erweiterung verpacken. Es gibt einige nützliche Anleitungen, wie man das in Ссылка und Ссылка

Es gibt auch ein Juwel namens gitara , aber ich konnte keine Informationen darüber finden, es auf Heroku zu benutzen. Es könnte sich lohnen, den Autor per E-Mail zu kontaktieren und zu fragen, ob er etwas darüber weiß.

Sie könnten ein Heroku Buildpack erstellen, das Lypypond als Teil Ihrer Bereitstellung installiert. Ich konnte für Lilypond keine finden, aber es gibt viele Beispiele, die ähnliche Dinge tun - zum Beispiel Ein installiert Imagemagick (das standardmäßig auf Heroku enthalten ist, also wahrscheinlich nicht mehr nötig - aber hoffentlich ist der Code hilfreich). Weitere Dokumentation finden Sie unter Ссылка und Ссылка

Aufgrund meiner Lektüre denke ich , dass die Buildpack-Option der beste Weg ist.

Hoffentlich hilft das!

    
Alex Ghiculescu 29.03.2013 14:04
quelle

Tags und Links