Si, comunque in generale diciamo che dipende dal programma che vuoi compilare.
In che modo, anche qui dipende da cosa devi compilare. Quali altri programmi, librerie ecc, richiede come dipendenza la compilazione di quel particolare software.
Per lo più immaginando di partire dai sorgenti (ipotizzo un programma open), devi "studiarti" un po' i file di documentazione di solito inclusi nel pacchetto dei sorgenti stessi. Di solito c'è un file README o INSTALL e poi puoi cercare sempre in rete per vedere come hanno fatto altri.
Il punto di arrivo migliore secondo me, quando hai lavorato i sorgenti compilando il tutto è di rinunciare ad installare direttamente nella root di sistema "/", ma installare i file prodotti in una dir di lavoro (a tua scelta, tipo /tmp/pkg-nome_software) e successivamente andare a creare un pacchetto ".txz" diciamo "slackware-friendly" lanciando "makepkg" da quella directory di lavoro (in giro si trovano linee guida su come creare pacchetti slackware).
Inoltre per automatizzare un po' tutta la procedura (anche per non dover rifare tutto a mano se qualcosa va storto) si butta giù uno script bash... che nel nostro caso portrerà alla creazione del pacchetto "txz" e prende il nome di slackbuild.
Questo partendo proprio da zero...
Però in parecchi casi c'è una scorciatoia:
se di un programma vuoi mettere la versione più aggiornata e non trovi il pacchetto txz per current, può essere che dello stesso programma trovi in rete lo slackbuild già pronto, magari per una versione più vecchia.
In tal caso puoi usarlo come punto di partenza, editandolo opportunamente (di solito si modifica la variabile "VERSION" mettendo la versione desiderata). Poi lo metti nella dir di lavoro assieme al pacchetto dei sorgenti e lo lanci.
E dopo un po' di macinare dovrebbe sputar fuori il nostro pacchetto txz.
Esempi di slackbuilds ne trovi in giro, anche qui su slacky.eu, così come sul sito di Alien Bob (li ne trovi anche per -current), o su slackbuilds, ma anche su slackware.com nel repo ufficiale vedrai il ramo "sources":
http://ftp.slackware.com/pub/slackware/ ... nt/source/
Diciamo che la domanda oltre che generica è relativa ad un argomento piuttosto vasto. Ricordo che io appena giunto al Pinguino, avrei avuto difficoltà ad affrontare la compilazione e pacchettizzazione del software. Però leggendo un po' di documentazione non è nulla di troppo complicato. L'unica cosa è che magari certi programmi non sono di facile approccio, insomma dipende cosa devi compilarti.