installare software per *bsd

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
Avatar utente
Karma
Linux 2.x
Linux 2.x
Messaggi: 285
Iscritto il: mar 30 ago 2005, 0:00
Slackware: 12.0
Kernel: 2.6.23.1
Desktop: KDE 3.5
Località: Trento

installare software per *bsd

Messaggio da Karma »

Ciao a tutti!
girando per la rete ho trovato questo software: http://www.usinglinux.org/mail/distribute.html , che serve per ridistribuire automaticamente a una serie di indirizzi una mail entrante.
Tutte le versioni dei sorgenti che ho trovato però sarebbero per *bsd.
C'è un modo per installarle senza problemi anche su linux o c'è qualcuno che conosce un programma analogo per slackware?
Ho provato a fare un make install per verificare cosa diceva e mi segnalava degli errori del codice, ma non so se si ritrovano perchè sono sotto linux invece che bsd o per altri motivi...
Mi sapreste aiutare?
Grazie mille!

Karma

Avatar utente
IceSlack
Linux 4.x
Linux 4.x
Messaggi: 1313
Iscritto il: dom 30 ott 2005, 13:27

Messaggio da IceSlack »

mmm apparte che credo che dovresti fare

Codice: Seleziona tutto

#./configure --prefix=/usr && make && make install
e comunque magari ti mancano delle librerie......... pastaci l'errore.........

inoltre cosa dovrebbe fare il programma che cerchi?

Avatar utente
Karma
Linux 2.x
Linux 2.x
Messaggi: 285
Iscritto il: mar 30 ago 2005, 0:00
Slackware: 12.0
Kernel: 2.6.23.1
Desktop: KDE 3.5
Località: Trento

Messaggio da Karma »

Codice:
#./configure --prefix=/usr && make && make install
Questo è infatti quello che si fa normalmente, ma questo sorgente non contiene il file configure...
Il comando ls restituisce:

Codice: Seleziona tutto

BugList         OPTIONS       debuglog.h    logging.c  message.tmpl  strutil.h
ChangeLog       README        distribute.1  longstr.c  patchlevel.h  tmpl2c.pl
INSTALL.JP      README.FIRST  distribute.c  longstr.h  pathutil.c    util.h
MANIFEST        ToDo          header.c      memory.c   pathutil.h
Makefile        archive.c     header.h      memory.h   recipfile.c
Makefile.pmake  cdefs.h       history.c     message.c  recipfile.h
NEWS            config.h      history.h     message.h  strutil.c
e dando make install:

Codice: Seleziona tutto

perl tmpl2c.pl <message.tmpl >mestab.h
syntax error at tmpl2c.pl line 16, near "[]"
syntax error at tmpl2c.pl line 27, near "[]"
Execution of tmpl2c.pl aborted due to compilation errors.
make: *** [mestab.h] Error 255
 
Distribute da descrizione:
reforward incoming messages to a mailing list Distribute takes as its standard input a mail message, modifies the header (and optionally the body) of that message, then invokes sendmail to send the message to the specified recipients. It is primarily useful for those who run large mailing lists.
Grazie mille!

Karma

Avatar utente
Karma
Linux 2.x
Linux 2.x
Messaggi: 285
Iscritto il: mar 30 ago 2005, 0:00
Slackware: 12.0
Kernel: 2.6.23.1
Desktop: KDE 3.5
Località: Trento

Messaggio da Karma »

Ah, se invece lancio solo make esce:

Codice: Seleziona tutto

