disistallare sorgenti

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.
Avatar utente
gallows
Staff
Staff
Messaggi: 3471
Iscritto il: lun 20 set 2004, 0:00
Desktop: cwm
Distribuzione: OpenBSD
Località: ~/
Contatta:

Messaggio da gallows »

Frunktz ha scritto:Nooooo. Tutti i makefile che ho visto sono da 250 kb...
Ma la differenza sostanziale sarebbe?
Provo ad andare ad intuito...

Codice: Seleziona tutto

./configure --prefix=/usr
make install
Installa i programmi in /usr...

Codice: Seleziona tutto

./configure --prefix=/usr
make install DESTDIR=/chroot
Installa i programmi in /chroot/usr
L'effetto è esattamente quello, comunque i Makefile possono esse anche comprensibili es.:

Codice: Seleziona tutto

NAME = albhed
VERSION = 0.1.0

ifndef CFLAGS 
  CFLAGS = -O2 -march=i486 
endif

HOSTFLAGS = -Wall -pedantic -ansi

PREFIX = /usr/local
BINDIR = $(DESTDIR)$(PREFIX)/bin
DOCDIR = $(DESTDIR)$(PREFIX)/doc/$(NAME)-$(VERSION)

CC = gcc
COMPILE = $(CC) $(CFLAGS) $(HOSTFLAGS)

DOCS = AUTHORS ChangeLog COPYING INSTALL TODO

INSTALL_EXE = install -m 0755
INSTALL_DOC = install -m 0644

world :		main.o alb_ita.o ita_alb.o
		$(COMPILE) -o albhed main.o alb_ita.o ita_alb.o

main.o :	src/main.c src/albhed.h
		$(COMPILE) -c src/main.c

alb_ita.o :	src/alb_ita.c src/albhed.h
		$(COMPILE) -c src/alb_ita.c

ita_alb.o :	src/ita_alb.c src/albhed.h
		$(COMPILE) -c src/ita_alb.c

clean :		
		rm -f albhed
		rm -f *.o

install :      albhed
		test -e $(BINDIR) || mkdir -p $(BINDIR)
		test -e $(DOCDIR) || mkdir -p $(DOCDIR)
		$(INSTALL_EXE) albhed $(BINDIR)
		$(INSTALL_DOC) $(DOCS) $(DOCDIR)
		
uninstall :	
		rm -f $(BINDIR)/albhed
		rm -rf $(DOCDIR)
È abbastanza intuitivo, come puoi immaginare però per progetti ben più grandi le cose si complicano, ma i concetti sono quelli.

Frunktz
Linux 2.x
Linux 2.x
Messaggi: 272
Iscritto il: mer 20 lug 2005, 0:00

Messaggio da Frunktz »

In teoria è come pensavo...

Codice: Seleziona tutto

BINDIR = $(DESTDIR)$(PREFIX)/bin
DOCDIR = $(DESTDIR)$(PREFIX)/doc/$(NAME)-$(VERSION)
Piuttosto in questo caso la DESTDIR viene presa come parametro dal make DESTDIR immagino..

Avatar utente
gallows
Staff
Staff
Messaggi: 3471
Iscritto il: lun 20 set 2004, 0:00
Desktop: cwm
Distribuzione: OpenBSD
Località: ~/
Contatta:

Messaggio da gallows »

Frunktz ha scritto:In teoria è come pensavo...

Codice: Seleziona tutto

BINDIR = $(DESTDIR)$(PREFIX)/bin
DOCDIR = $(DESTDIR)$(PREFIX)/doc/$(NAME)-$(VERSION)
Piuttosto in questo caso la DESTDIR viene presa come parametro dal make DESTDIR immagino..
Sì, $(VARIABILE) è la sintassi per accedere ad una variabile nel linguaggio per i Makefile.

Avatar utente
glpiana
Linux 3.x
Linux 3.x
Messaggi: 636
Iscritto il: lun 12 gen 2004, 0:00
Contatta:

Re: disistallare sorgenti

Messaggio da glpiana »

gorge91 ha scritto:vorrei disinstallare guarddog ma se scrivo make unistall non va...come che si fa??? :oops:
se hai ancora la directory con i sorgenti, ti consiglierei di installarti "checkinstall" (lo trovi nell'area download), passa a root, dai checkinstall al posto di "make install". ti chiederà la descrizione del pacchetto; con questa procedura hai praticamente ottenuto il risultato di "make install", ma hai anche un opacchetto tgz, che potrai rimuovere con "removepkg nomepacchetto". se non hai più i sorgenti, ricompila il pacchetto esattamente come hai fatto prima e dai "checkinstall" al posto di "make install".

p.s.: da quando ho scoperto checkinstall la mia vita è cambiata :D

Frunktz
Linux 2.x
Linux 2.x
Messaggi: 272
Iscritto il: mer 20 lug 2005, 0:00

Messaggio da Frunktz »

gallows ha scritto:
Frunktz ha scritto:In teoria è come pensavo...

Codice: Seleziona tutto

BINDIR = $(DESTDIR)$(PREFIX)/bin
DOCDIR = $(DESTDIR)$(PREFIX)/doc/$(NAME)-$(VERSION)
Nono, so che si usa quella notazione, ma il nome DESTDIR è il parametro passato a make install in questo caso, dato che nel tuo post non è dichiarata da nessuna parte..A meno che non sia stata tralasciata...anzi credo sia così..

Avatar utente
gallows
Staff
Staff
Messaggi: 3471
Iscritto il: lun 20 set 2004, 0:00
Desktop: cwm
Distribuzione: OpenBSD
Località: ~/
Contatta:

Messaggio da gallows »

Frunktz ha scritto:Nono, so che si usa quella notazione, mha il nome DESTDIR è il parametro passato a make install in questo caso, dato che nel tuo post non è dichiarata da nessuna parte..A meno che non sia stata tralasciata...anzi credo sia così..
Sì, viene dichiarata opzionalmente al di fuori del Makefile.

Rispondi