![]() |
Hi, I've attached a variation of a patch I found at Nico Kadel-Garcia's web site. I'd guess that it's also at www.hylafax.org. Put the patch in the parent directory of the hylafax distribution - the directory that contains hylafax-v4.0pl2. Ensure this is a fresh distribution, not one you've been fiddling with. Then : patch <hy_slack_ecgs.patch >p.out 2>p.err Examine p.out & p.err to verify all hunks succeeded. If OK, build hylafax as per README. I've used this patch with Slackware 3.5 (kernel 2.0.34) several times, most recently today, with success. Take it easy, Mark Wilson P. Kay Associates Ltd. On Fri, 11 Dec 1998, KREMMIDAS KLEANTHIS wrote: > Hello to all, > > I'm trying to install HylaFAX 4.0 pl2 on my Slackware machine with > kernel 2.0.34. > The output from gcc -v follows: > #Reading specs from /usr/lib/gcc-lib/i586-pc-linux-gnulibc1/egcs- > 2.90.29/specs > gcc version egcs-2.90.29 980515 (egcs-1.0.3 release) > > The problem seems that the sendfax program cannot be compiled > since faxsetup cannot find it and at the compilation an error is > produced. > Could someone help me please cause it is something very > important. What should I do ?? > > Thank you in advance. > Kremmidas Kleanthis > System Administrator at Lambrakis Research Foundation (L.R.F) > E-mail : Kremmidas.Kleanthis@lrf.gr > kremmidas@yahoo.com > kremidas@hotmail.com > kremidas@hellug.gr > Phone : (+301) 3311848 > Fax : (+301) 3230668 > Address : 3 Paparigopoulou st, 10561, Athens, Greece (GR) > > diff -cr hylafax-v4.0pl2/hfaxd/FileSystem.c++ hylafax-v4.0pl2.new/hfaxd/FileSystem.c++ *** hylafax-v4.0pl2/hfaxd/FileSystem.c++ Sat Feb 14 21:50:01 1998 --- hylafax-v4.0pl2.new/hfaxd/FileSystem.c++ Fri Feb 20 14:43:48 1998 *************** *** 139,202 **** SpoolDir HylaFAXServer::dirs[] = { { "/status/", FALSE, FALSE, FALSE, 0, HylaFAXServer::isVisibleTRUE, ! HylaFAXServer::listStatus, HylaFAXServer::listStatusFile, ! HylaFAXServer::nlstStatus, HylaFAXServer::nlstUnixFile, }, { "/sendq/", FALSE, FALSE, FALSE, 0, HylaFAXServer::isVisibleSendQFile, ! HylaFAXServer::listSendQ, HylaFAXServer::listSendQFile, ! HylaFAXServer::nlstSendQ, HylaFAXServer::nlstSendQFile, }, { "/doneq/", FALSE, FALSE, FALSE, 0, HylaFAXServer::isVisibleSendQFile, ! HylaFAXServer::listSendQ, HylaFAXServer::listSendQFile, ! HylaFAXServer::nlstSendQ, HylaFAXServer::nlstSendQFile, }, { "/docq/", FALSE, TRUE, TRUE, 0, HylaFAXServer::isVisibleDocQFile, ! HylaFAXServer::listDirectory, HylaFAXServer::listUnixFile, ! HylaFAXServer::nlstDirectory, HylaFAXServer::nlstUnixFile, }, { "/tmp/", FALSE, TRUE, TRUE, 0, HylaFAXServer::isVisibleTRUE, ! HylaFAXServer::listDirectory, HylaFAXServer::listUnixFile, ! HylaFAXServer::nlstDirectory, HylaFAXServer::nlstUnixFile, }, { "/log/", FALSE, FALSE, FALSE, 0, HylaFAXServer::isVisibleTRUE, ! HylaFAXServer::listDirectory, HylaFAXServer::listUnixFile, ! HylaFAXServer::nlstDirectory, HylaFAXServer::nlstUnixFile, }, { "/recvq/", FALSE, FALSE, TRUE, 0, HylaFAXServer::isVisibleRecvQFile, ! HylaFAXServer::listRecvQ, HylaFAXServer::listRecvQFile, ! HylaFAXServer::nlstDirectory, HylaFAXServer::nlstUnixFile, }, { "/archive/", FALSE, FALSE, FALSE, 0, HylaFAXServer::isVisibleTRUE, ! HylaFAXServer::listDirectory, HylaFAXServer::listUnixFile, ! HylaFAXServer::nlstDirectory, HylaFAXServer::nlstUnixFile, }, { "/pollq/", FALSE, TRUE, TRUE, 0, HylaFAXServer::isVisibleRecvQFile, ! HylaFAXServer::listRecvQ, HylaFAXServer::listRecvQFile, ! HylaFAXServer::nlstDirectory, HylaFAXServer::nlstUnixFile, }, { "/", FALSE, FALSE, FALSE, 0, HylaFAXServer::isVisibleRootFile, ! HylaFAXServer::listDirectory, HylaFAXServer::listUnixFile, ! HylaFAXServer::nlstDirectory, HylaFAXServer::nlstUnixFile, }, { "/etc/", TRUE, FALSE, FALSE, 0, HylaFAXServer::isVisibleTRUE, ! HylaFAXServer::listDirectory, HylaFAXServer::listUnixFile, ! HylaFAXServer::nlstDirectory, HylaFAXServer::nlstUnixFile, }, { "/info/", FALSE, FALSE, FALSE, 0, HylaFAXServer::isVisibleTRUE, ! HylaFAXServer::listDirectory, HylaFAXServer::listUnixFile, ! HylaFAXServer::nlstDirectory, HylaFAXServer::nlstUnixFile, }, { "/bin/", TRUE, FALSE, FALSE, 0, HylaFAXServer::isVisibleTRUE, ! HylaFAXServer::listDirectory, HylaFAXServer::listUnixFile, ! HylaFAXServer::nlstDirectory, HylaFAXServer::nlstUnixFile, }, { "/config/", FALSE, FALSE, FALSE, 0, HylaFAXServer::isVisibleTRUE, ! HylaFAXServer::listDirectory, HylaFAXServer::listUnixFile, ! HylaFAXServer::nlstDirectory, HylaFAXServer::nlstUnixFile, }, { "/client/", TRUE, FALSE, FALSE, 0, HylaFAXServer::isVisibleTRUE, ! HylaFAXServer::listDirectory, HylaFAXServer::listUnixFile, ! HylaFAXServer::nlstDirectory, HylaFAXServer::nlstUnixFile, }, }; #define N(a) (sizeof (a) / sizeof (a[0])) --- 139,202 ---- SpoolDir HylaFAXServer::dirs[] = { { "/status/", FALSE, FALSE, FALSE, 0, HylaFAXServer::isVisibleTRUE, ! &HylaFAXServer::listStatus, &HylaFAXServer::listStatusFile, ! &HylaFAXServer::nlstStatus, &HylaFAXServer::nlstUnixFile, }, { "/sendq/", FALSE, FALSE, FALSE, 0, HylaFAXServer::isVisibleSendQFile, ! &HylaFAXServer::listSendQ, &HylaFAXServer::listSendQFile, ! &HylaFAXServer::nlstSendQ, &HylaFAXServer::nlstSendQFile, }, { "/doneq/", FALSE, FALSE, FALSE, 0, HylaFAXServer::isVisibleSendQFile, ! &HylaFAXServer::listSendQ, &HylaFAXServer::listSendQFile, ! &HylaFAXServer::nlstSendQ, &HylaFAXServer::nlstSendQFile, }, { "/docq/", FALSE, TRUE, TRUE, 0, HylaFAXServer::isVisibleDocQFile, ! &HylaFAXServer::listDirectory, &HylaFAXServer::listUnixFile, ! &HylaFAXServer::nlstDirectory, &HylaFAXServer::nlstUnixFile, }, { "/tmp/", FALSE, TRUE, TRUE, 0, HylaFAXServer::isVisibleTRUE, ! &HylaFAXServer::listDirectory, &HylaFAXServer::listUnixFile, ! &HylaFAXServer::nlstDirectory, &HylaFAXServer::nlstUnixFile, }, { "/log/", FALSE, FALSE, FALSE, 0, HylaFAXServer::isVisibleTRUE, ! &HylaFAXServer::listDirectory, &HylaFAXServer::listUnixFile, ! &HylaFAXServer::nlstDirectory, &HylaFAXServer::nlstUnixFile, }, { "/recvq/", FALSE, FALSE, TRUE, 0, HylaFAXServer::isVisibleRecvQFile, ! &HylaFAXServer::listRecvQ, &HylaFAXServer::listRecvQFile, ! &HylaFAXServer::nlstDirectory, &HylaFAXServer::nlstUnixFile, }, { "/archive/", FALSE, FALSE, FALSE, 0, HylaFAXServer::isVisibleTRUE, ! &HylaFAXServer::listDirectory, &HylaFAXServer::listUnixFile, ! &HylaFAXServer::nlstDirectory, &HylaFAXServer::nlstUnixFile, }, { "/pollq/", FALSE, TRUE, TRUE, 0, HylaFAXServer::isVisibleRecvQFile, ! &HylaFAXServer::listRecvQ, &HylaFAXServer::listRecvQFile, ! &HylaFAXServer::nlstDirectory, &HylaFAXServer::nlstUnixFile, }, { "/", FALSE, FALSE, FALSE, 0, HylaFAXServer::isVisibleRootFile, ! &HylaFAXServer::listDirectory, &HylaFAXServer::listUnixFile, ! &HylaFAXServer::nlstDirectory, &HylaFAXServer::nlstUnixFile, }, { "/etc/", TRUE, FALSE, FALSE, 0, HylaFAXServer::isVisibleTRUE, ! &HylaFAXServer::listDirectory, &HylaFAXServer::listUnixFile, ! &HylaFAXServer::nlstDirectory, &HylaFAXServer::nlstUnixFile, }, { "/info/", FALSE, FALSE, FALSE, 0, HylaFAXServer::isVisibleTRUE, ! &HylaFAXServer::listDirectory, &HylaFAXServer::listUnixFile, ! &HylaFAXServer::nlstDirectory, &HylaFAXServer::nlstUnixFile, }, { "/bin/", TRUE, FALSE, FALSE, 0, HylaFAXServer::isVisibleTRUE, ! &HylaFAXServer::listDirectory, &HylaFAXServer::listUnixFile, ! &HylaFAXServer::nlstDirectory, &HylaFAXServer::nlstUnixFile, }, { "/config/", FALSE, FALSE, FALSE, 0, HylaFAXServer::isVisibleTRUE, ! &HylaFAXServer::listDirectory, &HylaFAXServer::listUnixFile, ! &HylaFAXServer::nlstDirectory, &HylaFAXServer::nlstUnixFile, }, { "/client/", TRUE, FALSE, FALSE, 0, HylaFAXServer::isVisibleTRUE, ! &HylaFAXServer::listDirectory, &HylaFAXServer::listUnixFile, ! &HylaFAXServer::nlstDirectory, &HylaFAXServer::nlstUnixFile, }, }; #define N(a) (sizeof (a) / sizeof (a[0])) diff -cr hylafax-v4.0pl2/hfaxd/OldProtocol.c++ hylafax-v4.0pl2.new/hfaxd/OldProtocol.c++ *** hylafax-v4.0pl2/hfaxd/OldProtocol.c++ Sat Feb 14 21:50:07 1998 --- hylafax-v4.0pl2.new/hfaxd/OldProtocol.c++ Fri Feb 20 14:33:30 1998 *************** *** 220,257 **** // NB: there is no support for the old style data transfer const OldProtocolServer::protoCmd OldProtocolServer::cmds[] = { ! { "begin", TRUE, OldProtocolServer::submitJob }, ! { "checkPerm", TRUE, OldProtocolServer::ackPermission }, ! { "tiff", TRUE, OldProtocolServer::getTIFFData }, ! { "postscript", TRUE, OldProtocolServer::getPostScriptData }, ! { "zpostscript", TRUE, OldProtocolServer::getZPostScriptData }, ! { "opaque", TRUE, OldProtocolServer::getOpaqueData }, ! { "zopaque", TRUE, OldProtocolServer::getZOpaqueData }, ! { "poll", TRUE, OldProtocolServer::newPollID }, ! { "userID", FALSE, OldProtocolServer::setUserID }, ! { "version", FALSE, OldProtocolServer::setProtoVersion }, ! { "serverStatus", FALSE, OldProtocolServer::sendServerStatus }, ! { "serverInfo", FALSE, OldProtocolServer::sendServerInfo }, ! { "allStatus", FALSE, OldProtocolServer::sendAllStatus }, ! { "userStatus", FALSE, OldProtocolServer::sendUserStatus }, ! { "jobStatus", FALSE, OldProtocolServer::sendJobStatus }, ! { "recvStatus", FALSE, OldProtocolServer::sendRecvStatus }, ! { "remove", TRUE, OldProtocolServer::removeJob }, ! { "removeGroup", TRUE, OldProtocolServer::removeJobGroup }, ! { "kill", TRUE, OldProtocolServer::killJob }, ! { "killGroup", TRUE, OldProtocolServer::killJobGroup }, ! { "alterTTS", TRUE, OldProtocolServer::alterJobTTS }, ! { "alterGroupTTS", TRUE, OldProtocolServer::alterJobGroupTTS }, ! { "alterKillTime", TRUE, OldProtocolServer::alterJobKillTime }, ! { "alterGroupKillTime", TRUE, OldProtocolServer::alterJobGroupKillTime }, ! { "alterMaxDials", TRUE, OldProtocolServer::alterJobMaxDials }, ! { "alterGroupMaxDials", TRUE, OldProtocolServer::alterJobGroupMaxDials }, ! { "alterNotify", TRUE, OldProtocolServer::alterJobNotification }, ! { "alterGroupNotify", TRUE, OldProtocolServer::alterJobGroupNotification }, ! { "alterModem", TRUE, OldProtocolServer::alterJobModem }, ! { "alterGroupModem", TRUE, OldProtocolServer::alterJobGroupModem }, ! { "alterPriority", TRUE, OldProtocolServer::alterJobPriority }, ! { "alterGroupPriority", TRUE, OldProtocolServer::alterJobGroupPriority }, }; #define NCMDS (sizeof (cmds) / sizeof (cmds[0])) --- 220,257 ---- // NB: there is no support for the old style data transfer const OldProtocolServer::protoCmd OldProtocolServer::cmds[] = { ! { "begin", TRUE, &OldProtocolServer::submitJob }, ! { "checkPerm", TRUE, &OldProtocolServer::ackPermission }, ! { "tiff", TRUE, &OldProtocolServer::getTIFFData }, ! { "postscript", TRUE, &OldProtocolServer::getPostScriptData }, ! { "zpostscript", TRUE, &OldProtocolServer::getZPostScriptData }, ! { "opaque", TRUE, &OldProtocolServer::getOpaqueData }, ! { "zopaque", TRUE, &OldProtocolServer::getZOpaqueData }, ! { "poll", TRUE, &OldProtocolServer::newPollID }, ! { "userID", FALSE, &OldProtocolServer::setUserID }, ! { "version", FALSE, &OldProtocolServer::setProtoVersion }, ! { "serverStatus", FALSE, &OldProtocolServer::sendServerStatus }, ! { "serverInfo", FALSE, &OldProtocolServer::sendServerInfo }, ! { "allStatus", FALSE, &OldProtocolServer::sendAllStatus }, ! { "userStatus", FALSE, &OldProtocolServer::sendUserStatus }, ! { "jobStatus", FALSE, &OldProtocolServer::sendJobStatus }, ! { "recvStatus", FALSE, &OldProtocolServer::sendRecvStatus }, ! { "remove", TRUE, &OldProtocolServer::removeJob }, ! { "removeGroup", TRUE, &OldProtocolServer::removeJobGroup }, ! { "kill", TRUE, &OldProtocolServer::killJob }, ! { "killGroup", TRUE, &OldProtocolServer::killJobGroup }, ! { "alterTTS", TRUE, &OldProtocolServer::alterJobTTS }, ! { "alterGroupTTS", TRUE, &OldProtocolServer::alterJobGroupTTS }, ! { "alterKillTime", TRUE, &OldProtocolServer::alterJobKillTime }, ! { "alterGroupKillTime", TRUE, &OldProtocolServer::alterJobGroupKillTime }, ! { "alterMaxDials", TRUE, &OldProtocolServer::alterJobMaxDials }, ! { "alterGroupMaxDials", TRUE, &OldProtocolServer::alterJobGroupMaxDials }, ! { "alterNotify", TRUE, &OldProtocolServer::alterJobNotification }, ! { "alterGroupNotify", TRUE, &OldProtocolServer::alterJobGroupNotification }, ! { "alterModem", TRUE, &OldProtocolServer::alterJobModem }, ! { "alterGroupModem", TRUE, &OldProtocolServer::alterJobGroupModem }, ! { "alterPriority", TRUE, &OldProtocolServer::alterJobPriority }, ! { "alterGroupPriority", TRUE, &OldProtocolServer::alterJobGroupPriority }, }; #define NCMDS (sizeof (cmds) / sizeof (cmds[0])) *************** *** 604,612 **** #define DEFINE_Alter(param) \ void OldProtocolServer::alterJob##param(const char* tag) \ ! { applyToJob(tag, "alter", OldProtocolServer::reallyAlterJob##param); }\ void OldProtocolServer::alterJobGroup##param(const char* tag) \ ! { applyToJobGroup(tag, "alter", OldProtocolServer::reallyAlterJob##param); } fxBool OldProtocolServer::alterSuspend(Job& job) --- 604,612 ---- #define DEFINE_Alter(param) \ void OldProtocolServer::alterJob##param(const char* tag) \ ! { applyToJob(tag, "alter", &OldProtocolServer::reallyAlterJob##param); }\ void OldProtocolServer::alterJobGroup##param(const char* tag) \ ! { applyToJobGroup(tag, "alter", &OldProtocolServer::reallyAlterJob##param); } fxBool OldProtocolServer::alterSuspend(Job& job) *************** *** 752,760 **** #define DEFINE_Op(op) \ void OldProtocolServer::##op##Job(const char* tag) \ ! { applyToJob(tag, fxQUOTE(op), OldProtocolServer::do##op); }\ void OldProtocolServer::##op##JobGroup(const char* tag) \ ! { applyToJobGroup(tag, fxQUOTE(op), OldProtocolServer::do##op); } void OldProtocolServer::doremove(Job& job, const char*) { --- 752,760 ---- #define DEFINE_Op(op) \ void OldProtocolServer::##op##Job(const char* tag) \ ! { applyToJob(tag, fxQUOTE(op), &OldProtocolServer::do##op); }\ void OldProtocolServer::##op##JobGroup(const char* tag) \ ! { applyToJobGroup(tag, fxQUOTE(op), &OldProtocolServer::do##op); } void OldProtocolServer::doremove(Job& job, const char*) { diff -cr hylafax-v4.0pl2/util/SendFaxClient.c++ hylafax-v4.0pl2.new/util/SendFaxClient.c++ *** hylafax-v4.0pl2/util/SendFaxClient.c++ Sat Feb 14 21:47:24 1998 --- hylafax-v4.0pl2.new/util/SendFaxClient.c++ Thu Feb 19 22:32:01 1998 *************** *** 457,467 **** if (info.rule->getResult() == TypeRule::TIFF) { fileSent = setFormat(FORM_TIFF) && setType(TYPE_I) ! && sendData(fd, FaxClient::storeTemp, info.doc, emsg); } else { fileSent = setFormat(FORM_PS) && setType(TYPE_I) // XXX TYPE_A??? ! && sendZData(fd, FaxClient::storeTemp, info.doc, emsg); } Sys::close(fd); if (!fileSent) { --- 457,467 ---- if (info.rule->getResult() == TypeRule::TIFF) { fileSent = setFormat(FORM_TIFF) && setType(TYPE_I) ! && sendData(fd, &FaxClient::storeTemp, info.doc, emsg); } else { fileSent = setFormat(FORM_PS) && setType(TYPE_I) // XXX TYPE_A??? ! && sendZData(fd, &FaxClient::storeTemp, info.doc, emsg); } Sys::close(fd); if (!fileSent) { diff -cr hylafax-v4.0pl2/util/SendFaxJob.c++ hylafax-v4.0pl2.new/util/SendFaxJob.c++ *** hylafax-v4.0pl2/util/SendFaxJob.c++ Sat Feb 14 21:47:24 1998 --- hylafax-v4.0pl2.new/util/SendFaxJob.c++ Fri Feb 20 15:38:37 1998 *************** *** 496,502 **** fxBool fileSent = client.setFormat(FaxClient::FORM_PS) && client.setType(FaxClient::TYPE_I) // XXX??? TYPE_A ! && client.sendZData(fd, FaxClient::storeTemp, coverDoc, emsg); Sys::close(fd); if (!fileSent) { if (emsg == "") --- 496,502 ---- fxBool fileSent = client.setFormat(FaxClient::FORM_PS) && client.setType(FaxClient::TYPE_I) // XXX??? TYPE_A ! && client.sendZData(fd, &FaxClient::storeTemp, coverDoc, emsg); Sys::close(fd); if (!fileSent) { if (emsg == "") diff -cr hylafax-v4.0pl2/util/faxconfig.c hylafax-v4.0pl2.new/util/faxconfig.c *** hylafax-v4.0pl2/util/faxconfig.c Sat Feb 14 21:47:57 1998 --- hylafax-v4.0pl2.new/util/faxconfig.c Thu Feb 19 22:36:32 1998 *************** *** 51,57 **** extern int cvtFacility(const char*, int*); ! void main(int argc, char** argv) { extern int optind; --- 51,57 ---- extern int cvtFacility(const char*, int*); ! int main(int argc, char** argv) { extern int optind; *************** *** 123,127 **** } while ((optind += 2) < argc); (void) close(fifo); } ! exit(0); } --- 123,127 ---- } while ((optind += 2) < argc); (void) close(fifo); } ! return 0; } diff -cr hylafax-v4.0pl2/util/faxmodem.c hylafax-v4.0pl2.new/util/faxmodem.c *** hylafax-v4.0pl2/util/faxmodem.c Sat Feb 14 21:47:57 1998 --- hylafax-v4.0pl2.new/util/faxmodem.c Fri Feb 20 14:14:00 1998 *************** *** 186,192 **** extern int cvtFacility(const char*, int*); ! void main(int argc, char** argv) { extern int optind; --- 186,192 ---- extern int cvtFacility(const char*, int*); ! int main(int argc, char** argv) { extern int optind; *************** *** 261,265 **** fatal("%s: FIFO write failed for command (%s)", argv[0], strerror(errno)); (void) close(fifo); ! exit(0); } --- 261,265 ---- fatal("%s: FIFO write failed for command (%s)", argv[0], strerror(errno)); (void) close(fifo); ! return 0; } diff -cr hylafax-v4.0pl2/util/faxmsg.c hylafax-v4.0pl2.new/util/faxmsg.c *** hylafax-v4.0pl2/util/faxmsg.c Sat Feb 14 21:47:58 1998 --- hylafax-v4.0pl2.new/util/faxmsg.c Thu Feb 19 22:34:45 1998 *************** *** 50,56 **** extern int cvtFacility(const char*, int*); ! void main(int argc, char** argv) { extern int optind; --- 50,56 ---- extern int cvtFacility(const char*, int*); ! int main(int argc, char** argv) { extern int optind; *************** *** 127,131 **** if (write(fifo, cmd, strlen(cmd)) != strlen(cmd)) fatal("FIFO write failed for command (%s)", strerror(errno)); (void) close(fifo); ! exit(0); } --- 127,131 ---- if (write(fifo, cmd, strlen(cmd)) != strlen(cmd)) fatal("FIFO write failed for command (%s)", strerror(errno)); (void) close(fifo); ! return 0; } diff -cr hylafax-v4.0pl2/util/faxstate.c hylafax-v4.0pl2.new/util/faxstate.c *** hylafax-v4.0pl2/util/faxstate.c Sat Feb 14 21:47:58 1998 --- hylafax-v4.0pl2.new/util/faxstate.c Fri Feb 20 20:07:23 1998 *************** *** 72,78 **** return (NULL); } ! void main(int argc, char** argv) { extern int optind; --- 72,78 ---- return (NULL); } ! int main(int argc, char** argv) { extern int optind; *************** *** 140,144 **** fatal("FIFO write failed for command (%s)", strerror(errno)); } (void) close(fifo); ! exit(0); } --- 140,144 ---- fatal("FIFO write failed for command (%s)", strerror(errno)); } (void) close(fifo); ! return 0; } From: David Woolley <david@djwhome.demon.co.uk> Subject: Re: flexfax: Problem installing HylaFAX at Slackware 3.5 To: kremidas@lrf.gr Date: Sat, 12 Dec 1998 11:46:23 +0000 (GMT) Cc: flexfax@sgi.com X-Mailer: ELM [version 2.4 PL25] Sender: owner-flexfax@celestial.com > The problem seems that the sendfax program cannot be compiled > since faxsetup cannot find it and at the compilation an error is > produced. You have cause and effect the wrong way round. > Could someone help me please cause it is something very > important. What should I do ?? You should have included the compilation error messages, however this is probably the error that the egcs patch fixes.