cc -g -DSYSLOG -DISSUE -DSUBJALIAS -DADDVERSION -DSYSLOG_FACILITY=LOG_LOCAL4  -DRELEASESTATE=\"Alpha\"   -c -o distribute.o distribute.c
distribute.c: In function `send_message':
distribute.c:1108: error: `notanews' undeclared (first use in this function)
distribute.c:1108: error: (Each undeclared identifier is reported only once
distribute.c:1108: error: for each function it appears in.)
distribute.c:1114: error: `badheader' undeclared (first use in this function)
distribute.c:1120: error: `administrative' undeclared (first use in this function)
distribute.c:1126: error: `notallowed' undeclared (first use in this function)
make: *** [distribute.o] Error 1
E su uno dei siti da dove scaricarlo ho trovato queste informazioni nel file packages.txt http://ftp.cs.umn.edu/pub/NetBSD/NetBSD ... ckages.txt :
2.3 Fetching distfiles
======================

There is one gotcha: The distribution file (i.e. the unmodified source)
must exist on your system for the packages system to be able to build it.
If it does not, then ftp(1) is used to fetch the distribution files
automatically.

You can overwrite some of the major distribution sites to fit to sites
that are close to your own. Have a look at
pkgsrc/mk/bsd.pkg.defaults.mk to find some examples - in particular,
look for the MASTER_SORT, MASTER_SORT_REGEX and INET_COUNTRY
definitions. This may save some of your bandwidth and time.

You can change these settings either in your shell's environment, or,
if you want to keep the settings, by editing the /etc/mk.conf file,
and adding the definitions there.

If you don't have a permanent Internet connection and you want to know
which files to download, "make fetch-list" will tell you what you'll need.
Put these distfiles into /usr/pkgsrc/distfiles.


2.4 How to build and install
============================

Assuming that the distfile has been fetched (see previous section), become
root and change into the relevant directory. Then you can type

% make

at the shell prompt to build the various components of the package, and

# make install

at the shell prompt to install the various components into the correct
places on your system.

Taking the top system utility as an example, we can install it on our
system by building as shown in appendix A.1.

The program is installed under the default root of the packages tree -
/usr/pkg. Should this not conform to your tastes, simply set the LOCALBASE
variable in your environment, and it will use that value as the root of
your packages tree. So, to use /usr/local, set

LOCALBASE=/usr/local

in your environment. Please note that you should use a root which is
dedicated to packages and not shared with other programs (ie, do not try
and use LOCALBASE=/usr). Also, you should not try to add any of your
own files or directories (such as, for example, src, obj, or pkgsrc) below
the LOCALBASE tree. This is to prevent possible conflicts between programs
and other files installed by the package system and whatever else may have
been installed there.

There is, of course, one exception to this - X11 packages are traditionally
installed in the X11 tree. The definition used to identify the root of the
X11 tree is the X11BASE definition.

It is possible to install X11 packages in the LOCALBASE tree, for
which you must install the xpkgwedge package
(pkgsrc/pkgtools/xpkgwedge) - see section 7.1 for further details.

Some packages look in /etc/mk.conf to alter some configuration options
at build time. Have a look at pkgsrc/mk/bsd.pkg.defaults.mk to
get an overview of what will be set there by default. Environment
variables such as LOCALBASE, and X11BASE can be set in /etc/mk.conf to
save having to remember to set them each time you want to use pkgsrc.

Occasionally, people want to "look under the covers" to see what is
going on when a package is building or being installed. This may be
for debugging purposes, or out of simple curiosity. A number of utility
values have been added to help with this.

(1) If you invoke the make(1) command with PKG_DEBUG_LEVEL=2, then a
huge amount of information will be displayed. As a worked example,

make patch PKG_DEBUG_LEVEL=2

will show all the commands that are invoked, up to and including the
"patch stage".

(2) If you want to know the value of a certain make(1) definition, then
the VARNAME definition should be used, in conjunction with the show-var
target. e.g.

make show-var VARNAME=DISTFILES

will show the expansion of the make(1) variable "DISTFILES".

If you want to de-install and re-install a binary package that you've
created (see next section), that you put into pkgsrc/packages manually or
that's located on a remote FTP server, you can use the the "bin-install"
target. This target will install a binary package - if available - via
pkg_add, and do a "make package" else. The list of remote FTP sites
searched is kept in the variable BINPKG_SITE, which defaults to
ftp.netbsd.org. Any flags that should be added to pkg_add(8) can be put
into BIN_INSTALL_FLAGS. See pkgsrc/mk/bsd.pkg.defaults.mk for more details.

A final word of warning: If you setup a system that has a non-standard
setting for LOCALBASE (or X11BASE, for that matter), be sure to set that
before any packages are installed, as you can not use several directories
for the same purpose. Doing so will result in pkgsrc not being able to
properly detect your installed packages, and fail miserably. Note also that
precompiled binary packages are usually built with the default LOCALBASE of
/usr/pkg, and that you should *not* install any if you use a non-standard
LOCALBASE.
Non capisco il pezzo dei dist-files... possibile che fra bsd e linux cambi così tanto?

Grazie

Karma

Avatar utente
albatros
Iper Master
Iper Master
Messaggi: 2098
Iscritto il: sab 4 feb 2006, 13:59
Kernel: 6.18.0
Desktop: gnome and lxqt
Distribuzione: Ubuntu 24.04 & FC 41
Località: Darmstadt - Germania

Messaggio da albatros »

Mah, mi hai incuriosito, ho provato a scaricarlo da http://www.freebsd.org/cgi/pds.cgi?port ... distribute e patcharlo fino alla release 2.1.25 (l'ultima è la 26, ma mi sono dimenticato di scaricare la pacth...).
Non ho controllato gli md5sum.
Comunque sia, ho letto il Makefile, non dovendolo installare non ho modificato nulla (se però lo installi attenzione alle varie variabili che puoi configurare editando il Makefile) ed ho dato make.
Pochi secondi ed ha compilato senza problemi, a parte un paio di warnings...
~/distribute-pl25# ./xdistribute -V
distribute version 2.1 (Alpha1) patchlevel 25
$Id: distribute.c,v 1.30 1999/05/07 09:28:32 shigeya Exp $

Options:
[SYSLOG] [ISSUE] [SUBJALIAS] [ADDVERSION]
[MAXSUBJLEN=4096] [MAXHEADERLINE=1000] [MAXHEADERLEN=16384]

Defaults:
Default archive directory path: /usr/spool/mail-list
Recipient file default path: /usr/lib/mail-list
Sequence file default path: /usr/lib/mail-list
Majordomo file default path: /usr/lib/mail-list/majordomo/lists
Default sequence suffix: .seq
Default recipient suffix: .rec
Default accept suffix: .acc
Default reject suffix: .rej
Default index filename: INDEX
Le dipendenze sono praticamente zero:
ldd xdistribute
linux-gate.so.1 => (0xb7f46000)
libc.so.6 => /lib/tls/libc.so.6 (0xb7df5000)
/lib/ld-linux.so.2 (0xb7f47000)
Che dirti, prova a riscaricare i file, verificando gli md5sum e patchando fino alla .26 prima di ricompilare...

Avatar utente
Karma
Linux 2.x
Linux 2.x
Messaggi: 285
Iscritto il: mar 30 ago 2005, 0:00
Slackware: 12.0
Kernel: 2.6.23.1
Desktop: KDE 3.5
Località: Trento

Messaggio da Karma »

Ho fatto come hai detto: ho riscaricato il file e le patch fino alle 26, con il comando

Codice: Seleziona tutto

 patch -d distribute-pl19/ < patchN 
e ridato il make, ma adesso ottengo:

Codice: Seleziona tutto

 perl tmpl2c.pl <message.tmpl >mestab.h
gcc -g -DSYSLOG -DISSUE -DSUBJALIAS -DADDVERSION -DSYSLOG_FACILITY=LOG_LOCAL4 -DCCMAIL -DUSEMIMEKIT  -DRELEASESTATE=\"Alpha1\"   -c -o distribute.o distribute.c
gcc -g -DSYSLOG -DISSUE -DSUBJALIAS -DADDVERSION -DSYSLOG_FACILITY=LOG_LOCAL4 -DCCMAIL -DUSEMIMEKIT  -DRELEASESTATE=\"Alpha1\"   -c -o recipfile.o recipfile.c
gcc -g -DSYSLOG -DISSUE -DSUBJALIAS -DADDVERSION -DSYSLOG_FACILITY=LOG_LOCAL4 -DCCMAIL -DUSEMIMEKIT  -DRELEASESTATE=\"Alpha1\"   -c -o message.o message.c
gcc -g -DSYSLOG -DISSUE -DSUBJALIAS -DADDVERSION -DSYSLOG_FACILITY=LOG_LOCAL4 -DCCMAIL -DUSEMIMEKIT  -DRELEASESTATE=\"Alpha1\"   -c -o memory.o memory.c
gcc -g -DSYSLOG -DISSUE -DSUBJALIAS -DADDVERSION -DSYSLOG_FACILITY=LOG_LOCAL4 -DCCMAIL -DUSEMIMEKIT  -DRELEASESTATE=\"Alpha1\"   -c -o history.o history.c
gcc -g -DSYSLOG -DISSUE -DSUBJALIAS -DADDVERSION -DSYSLOG_FACILITY=LOG_LOCAL4 -DCCMAIL -DUSEMIMEKIT  -DRELEASESTATE=\"Alpha1\"   -c -o pathutil.o pathutil.c
gcc -g -DSYSLOG -DISSUE -DSUBJALIAS -DADDVERSION -DSYSLOG_FACILITY=LOG_LOCAL4 -DCCMAIL -DUSEMIMEKIT  -DRELEASESTATE=\"Alpha1\"   -c -o strutil.o strutil.c
gcc -g -DSYSLOG -DISSUE -DSUBJALIAS -DADDVERSION -DSYSLOG_FACILITY=LOG_LOCAL4 -DCCMAIL -DUSEMIMEKIT  -DRELEASESTATE=\"Alpha1\"   -c -o header.o header.c
gcc -g -DSYSLOG -DISSUE -DSUBJALIAS -DADDVERSION -DSYSLOG_FACILITY=LOG_LOCAL4 -DCCMAIL -DUSEMIMEKIT  -DRELEASESTATE=\"Alpha1\"   -c -o logging.o logging.c
gcc -g -DSYSLOG -DISSUE -DSUBJALIAS -DADDVERSION -DSYSLOG_FACILITY=LOG_LOCAL4 -DCCMAIL -DUSEMIMEKIT  -DRELEASESTATE=\"Alpha1\"   -c -o longstr.o longstr.c
gcc -g -DSYSLOG -DISSUE -DSUBJALIAS -DADDVERSION -DSYSLOG_FACILITY=LOG_LOCAL4 -DCCMAIL -DUSEMIMEKIT  -DRELEASESTATE=\"Alpha1\" -o xdistribute distribute.o recipfile.o message.o memory.o history.o pathutil.o strutil.o header.o logging.o longstr.o  -L/usr/local/lib -lmimekit
/usr/lib/gcc/i486-slackware-linux/3.4.6/../../../../i486-slackware-linux/bin/ld: cannot find -lmimekit
collect2: ld returned 1 exit status
make: *** [xdistribute] Error 1
Libreria lmimekit? qualcuno la conosce?

Grazie

Karma

Avatar utente
albatros
Iper Master
Iper Master
Messaggi: 2098
Iscritto il: sab 4 feb 2006, 13:59
Kernel: 6.18.0
Desktop: gnome and lxqt
Distribuzione: Ubuntu 24.04 & FC 41
Località: Darmstadt - Germania

Messaggio da albatros »

A me è filato tutto listo senza installare nulla, però c'era scritto da qualche parte che c'era questa dipendenza di cui riporto il link che mi è rimasto nella cronologia:
http://www.freebsd.org/cgi/pds.cgi?port ... se/mimekit
Va detto che non ho una slackware standard, per questo avevo postato l'output di ldd per vedere se c'erano dipendenze nascoste di cui non mi ero accorto...
Ah, ecco, la dipendenza era citata in:
http://www.freebsd.org/ports/mail.html
alla riga che riguarda distribute

Avatar utente
Karma
Linux 2.x
Linux 2.x
Messaggi: 285
Iscritto il: mar 30 ago 2005, 0:00
Slackware: 12.0
Kernel: 2.6.23.1
Desktop: KDE 3.5
Località: Trento

Messaggio da Karma »

Niente da fare, ho installato anche quella dipendenza ma dà sempre libreria assente...
Grazie mille comunque!

Karma

bloodlust
Linux 3.x
Linux 3.x
Messaggi: 523
Iscritto il: mar 14 feb 2006, 12:02
Slackware: -1
Località: it_IT

Messaggio da bloodlust »

Karma ha scritto:Niente da fare, ho installato anche quella dipendenza ma dà sempre libreria assente...
Grazie mille comunque!
Karma
Hai dato ldconfig?
I path di ricerca delle librerie in fase di compilazione sono corretti?

Avatar utente
Karma
Linux 2.x
Linux 2.x
Messaggi: 285
Iscritto il: mar 30 ago 2005, 0:00
Slackware: 12.0
Kernel: 2.6.23.1
Desktop: KDE 3.5
Località: Trento

Messaggio da Karma »

Hai dato ldconfig?
I path di ricerca delle librerie in fase di compilazione sono corretti?
Fatto, ma niente libreria...
il link rimanda ad un programma che si chiama delegate che non installa praticamente niente, ma crea un eseguibile nella sua stessa directory.
Ho cercato la libreria in questione con trova file dopo l'installazione ma non c'è...
Mi sa che ci devo rinuciare e trovare un altro modo...
Grazie mille comunque!

Karma

Rispondi