Network library lcrzo ------------------------------------------- | KNOWN PROBLEMS | ------------------------------------------- This file describes known problems (incompatibilities, unsupported functionalities, errors, etc.). If you seek help (usage help, examples, etc.), it's better to read lcrzo-4.xx-doc_html.tgz. You can also use "man lcrzo". Problems described in this file are (if you encounter an unknown problem, thanks for contacting me, as explained in ./doc/problemreport_en.txt) : WHILE EXECUTING ./GENEMAKE 1: [Linux] exec ether_hostton ko Warning: you are on a computer with a bad ether_hostton. The library lcrzo will still be usable, but read ../doc/probleminstallunix_en.txt if you want to use the file /etc/ethers. [problem in /etc/nsswitch.conf] 2: [Linux] exec ether_hostton ko Warning: you are on a computer with a bad ether_hostton. The library lcrzo will still be usable, but read ../doc/probleminstallunix_en.txt if you want to use the file /etc/ethers. [problem in /etc/ethers] 3: ./genemake : Permission denied. 4: Error: the xx directory '/usr/.../toto' doesn't exists. 5: Error: the library libpcap is not installed. 6: config.verif.tmp.c: pcap.h: No such file or directory. 7: pcap.h: net/bpf.h: No such file or directory. 8: /usr/bin/ld: cannot find -lpcap. WHILE COMPILING 9: [FreeBSD, Solaris] Warning : integer constant is unsigned in ANSI C, signed with -traditional. 10: [Solaris] Warning : implicit declaration of function `ether_hostton'. 11: [Linux] Error : /usr/include/linux/xxx.h: No such file or directory Error : /usr/include/asm/xxx.h: No such file or directory Error : linux/xxx.h: No such file or directory Error : asm/xxx.h: No such file or directory 12: [Solaris] Warning : SIG_IGN : function declaration isn't a prototype Warning : SIG_DFL : function declaration isn't a prototype Warning : SIG_xxx : function declaration isn't a prototype 13: [Linux] Warning in /usr/include/bits/string2.h ------------------------------------------------------------------------------- Problem 1 : Problem synthesis : exec ether_hostton ko Warning: you are on a computer with a bad ether_hostton. The library lcrzo will still be usable, but read ../doc/probleminstallunix_en.txt if you want to use the file /etc/ethers. [problem in /etc/nsswitch.conf] Environment affected by the problem : Glibc-2.?? (<2.2.1) with "nisplus" or "db" in /etc/nsswitch.conf What's causing the problem : The problem arises when calling the function ether_hostton, and when the entry "nisplus" or "db" is in /etc/nsswitch.conf. Indeed, there is an error in glibc source (glibc-2.1.3) : nis/nss_nisplus/nisplus-ethers.c, line 234 : there is "if (name != NULL)" instead of "if (name == NULL)" Note : an email was sent to glibc developers. They applied a patch in glibc 2.2.1. Solution 1 : Edit /etc/nsswitch.conf to replace the line : ethers: _here_nisplus_or_nis_or_db_is_written_ files by : ethers: files Indeed, the problems disappears when removing "nis", "nisplus" or "db". You should then execute "genemake" again (and compile and install) to ensure that lcrzo will use ether_hostton. Solution 2 : Install glibc > 2.2.1. ------------------------------------------------------------------------------- Problem 2 : Problem synthesis : exec ether_hostton ko Warning: you are on a computer with a bad ether_hostton. The library lcrzo will still be usable, but read ../doc/probleminstallunix_en.txt if you want to use the file /etc/ethers. [problem in /etc/ethers] Environment affected by the problem : /etc/ethers empty What's causing the problem : The problem arises when /etc/ethers exists, but is empty. Indeed, there is an error in glibc source (glibc-2.1.3) : inet/ether_hton.c, line 76 : fct has only four parameters, instead of five Note : an email was sent to glibc developers. They applied a patch in glibc 2.2.1. Solution 1 : Remove the file /etc/ethers if it doesn't contain any line. Solution 2 : Install glibc > 2.2.1. ------------------------------------------------------------------------------- Problem 3 : Problem synthesis : ./genemake : Permission denied. Environment affected by the problem : All What's causing the problem : file-4.xx-src.tgz wasn't uncompressed with a good program. Solution : Use : tar -zxvf file-4.xx-src.tgz or gunzip file-4.xx-src.tgz ; tar -xvf file-4.xx-src.tar ------------------------------------------------------------------------------- Problem 4 : Problem synthesis : Error: the xx directory '/usr/.../toto' doesn't exists. Environment affected by the problem : All What's causing the problem : The directory named 'toto' does not exist on your system. Solution 1 : Create the directory with : mkdir /usr/.../toto Solution 2 : Edit ../src/genemake to specify a new installation directory. ------------------------------------------------------------------------------- Problem 5 : Problem synthesis : Error: the library libpcap is not installed. Environment affected by the problem : All What's causing the problem : The library libpcap doesn't seem to be installed Solution 1 : Libpcap isn't completely installed or configured Install it from http://www.tcpdump.org/. Solution 2 : Verify that all packages are installed on your system. For example, for Debian, you have to install libpcapxx.deb (for the dynamic library) and libpcap-devxx.deb (for pcap.h). Solution 3 : [if the error is about pcap.h] The file pcap.h is not located in a good directory : locate "pcap.h" If you find it in /somewhere/pcap.h, then link it : ln -s /somewhere/pcap.h /usr/local/include/pcap.h Note : "/usr/local/include/" might not be in the path searched by the compiler (this is the case for the gcc optional package of Solaris8), so use "/usr/include/" for example. Solution 4 : [if the error is about bpf.h] The file bpf.h is not located in a good directory : locate "bpf.h" If you find it in /somewhere/bpf.h, then link it : ln -s /somewhere/bpf.h /usr/local/include/net/bpf.h Note : "/usr/local/include/" might not be in the path searched by the compiler (this is the case for the gcc optional package of Solaris8), so use "/usr/include/" for example. Solution 5 : [if the error is about bpf.h] The file /usr/local/include/net/bpf.h or /usr/include/net/bpf.h is not on your system. Search the cdrom of your distribution to find the file "bpf.h", and install the corresponding missing package. Solution 6 : [if the error is about -lpcap] The file libpcap.a/libpcap.so is not located in a good directory : locate "libpcap.a" ; locate "libpcap.so" If you find it in /somewhere/libpcap.a_or_so, then link it : ln -s /somewhere/libpcap.a /usr/local/lib/libpcap.a ln -s /somewhere/libpcap.so /usr/local/lib/libpcap.so Note : "/usr/local/lib/" might not be in the path searched by the compiler (this is the case for the gcc optional package of Solaris8), so use "/usr/lib/" for example. ------------------------------------------------------------------------------- Problem 6 : Problem synthesis : config.verif.tmp.c: pcap.h: No such file or directory. Environment affected by the problem : All What's causing the problem : The library libpcap doesn't seem to be installed Solution 1 : Libpcap isn't completely installed or configured Install it from http://www.tcpdump.org/. Solution 2 : Verify that all packages are installed on your system. For example, for Debian, you have to install libpcapxx.deb (for the dynamic library) and libpcap-devxx.deb (for pcap.h). Solution 3 : [if the error is about pcap.h] The file pcap.h is not located in a good directory : locate "pcap.h" If you find it in /somewhere/pcap.h, then link it : ln -s /somewhere/pcap.h /usr/local/include/pcap.h Note : "/usr/local/include/" might not be in the path searched by the compiler (this is the case for the gcc optional package of Solaris8), so use "/usr/include/" for example. Solution 4 : [if the error is about bpf.h] The file bpf.h is not located in a good directory : locate "bpf.h" If you find it in /somewhere/bpf.h, then link it : ln -s /somewhere/bpf.h /usr/local/include/net/bpf.h Note : "/usr/local/include/" might not be in the path searched by the compiler (this is the case for the gcc optional package of Solaris8), so use "/usr/include/" for example. Solution 5 : [if the error is about bpf.h] The file /usr/local/include/net/bpf.h or /usr/include/net/bpf.h is not on your system. Search the cdrom of your distribution to find the file "bpf.h", and install the corresponding missing package. Solution 6 : [if the error is about -lpcap] The file libpcap.a/libpcap.so is not located in a good directory : locate "libpcap.a" ; locate "libpcap.so" If you find it in /somewhere/libpcap.a_or_so, then link it : ln -s /somewhere/libpcap.a /usr/local/lib/libpcap.a ln -s /somewhere/libpcap.so /usr/local/lib/libpcap.so Note : "/usr/local/lib/" might not be in the path searched by the compiler (this is the case for the gcc optional package of Solaris8), so use "/usr/lib/" for example. ------------------------------------------------------------------------------- Problem 7 : Problem synthesis : pcap.h: net/bpf.h: No such file or directory. Environment affected by the problem : All What's causing the problem : The library libpcap doesn't seem to be installed Solution 1 : Libpcap isn't completely installed or configured Install it from http://www.tcpdump.org/. Solution 2 : Verify that all packages are installed on your system. For example, for Debian, you have to install libpcapxx.deb (for the dynamic library) and libpcap-devxx.deb (for pcap.h). Solution 3 : [if the error is about pcap.h] The file pcap.h is not located in a good directory : locate "pcap.h" If you find it in /somewhere/pcap.h, then link it : ln -s /somewhere/pcap.h /usr/local/include/pcap.h Note : "/usr/local/include/" might not be in the path searched by the compiler (this is the case for the gcc optional package of Solaris8), so use "/usr/include/" for example. Solution 4 : [if the error is about bpf.h] The file bpf.h is not located in a good directory : locate "bpf.h" If you find it in /somewhere/bpf.h, then link it : ln -s /somewhere/bpf.h /usr/local/include/net/bpf.h Note : "/usr/local/include/" might not be in the path searched by the compiler (this is the case for the gcc optional package of Solaris8), so use "/usr/include/" for example. Solution 5 : [if the error is about bpf.h] The file /usr/local/include/net/bpf.h or /usr/include/net/bpf.h is not on your system. Search the cdrom of your distribution to find the file "bpf.h", and install the corresponding missing package. Solution 6 : [if the error is about -lpcap] The file libpcap.a/libpcap.so is not located in a good directory : locate "libpcap.a" ; locate "libpcap.so" If you find it in /somewhere/libpcap.a_or_so, then link it : ln -s /somewhere/libpcap.a /usr/local/lib/libpcap.a ln -s /somewhere/libpcap.so /usr/local/lib/libpcap.so Note : "/usr/local/lib/" might not be in the path searched by the compiler (this is the case for the gcc optional package of Solaris8), so use "/usr/lib/" for example. ------------------------------------------------------------------------------- Problem 8 : Problem synthesis : /usr/bin/ld: cannot find -lpcap. Environment affected by the problem : All What's causing the problem : The library libpcap doesn't seem to be installed Solution 1 : Libpcap isn't completely installed or configured Install it from http://www.tcpdump.org/. Solution 2 : Verify that all packages are installed on your system. For example, for Debian, you have to install libpcapxx.deb (for the dynamic library) and libpcap-devxx.deb (for pcap.h). Solution 3 : [if the error is about pcap.h] The file pcap.h is not located in a good directory : locate "pcap.h" If you find it in /somewhere/pcap.h, then link it : ln -s /somewhere/pcap.h /usr/local/include/pcap.h Note : "/usr/local/include/" might not be in the path searched by the compiler (this is the case for the gcc optional package of Solaris8), so use "/usr/include/" for example. Solution 4 : [if the error is about bpf.h] The file bpf.h is not located in a good directory : locate "bpf.h" If you find it in /somewhere/bpf.h, then link it : ln -s /somewhere/bpf.h /usr/local/include/net/bpf.h Note : "/usr/local/include/" might not be in the path searched by the compiler (this is the case for the gcc optional package of Solaris8), so use "/usr/include/" for example. Solution 5 : [if the error is about bpf.h] The file /usr/local/include/net/bpf.h or /usr/include/net/bpf.h is not on your system. Search the cdrom of your distribution to find the file "bpf.h", and install the corresponding missing package. Solution 6 : [if the error is about -lpcap] The file libpcap.a/libpcap.so is not located in a good directory : locate "libpcap.a" ; locate "libpcap.so" If you find it in /somewhere/libpcap.a_or_so, then link it : ln -s /somewhere/libpcap.a /usr/local/lib/libpcap.a ln -s /somewhere/libpcap.so /usr/local/lib/libpcap.so Note : "/usr/local/lib/" might not be in the path searched by the compiler (this is the case for the gcc optional package of Solaris8), so use "/usr/lib/" for example. ------------------------------------------------------------------------------- Problem 9 : Problem synthesis : Warning : integer constant is unsigned in ANSI C, signed with -traditional. Environment affected by the problem : FreeBSD 3.1, FreeBSD 4.0, Solaris 2.8 What's causing the problem : This error is in the definition of SIOCGIFCONF, which uses a signed number. Solution : You should edit /usr/include/sys/ioccom.h to correct IOC_IN : "#define IOC_IN 0x80000000u" instead of "#define IOC_IN 0x80000000" ------------------------------------------------------------------------------- Problem 10 : Problem synthesis : Warning : implicit declaration of function `ether_hostton'. Environment affected by the problem : Solaris 2.x What's causing the problem : The functions "ether_hostton" and "ether_ntohost" are never defined. Solution : You should edit "/usr/include/netinet/if_ether.h" to add : int ether_hostton(char *hostname, struct ether_addr *e); int ether_ntohost(char *hostname, struct ether_addr *e); ------------------------------------------------------------------------------- Problem 11 : Problem synthesis : Error : /usr/include/linux/xxx.h: No such file or directory Error : /usr/include/asm/xxx.h: No such file or directory Error : linux/xxx.h: No such file or directory Error : asm/xxx.h: No such file or directory Environment affected by the problem : Linux What's causing the problem : Standard includes are needed to compile. Solution 1 : Install the package libc6-dev_xxx For example, under Debian : libc6-dev_2.x.x-xx.deb. Solution 2 : The new kernel includes have to be reachable by the compiler. For example : ln -s /usr/src/linux-x.x.xx/include/asm /usr/include/asm ln -s /usr/src/linux-x.x.xx/include/linux /usr/include/linux ------------------------------------------------------------------------------- Problem 12 : Problem synthesis : Warning : SIG_IGN : function declaration isn't a prototype Warning : SIG_DFL : function declaration isn't a prototype Warning : SIG_xxx : function declaration isn't a prototype Environment affected by the problem : Solaris What's causing the problem : Prototype for SIG_xxx is incorrect. Solution : Edit /usr/include/sys/iso/signal_iso.h (or /usr/include/sys/signal.h) to replace : #define SIG_IGN (void(*)())1 by : #define SIG_IGN (void(*)(int))1 ------------------------------------------------------------------------------- Problem 13 : Problem synthesis : Warning in /usr/include/bits/string2.h Environment affected by the problem : Linux What's causing the problem : Standard inlines do not compile without warning. Solution : Edit /usr/include/string.h at line 359 (may vary, it's just before "#include <bits/string2.h>") to add #define __NO_STRING_INLINES 1