[petsc-dev] Fwd: [petsc-users] Could not find make when building PETSc in Windows 7
Satish Balay
balay at mcs.anl.gov
Wed Oct 30 21:33:31 CDT 2013
The issue is a bit obscure - and check is not a direct one.
I pushed the following to next.
https://bitbucket.org/petsc/petsc/commits/360dfd136e5a414728a3d2843f8d3efe0cff4e09
Satish
On Mon, 28 Oct 2013, Barry Smith wrote:
>
>
> Begin forwarded message:
>
> > From: Satish Balay <balay at mcs.anl.gov>
> >
> >
> > Mostlikely this is related to using 'winzip' or '7zip' to untar petsc
> > sources. Try using 'tar' from cygwin.
>
> Is there a way for configure to detect this problem and generate a very useful error message instead of having obscure crashes in the middle of builds that only Satish can decipher?
>
> Thanks
>
> Barry
>
> >
> > Or you can ignore this issue if not using f90 modules from your code.
> >
> > Satish
> >
> > On Mon, 28 Oct 2013, Qin Lu wrote:
> >
> >> Satish,
> >>
> >> I followed your suggestion to run "export PATH=/usr/bin:$PATH", now grep, rm, etc., point to those under /usr/bin. I then run configure and make all again, the previous make errors about grep, etc. , were gone! Now the make all ran to the end but gave the error "makefile:24: recipe for target 'all' failed", as shown below. I opened the error.log and it said
> >>
> >> "/usr/bin/ar: petscvecmod.o: No such file or directory
> >> /usr/bin/cp: cannot stat `*.mod': No such file or directory"
> >>
> >> But I checked "which ar" and it returned "/usr/bin/ar", so ar.exe is there.
> >>
> >> The error.log and make.log makefile are attached for details.
> >>
> >> Thanks for any suggestions,
> >> Qin
> >>
> >> ======= make output ========
> >> libfast in: /cygdrive/c/cygwin_cache/petsc-3.4.2/src/contrib
> >> libfast in: /cygdrive/c/cygwin_cache/petsc-3.4.2/src/contrib/fun3d
> >> libfast in: /cygdrive/c/cygwin_cache/petsc-3.4.2/src/contrib/fun3d/comp
> >> libfast in: /cygdrive/c/cygwin_cache/petsc-3.4.2/src/contrib/fun3d/incomp
> >> libfast in: /cygdrive/c/cygwin_cache/petsc-3.4.2/src/benchmarks
> >> libfast in: /cygdrive/c/cygwin_cache/petsc-3.4.2/include
> >> libfast in: /cygdrive/c/cygwin_cache/petsc-3.4.2/include/finclude
> >> libfast in: /cygdrive/c/cygwin_cache/petsc-3.4.2/include/finclude/ftn-auto
> >> libfast in: /cygdrive/c/cygwin_cache/petsc-3.4.2/include/finclude/ftn-custom
> >> libfast in: /cygdrive/c/cygwin_cache/petsc-3.4.2/include/petsc-private
> >> libfast in: /cygdrive/c/cygwin_cache/petsc-3.4.2/include/sieve
> >> libfast in: /cygdrive/c/cygwin_cache/petsc-3.4.2/tutorials
> >> libfast in: /cygdrive/c/cygwin_cache/petsc-3.4.2/tutorials/python
> >> Completed building libraries
> >> =========================================
> >> **************************ERROR************************************
> >> Error during compile, check arch-mswin-c-opt/conf/make.log
> >> Send it and arch-mswin-c-opt/conf/configure.log to petsc-maint at mcs.anl.gov
> >> *****************************************************************
> >> makefile:24: recipe for target 'all' failedmake: *** [all] Error 1
> >>
> >>
> >>
> >> On Monday, October 28, 2013 11:50 AM, Satish Balay <balay at mcs.anl.gov> wrote:
> >>
> >> cygwin should have already setup PATH correctly so that its listed first
> >>
> >> What do you have for:
> >>
> >> echo $PATH
> >> which make
> >> which rm
> >> which grep
> >> export PATH=/usr/bin:$PATH
> >> which make
> >> which rm
> >> which grep
> >>
> >> Satish
> >>
> >>
> >>
> >> On Mon, 28 Oct 2013, Qin Lu wrote:
> >>
> >>> Satish,
> >>>
> >>> As far as I know, cygwin reads the Windows enviromental variable PATH. Can I not change the the setting in in the Windows enviromental variables (since other programs need them), but change the PATH used by cygwin only? Which file should I change?
> >>>
> >>> Thanks,
> >>> Qin
> >>>
> >>>
> >>>
> >>> On Monday, October 28, 2013 11:16 AM, Satish Balay <balay at mcs.anl.gov> wrote:
> >>>
> >>>> /cygdrive/c/Windows/SUA/common/rm -f -rf /cygdrive/c/cygwin_cache/petsc-3.4.3/arch-mswin-c-opt/lib/libpetsc*.*
> >>>
> >>> You appear to have non cygwin stuff in your PATH. Can you remove these
> >>> things from your PATH - make sure grep in PATH is from cygwin - and
> >>> rerun configure && make
> >>>
> >>> Satish
> >>>
> >>>
> >>>
> >>> On Mon, 28 Oct 2013, Qin Lu wrote:
> >>>
> >>>> Hi,
> >>>>
> >>>> The configuration seemed to work, then I ran "make all" but got errors such as "grep: Cannot open file '/dev/fs/C/cygdrive/c/cygwin_cache/petsc-3.4.3/include/petscversion.h': No such file or directory". See the attached error.log and make.log for details.
> >>>>
> >>>> I confirmed that c:\cygwin_cache\petsc-3.4.3\include\petscversion.h is there. '\The ''/dev/fs/C' part in the directory seems suspicious. Did I missed anything in the setup?
> >>>>
> >>>> Thanks for any hints,
> >>>> Qin
> >>>>
> >>>>
> >>>>
> >>>>
> >>>>
> >>>> On Thursday, October 24, 2013 2:05 PM, Satish Balay <balay at mcs.anl.gov> wrote:
> >>>>
> >>>> pushed ee76e990026b11c1f9c153f288b72cc9b8ebb100 and merged to next.
> >>>>
> >>>> It will go into 'maint' later..
> >>>>
> >>>> Satish
> >>>>
> >>>>
> >>>> On Thu, 24 Oct 2013, Satish Balay wrote:
> >>>>
> >>>>> Perhaps we should add back the windows-python check?
> >>>>>
> >>>>> [since we haven't yet added the windows python support]
> >>>>>
> >>>>> Satish
> >>>>>
> >>>>> On Thu, 24 Oct 2013, Qin Lu wrote:
> >>>>>
> >>>>>> Chetan
> >>>>>>
> >>>>>> Great, that was the problem! I set python point to a copy that was not cygwin's. Now I set it to cygwin's python and it this error is gone! I am waiting to see if the whole building will finish without problems.
> >>>>>>
> >>>>>> Thanks a lot for all you guys' helps.
> >>>>>>
> >>>>>> Qin
> >>>>>>
> >>>>>> On Thursday, October 24, 2013 11:28 AM, Chetan Jhurani <chetan.jhurani at gmail.com> wrote:
> >>>>>> I vaguely recall seeing the "could not locate make" error
> >>>>>> when a non-cygwin python is picked up first in path.
> >>>>>> So ensure that "which python" points to cygwin python.
> >>>>>>
> >>>>>> Another issue is that the --with-make argument, if it is
> >>>>>> needed, should be /cygdrive/C/cygwin64/bin (or with some
> >>>>>> other drive letter in between where cygwin is installed).
> >>>>>>
> >>>>>> Chetan
> >>>>>>
> >>>>>>
> >>>>>>> -----Original Message-----
> >>>>>>> From: petsc-users-bounces at mcs.anl.gov [mailto:petsc-users-bounces at mcs.anl.gov] On Behalf Of Qin Lu
> >>>>>>> Sent: Thursday, October 24, 2013 8:43 AM
> >>>>>>> To: Jed Brown; petsc-users at mcs.anl.gov
> >>>>>>> Subject: Re: [petsc-users] Could not find make when building PETSc in Windows 7
> >>>>>>>
> >>>>>>> Jed,
> >>>>>>>
> >>>>>>> As I mentioned, I did add C:\cygwin64\bin (where make.exe is) to Path, and also tried to run
> >>>>>>> ./configure --with-cc='win32fe icl' --with-fc='win32fe ifort' --with-cxx='win32fe icl' --with-
> >>>>>>> make=/cygdrive/cygwin64/bin. It did not work, I just tried what you suggested: adding --download-make
> >>>>>>> in confugure, it gave the same error.
> >>>>>>>
> >>>>>>> Thanks,
> >>>>>>> Qin
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>> On Thursday, October 24, 2013 10:36 AM, Jed Brown <jedbrown at mcs.anl.gov> wrote:
> >>>>>>> Qin Lu <lu_qin_2000 at yahoo.com> writes:
> >>>>>>>
> >>>>>>>> Hello,
> >>>>>>>>
> >>>>>>>> I am trying to build PETSc in Windows 7 with following steps:
> >>>>>>>>
> >>>>>>>> 1. Installed cygwin 64-bit with python, make and other default packages under C:\cygwin64
> >>>>>>>> 2. Added C:\cygwin64\bin to Windows environmental variable Path.
> >>>>>>>> 3. Downloaded and unzipped PETSc 3.4.2.
> >>>>>>>> 4. Run mintty.exe to open a cygwin terminal.
> >>>>>>>> 5. In the cygwin terminal, under PETSc directory, run: ./configure --with-cc='win32fe icl' --with-
> >>>>>>> fc='win32fe ifort' --with-cxx='win32fe icl'
> >>>>>>>>
> >>>>>>>> However, it gave an error "Could not locate the make utility on your system, make sure it is in your
> >>>>>>> path or use --with-make=/fullpathnameofmake and run ./configure again". I suppose it should use
> >>>>>>> C:\cygwin64\bin\make.exe, which is already in path, but I still added --with-
> >>>>>>> make=/cvgdrive/cygwin64/bin in configure's option and run configure again, yet it gave the same error.
> >>>>>>>
> >>>>>>> You need to pass the full path to the make executable (or add it to your
> >>>>>>> path), or you can use --download-make.
> >>>>>>>
> >>>>>>>
> >>>>>>>> What should I do to let configure know the path of make?
> >>>>>>>>
> >>>>>>>> Many thanks for your help,
> >>>>>>>>
> >>>>>>>> Regard,
> >>>>>>>> Qin
> >>>>>>
> >>>>>
>
>
More information about the petsc-dev
mailing list