Rendere in formato eseguibile QUALSIASI programma

Postate qui per tutte le discussioni legate a Linux in generale.

Moderatore: Staff

Regole del forum
1) Citare sempre la versione di Slackware usata, la versione del Kernel e magari anche la versione della libreria coinvolta. Questi dati aiutano le persone che possono rispondere.
2) Per evitare confusione prego inserire in questo forum solo topic che riguardano appunto Gnu/Linux in genere, se l'argomento è specifico alla Slackware usate uno dei forum Slackware o Slackware64.
3) Leggere attentamente le risposte ricevute
4) Scrivere i messaggi con il colore di default, evitare altri colori.
5) Scrivere in Italiano o in Inglese, se possibile grammaticalmente corretto, evitate stili di scrittura poco chiari, quindi nessuna abbreviazione tipo telegramma o scrittura stile SMS o CHAT.
6) Appena registrati è consigliato presentarsi nel forum dedicato.

La non osservanza delle regole porta a provvedimenti di vari tipo da parte dello staff, in particolare la non osservanza della regola 5 porta alla cancellazione del post e alla segnalazione dell'utente. In caso di recidività l'utente rischia il ban temporaneo.
Rispondi
mordecai
Linux 3.x
Linux 3.x
Messaggi: 752
Iscritto il: mer 10 gen 2007, 21:59

Rendere in formato eseguibile QUALSIASI programma

Messaggio da mordecai »

Ciaoa a tutti!Questa è una richiesta o meglio una curiosità alquanto bizzarra!

È possibile rendere un programma in formato binario?

Es.supponiamo che ho nmap in formato tar.gz ok?

Voglio fare in modo che diventi un semplice .run in modo tale che quando lo eseguo,non devo installarlo,ma solo lanciarlo!
E inoltre deve essere compatibile per tutte li distro linux!

È fantascienza?

Avatar utente
Ph1l
Linux 2.x
Linux 2.x
Messaggi: 232
Iscritto il: gio 4 gen 2007, 13:55
Slackware: 12.0
Località: Acerra (NA)
Contatta:

Messaggio da Ph1l »

No,è Autopackage!

http://autopackage.org/

;)

Sempre se ho capito la domanda, naturalmente :lol:

Avatar utente
stan
Linux 3.x
Linux 3.x
Messaggi: 524
Iscritto il: lun 25 dic 2006, 11:55
Slackware: 12.1
Kernel: 2.6.xx
Desktop: Kde3
Località: Bs

Messaggio da stan »

Ph1l ha scritto:No,è Autopackage!
http://autopackage.org/
[ot]Ma se un sw e' distribuito solo tramite un file .package come si fa' a fare lo slackbuild?[/ot]

mordecai
Linux 3.x
Linux 3.x
Messaggi: 752
Iscritto il: mer 10 gen 2007, 21:59

Messaggio da mordecai »

Ph1l ha scritto:No,è Autopackage!

http://autopackage.org/

;)

Sempre se ho capito la domanda, naturalmente :lol:
Quindi se riesco a creare un file.package siamo ok! ;)

Avatar utente
Ph1l
Linux 2.x
Linux 2.x
Messaggi: 232
Iscritto il: gio 4 gen 2007, 13:55
Slackware: 12.0
Località: Acerra (NA)
Contatta:

Messaggio da Ph1l »

