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 $