Sto scrivendo un programma in Crystal, che intendo compilare e passare ad altri sistemi per l'esecuzione. Idealmente, non dovrebbe avere dipendenze, poiché i sistemi di destinazione saranno nuove installazioni di Linux.Come posso produrre un eseguibile Crystal senza dipendenze?
Purtroppo non riesco ad aggirare la dipendenza di libc, quindi presumibilmente dovrò compilare l'eseguibile su un sistema che possiede la versione più bassa di libc che desidero colpire. Immagino dovrebbe essere avanti compatibile.
Ho difficoltà con libssl, tuttavia. Le installazioni di default di Debian Wheezy non sembrano venire con libssl, così ottengo questo errore quando si esegue il file eseguibile:
error while loading shared libraries: libssl.so.1.0.0:
cannot open shared object file: No such file or directory
presumo esista questa dipendenza perché ho require "http/client"
nella mia fonte. Tuttavia, non faccio alcuna chiamata relativa a ssl, poiché la uso solo per connettermi a siti Web non protetti.
Apparentemente ho anche una dipendenza su libevent-2.0.so.5
. Presumibilmente tutti i programmi Crystal fanno. Chissà quante altre dipendenze ha Crystal?
I miei eseguibili devono essere eseguiti su un sistema linux appena installato. Quindi, come posso produrre un eseguibile Crystal senza dipendenze? A parte la libc, suppongo.
Mi piace questa domanda; un tempo tutto era staticamente collegato. Il verme gira. – will