stan ha scritto:
Ph1l ha scritto:No,è Autopackage!
http://autopackage.org/
[ot]Ma se un sw e' distribuito solo tramite un file .package come si fa' a fare lo slackbuild?[/ot]
Non ho capito cosa intendi... Autopackage o l'ipotetico software distribuito tramite quel "formato"? Perchè su http://autopackage.org/download-tools.html ci sono i sorgenti per i tool di creazione ;)
mordecai ha scritto:Quindi se riesco a creare un file.package siamo ok! ;)
Non dovrebbe essere difficoltoso, anche se... insomma... io sono fedele ai tgz ;)
Ho provato autopackage un paio di volte ed è assai irritante, installa anche una sorta di "pannello di controllo" in cui disinsinstallare il sw installato con il tool :(

Avatar utente
stan
Linux 3.x
Linux 3.x
Messaggi: 524
Iscritto il: lun 25 dic 2006, 11:55
Slackware: 12.1
Kernel: 2.6.xx
Desktop: Kde3
Località: Bs

Messaggio da stan »

Ph1l ha scritto:
stan ha scritto:
Ph1l ha scritto:No,è Autopackage!
http://autopackage.org/
[ot]Ma se un sw e' distribuito solo tramite un file .package come si fa' a fare lo slackbuild?[/ot]
Non ho capito cosa intendi... Autopackage o l'ipotetico software distribuito tramite quel "formato"? Perchè su http://autopackage.org/download-tools.html ci sono i sorgenti per i tool di creazione ;)
Correggimi se sbaglio...autopackage e' un tool che permette la creazione di installer (cioe' di file .package) per un qualsiasi software. Una volta scaricato il file .package da, mettiamo dalla home di supertux, un utente lancia il file .package il quale si occupa di gestire tutto il processo di installazione (download da internet del programma, decompressione, controllo dipendenze, compilazione e installazione..). In pratica di tutte le fasi di cui si deve occupare uno scrittore di slackbuilds.
Ora, la domanda e': lo scrittore di slackbuilds cosa fa'? Scarica i sorgenti di supertux e scrive lo slackbuild come se il file .package non fosse stato reso disponibile sulla home di supertux oppure scrive uno slackbuild al cui interno si lancia il file .package?

Avatar utente
Ph1l
Linux 2.x
Linux 2.x
Messaggi: 232
Iscritto il: gio 4 gen 2007, 13:55
Slackware: 12.0
Località: Acerra (NA)
Contatta:

Messaggio da Ph1l »

Stan, naturalmente il pacchettizzatore scarica i sorgenti e ci lavora a mano ^_*

Autopackage ha comunque pretese assurde (GTK e cose varie) decisamente fuori dalla filosofia KISS ;)

Avatar utente
DaNiMoTh
Linux 3.x
Linux 3.x
Messaggi: 941
Iscritto il: mar 30 nov 2004, 0:00
Località: irc.syrolnet.org /// #slackware
Contatta:

Messaggio da DaNiMoTh »

Se sono riuscito a capire bene la domanda, ti basta compilare il programma con le librerie staticamente linkate all'interno di esso; ovviamente avra' dimensioni piu` grandi, pero` dovrebbe funzionare ovunque tu lo porti. O no?

Avatar utente
EmaDaCuz
Linux 3.x
Linux 3.x
Messaggi: 877
Iscritto il: sab 28 gen 2006, 15:47
Slackware: 12.0 - ma a Trieste
Kernel: 2.6.25
Desktop: Fluxbox
Distribuzione: Debian e Arch
Località: Nijmegen, NL
Contatta:

Messaggio da EmaDaCuz »

DaNiMoTh ha scritto:Se sono riuscito a capire bene la domanda, ti basta compilare il programma con le librerie staticamente linkate all'interno di esso; ovviamente avra' dimensioni piu` grandi, pero` dovrebbe funzionare ovunque tu lo porti. O no?
Bello!E come si farebbe ad integrare tutte le librerie già presenti nel sitema in un unico binario?Mi interessa!

Avatar utente
albatros
Iper Master
Iper Master
Messaggi: 2093
Iscritto il: sab 4 feb 2006, 13:59
Kernel: 5.19.0
Desktop: gnome and lxqt
Distribuzione: ubuntu 22.04
Località: Darmstadt - Germania

Messaggio da albatros »

Bello!E come si farebbe ad integrare tutte le librerie già presenti nel sitema in un unico binario?Mi interessa!
Mica deve integrare tutte le librerie, solo quelle a cui è linkato.

Comunque non è sempre una soluzione, bisogna vedere se il programma, oltre all'eseguibile, ha i suoi file di dati, la sua documentazione o altre sue librerie per essere usate indipendentemente dal programma principale.
E, in effetti, ha comunque ragione EmaDaCuz nel sostenere che le dimensioni dell'eseguibile, in alcuni casi, potrebbero essere molto grandi.

Anche il fatto che funzioni su ogni distro è da vedere, dipende da cosa fa il programma, che kernel e che hardware si aspetta, eccetera.

Puoi comunque farti uno script di shell che scompatta quanto occorre nella tua home, imposta le necessarie variabili d'ambiente, esegue il programma e alla sua uscita cancella tutto... :)

Rispondi