cygcheck is a bit of a swiss army knife, as I said a bit earlier: cygcheck.exe will check that all of the DLLs for a DLL or .exe are on the path for you and complain otherwise.
Here's how to use it: cygcheck.exe ~/proteus/hashstack/opt/profile/vuku/bin/cygpetsc.dll using ldd on the same dll doesn't reveal the environment errors. I can't make heads or tails of your error, cygcheck might be able to diagnose it. A On Thu, Sep 26, 2013 at 11:39 AM, Satish Balay <ba...@mcs.anl.gov> wrote: > On Thu, 26 Sep 2013, Aron Ahmadia wrote: > > > As a final note, here's my post-install script: > > > > ARTIFACT=$prefix > > > > # Need to move the DLLs into the appropriate directories > > install $PETSC_ARCH/cyg*.dll $ARTIFACT/bin > > install $PETSC_ARCH/lib/cyg*.dll $ARTIFACT/bin > > > > Then "make check" passes for me with Fortran disabled. > > > > cygcheck.exe will check that all of the DLLs for a DLL or .exe are on the > > path for you and complain otherwise. > > cygcheck is for cygwin packages. So you are creating a cygwin packaage and > then checking? > > But I'm interested in a check after 'make all'. > > How is that supporsed to work? ldd is able to find the dll - but its not > visible at runtime? > > > > Also, I think we're using different build configurations, I don't > produce > > > a libpetsc.dll (that looks suspiciously like a libpetsc.so file with > the > > > wrong name). You should have a: > > > > > > lib/libpetsc.dll.a > > > > > > and > > > > > > cygpetsc.dll > > > > > > The first is the "import library" for the DLL, which contains the stubs > > > for the actual symbols. > > > > > > I'm on CYGWIN_NT-6.2 1.7.25(0.270/5/3) 2013-08-31 20:37 x86_64 Cygwin > > > using gcc4.8.1-3 from cygwin. > > I see you are using cmake build - and thats creating cygpetsc.dll. > > >>>>>>>>>> > /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 ......... > <<<<<<<<<<< > > Will have to see how this can be added to all-legacy and all-gnu. > > But it still doesn't work for me. [with cmake build] > > Satish > > --------- > > balay@msnehalem2 ~/petsc.clone/src/ksp/ksp/examples/tutorials > $ uname -a > CYGWIN_NT-6.1 msnehalem2 1.7.25(0.270/5/3) 2013-08-31 20:37 x86_64 Cygwin > > balay@msnehalem2 ~/petsc.clone/src/ksp/ksp/examples/tutorials > $ echo $PATH > /usr/local/bin:/usr/bin:/home/balay/petsc.clone/arch-gcc64-parmetis > > balay@msnehalem2 ~/petsc.clone/src/ksp/ksp/examples/tutorials > $ ls -l /home/balay/petsc.clone/arch-gcc64-parmetis/*.dll > -rwxr-xr-x 1 balay None 215910106 Sep 26 10:24 > /home/balay/petsc.clone/arch-gcc64-parmetis/cygpetsc.dll > > balay@msnehalem2 ~/petsc.clone/src/ksp/ksp/examples/tutorials > $ ldd ex2 > ntdll.dll => /cygdrive/c/Windows/SYSTEM32/ntdll.dll (0x76ed0000) > kernel32.dll => /cygdrive/c/Windows/system32/kernel32.dll > (0x76db0000) > KERNELBASE.dll => /cygdrive/c/Windows/system32/KERNELBASE.dll > (0x7fefcff0000) > cygpetsc.dll => > /cygdrive/c/cygwin/home/balay/petsc.clone/arch-gcc64-parmetis/cygpetsc.dll > (0x488040000) > > balay@msnehalem2 ~/petsc.clone/src/ksp/ksp/examples/tutorials > $ ./ex2 > /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 > > balay@msnehalem2 ~/petsc.clone/src/ksp/ksp/examples/tutorials > $ >