[petsc-dev] Fwd: [petsc-users] Could not find make when building PETSc in Windows 7
Barry Smith
bsmith at mcs.anl.gov
Mon Oct 28 20:25:51 CDT 2013
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