Greetings!

Christian Perrier <[EMAIL PROTECTED]> writes:

> > OK, in a failed source tree, can you please
> > 
> > make config
> 
> This asked me several questions, for which I don't have the answer, so
> always answered the default..:-)
> 
> Anyway, in the middle of this, I got:
> 
> Looking for BLAS (this may take a while):
> Unable to find usable BLAS, BLASlib left blank.
> FINDING tar, gzip, AND gunzip
>    tar    : /bin/tar
>    gzip   : /bin/gzip
>    gunzip : /bin/gunzip
> 
> 
> .../...
> 
> Blas seems to be here though:
> 
> [EMAIL 
> PROTECTED]:~/src/debian/translation/po/NMU/intent1/mrtg/mrtg-2.10.13/debian> 
> dpkg -S /usr/lib/libblas.a
> blas-dev: /usr/lib/libblas.a
> 

OK, Please verify that config.c looks like this:

#define ND 4
void FindBlas(FILE *fpout, FILE *fplog, char *redir, char *F77, char *F77FLAGS,
              char *BLASlib)
{
   char **files;
   char *dirs[ND] = {"", "/usr/lib", "/usr/local", ""};
   char ln[256],pwd[256],*pp;
   int i, j, n;
   FILE *p;

   ATL_mprintf(2, fplog, fpout, "Looking for BLAS (this may take a while):\n");
   if (*BLASlib)
   {
      sprintf(ln, 
      "cd CONFIG ; make IBlasLink F77=\"%s\" F77FLAGS=\"%s\" BLASlib=\"%s\" 
%s\n",
              F77, F77FLAGS, BLASlib, redir);
      if (system(ln) == 0)
      {
         ATL_mprintf(2, fplog, fpout, "BLASlib set to %s.\n", BLASlib);
         return;
      }
      ATL_mprintf(2, fplog, fpout, "   Link failed, %s rejected\n", BLASlib);
   }
   if (!(p=popen("pwd","r"))) {
     if (fpout) fprintf(fpout, "Can't open pwd pipe\n");
     if (fplog) fprintf(fplog, "Can't open pwd pipe\n");
     return;
   }
   if (!fgets(pwd,sizeof(pwd),p) || !(pp=strchr(pwd,10))) {
     if (fpout) fprintf(fpout, "Can't read pwd line\n");
     if (fplog) fprintf(fplog, "Can't read pwd line\n");
     return;
   }
   *pp=0;
   if (pclose(p)) {
     if (fpout) fprintf(fpout, "Can't close pwd pipe\n");
     if (fplog) fprintf(fplog, "Can't close pwd pipe\n");
     return;
   }
/*     if (sizeof(pwd)-(pp-pwd)<6) { */
/*       if (fpout) fprintf(fpout, "pwd array too small\n"); */
/*       if (fplog) fprintf(fplog, "pwd array too small\n"); */
/*       return; */
/*     } */
/*     snprintf(pp,sizeof(pwd)-(pp-pwd),"/BLAS"); */
   dirs[0]=pwd;
   dirs[ND-1] = getenv("HOME");
   for (j=0; j < ND; j++)
   {
      n = FindFiles(dirs[j], "lib.*blas.*\\.a", &files);
      if (n)
      {
         for (i=0; i < n; i++)
         {
            sprintf(ln, 
      "cd CONFIG ; make IBlasLink F77=\"%s\" F77FLAGS=\"%s\" BLASlib=\"%s\" 
%s\n",
                    F77, F77FLAGS, files[i], redir);
            if (system(ln) == 0)
            {
               strcpy(BLASlib, files[i]);
               ATL_mprintf(2, fplog, fpout, "BLASlib set to %s.\n", BLASlib);
               return;
            }
            ATL_mprintf(2, fplog, fpout, 
                        "   Link failed, %s rejected\n", files[i]);
         }
      }
   }
   ATL_mprintf(2, fplog, fpout, 
               "Unable to find usable BLAS, BLASlib left blank.\n");
   BLASlib[0] = '\0';
}
#undef ND


Then you can either strace -f the make config (or xconfig), or run
under a debugger and see why the stat fails on your machine.

> Anyway, make config finished properly...
> 
> > 
> > and 
> > 
> > debian/config.expect
> 
> This seems to fail:
> 
> 
> Looking for BLAS (this may take a while):
> Unable to find usable BLAS, BLASlib left blank.
> FINDING tar, gzip, AND gunzip
>    tar    : /bin/tar
>    gzip   : /bin/gzip
>    gunzip : /bin/gunzip
> 
> 
> Although your machine is not known, ATLAS has default parameters for 
> OS='Linux'.
> If you want to just trust these default values, you can use express setup,
> drastically reducing the amount of questions you are required to answer
> 
>    use express setup? [y]: ^J
> 
> 
> You need to choose a name which represents this architecture (eg. UltraSparc,
> Dec21164, etc).  Do not use a generic name (eg. solaris, linux), which might
> apply to different  hardware.  This architecture name will be appended to the
> name of the created make include file, and appear in all subdirectories, so
> don't make it longer than you like to type.  The name should follow the rules
> for file names (so don't use punctuation and spaces, for instance).
> 
>    Enter Architecture name (ARCH) [Linux_UNKNOWNSSE1]: can't read 
> "env(ARCH_DIR)": no such variable
>     while executing
> "send "$env(ARCH_DIR)\n" "
>     invoked from within
> "expect -re "ready to continue?" {send "\n" ; exp_continue} \
>         "Enter number at top left of screen" {send "\n" ; exp_continue} \
>         "ENTER TO CONTINUE" {..."
>     (file "debian/config.expect" line 6)
> 

I neglected to tell you you needed to set the following environment
variables before this step, as in debian/rules:

ARCH_DIR=Linux_$*_shared CACHE_SIZE=$(CACHE) DEFAULTS=$(DEFAULTS)

The last two can be set to blank, the first is the build name.

> 
> It looks like your expect script does not know how to deal when the 
> "Unable to find usable blas" thing happens.
> 
> 

Please, as soon as we are convinced that this is a local configuration
issue, could we please close this?  Many other machines report no
problem.  This is not to say that it is not a subtle atlas bug, but
odds are ....

Take care,

> 
> 
> 
> 
> 

-- 
Camm Maguire                                            [EMAIL PROTECTED]
==========================================================================
"The earth is but one country, and mankind its citizens."  --  Baha'u'llah


-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]

Reply via email to