<div dir="ltr">cygcheck is a bit of a swiss army knife, as I said a bit earlier:<div><br></div><div><div style="font-family:arial,sans-serif;font-size:13.513513565063477px">cygcheck.exe will check that all of the DLLs for a DLL or .exe are on the path for you and complain otherwise.</div>
<div class="" style="font-family:arial,sans-serif;font-size:13.513513565063477px"></div></div><div class="" style="font-family:arial,sans-serif;font-size:13.513513565063477px"><br></div><div class="" style="font-family:arial,sans-serif;font-size:13.513513565063477px">
Here's how to use it:</div><div class="" style="font-family:arial,sans-serif;font-size:13.513513565063477px"><br></div><div class=""><font face="arial, sans-serif">cygcheck.exe ~/proteus/hashstack/opt/profile/vuku/bin/cygpetsc.dll</font><br>
</div><div class=""><font face="arial, sans-serif"><br></font></div><div class=""><font face="arial, sans-serif">using ldd on the same dll doesn't reveal the environment errors.</font></div><div class=""><font face="arial, sans-serif"><br>
</font></div><div class=""><font face="arial, sans-serif">I can't make heads or tails of your error, cygcheck might be able to diagnose it.</font></div><div class=""><font face="arial, sans-serif"><br></font></div><div class="">
<font face="arial, sans-serif">A </font></div></div><div class="gmail_extra"><br><br><div class="gmail_quote">On Thu, Sep 26, 2013 at 11:39 AM, Satish Balay <span dir="ltr"><<a href="mailto:balay@mcs.anl.gov" target="_blank">balay@mcs.anl.gov</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div class="im">On Thu, 26 Sep 2013, Aron Ahmadia wrote:<br>
<br>
> As a final note, here's my post-install script:<br>
><br>
> ARTIFACT=$prefix<br>
><br>
> # Need to move the DLLs into the appropriate directories<br>
> install $PETSC_ARCH/cyg*.dll $ARTIFACT/bin<br>
> install $PETSC_ARCH/lib/cyg*.dll $ARTIFACT/bin<br>
><br>
> Then "make check" passes for me with Fortran disabled.<br>
><br>
> cygcheck.exe will check that all of the DLLs for a DLL or .exe are on the<br>
> path for you and complain otherwise.<br>
<br>
</div>cygcheck is for cygwin packages. So you are creating a cygwin packaage and then checking?<br>
<br>
But I'm interested in a check after 'make all'.<br>
<br>
How is that supporsed to work? ldd is able to find the dll - but its not visible at runtime?<br>
<div class="im"><br>
> > Also, I think we're using different build configurations, I don't produce<br>
> > a libpetsc.dll (that looks suspiciously like a libpetsc.so file with the<br>
> > wrong name). You should have a:<br>
> ><br>
> > lib/libpetsc.dll.a<br>
> ><br>
> > and<br>
> ><br>
> > cygpetsc.dll<br>
> ><br>
> > The first is the "import library" for the DLL, which contains the stubs<br>
> > for the actual symbols.<br>
> ><br>
> > I'm on CYGWIN_NT-6.2 1.7.25(0.270/5/3) 2013-08-31 20:37 x86_64 Cygwin<br>
> > using gcc4.8.1-3 from cygwin.<br>
<br>
</div>I see you are using cmake build - and thats creating cygpetsc.dll.<br>
<br>
>>>>>>>>>><br>
/cygdrive/c/cygwin/home/balay/petsc.clone/arch-gcc64-parmetis/bin/mpif90 -Wall -Wno-unused-variable -Wno-unused-dummy-argument -g -shared -Wl,--enable-auto-import -o cygpetsc.dll -Wl,--out-implib,lib/libpetsc.dll.a -Wl,--major-image-version,0,--minor-image-version,0 CMakeFiles/petsc.dir/src/sys/utils/arch.c.o .........<br>
<<<<<<<<<<<<br>
<br>
Will have to see how this can be added to all-legacy and all-gnu.<br>
<br>
But it still doesn't work for me. [with cmake build]<br>
<br>
Satish<br>
<br>
---------<br>
<br>
balay@msnehalem2 ~/petsc.clone/src/ksp/ksp/examples/tutorials<br>
$ uname -a<br>
CYGWIN_NT-6.1 msnehalem2 1.7.25(0.270/5/3) 2013-08-31 20:37 x86_64 Cygwin<br>
<br>
balay@msnehalem2 ~/petsc.clone/src/ksp/ksp/examples/tutorials<br>
$ echo $PATH<br>
/usr/local/bin:/usr/bin:/home/balay/petsc.clone/arch-gcc64-parmetis<br>
<br>
balay@msnehalem2 ~/petsc.clone/src/ksp/ksp/examples/tutorials<br>
$ ls -l /home/balay/petsc.clone/arch-gcc64-parmetis/*.dll<br>
-rwxr-xr-x 1 balay None 215910106 Sep 26 10:24 /home/balay/petsc.clone/arch-gcc64-parmetis/cygpetsc.dll<br>
<br>
balay@msnehalem2 ~/petsc.clone/src/ksp/ksp/examples/tutorials<br>
$ ldd ex2<br>
ntdll.dll => /cygdrive/c/Windows/SYSTEM32/ntdll.dll (0x76ed0000)<br>
kernel32.dll => /cygdrive/c/Windows/system32/kernel32.dll (0x76db0000)<br>
KERNELBASE.dll => /cygdrive/c/Windows/system32/KERNELBASE.dll (0x7fefcff0000)<br>
cygpetsc.dll => /cygdrive/c/cygwin/home/balay/petsc.clone/arch-gcc64-parmetis/cygpetsc.dll (0x488040000)<br>
<br>
balay@msnehalem2 ~/petsc.clone/src/ksp/ksp/examples/tutorials<br>
$ ./ex2<br>
/cygdrive/c/cygwin/home/balay/petsc.clone/src/ksp/ksp/examples/tutorials/ex2.exe: error while loading shared libraries: cygpetsc.dll: cannot open shared object file: No such file or directory<br>
<br>
balay@msnehalem2 ~/petsc.clone/src/ksp/ksp/examples/tutorials<br>
$<br>
</blockquote></div><br></div>