mirror of
https://github.com/HDFGroup/hdf5.git
synced 2025-02-17 16:10:24 +08:00
[svn-r13712] Various changes made to bring Windows example tests up to date.
Tested: VS 2005 on Win XP
This commit is contained in:
parent
4e6026d44f
commit
a27b1b6e31
@ -740,7 +740,7 @@ The <release> layout of <hdf5lib> should be:
|
||||
You may also find the similar layout for the <debug>.
|
||||
|
||||
========================================================================
|
||||
Section I: How To Build Examples (Optional)
|
||||
Section III: How To Build Examples (Optional)
|
||||
========================================================================
|
||||
|
||||
Simple examples have been provided for users to test HDF5
|
||||
@ -1490,6 +1490,11 @@ Notes: 1. For Intel Compiler users, Intel fortran Compiler 9.1 is currently
|
||||
this mixed language projects. Choose
|
||||
"The Intel Fortran project" as the the main project and
|
||||
click "OK".
|
||||
|
||||
Note: In Visual Studio 2005, you may receive a message that
|
||||
says "The attempt to convert the Fortran project file failed.
|
||||
The project file (.dsp) has not been converted." This message
|
||||
can safely be ignored.
|
||||
|
||||
Do the same thing for hdf5_hl_fortran.
|
||||
|
||||
@ -1610,12 +1615,25 @@ Notes: 1. For Intel Compiler users, Intel fortran Compiler 9.1 is currently
|
||||
To build and test HDF5 Fortran example:
|
||||
---------------------------------------
|
||||
|
||||
1. Invoke the Intel Fortran Compiler 9.1 or above under Microsoft
|
||||
Visual Studio development environment, go to "File" and select
|
||||
the "Open Workspace" option.
|
||||
1.1 Open allf90examples.dsw and Convert Project Files (.dsp) to Visual
|
||||
C++ .Net Format (.vcproj)
|
||||
|
||||
Then open the workspace
|
||||
c:\MyHDFstuff\hdf5\windows\fortran\examples\allf90examples\allf90examples.dsw.
|
||||
Invoke Microsoft Visual C++ .Net or 2005. From the main menu,
|
||||
go to "File" and select "Open Solution". In the "Open Solution"
|
||||
window, Change "Files of type" to "All Project Files". Choose
|
||||
"allf90examples.dsw" under the directory
|
||||
c:\MyHDFstuff\hdf5\windows\fortran\examples\allf90examples.
|
||||
In the pop up window, choose "Yes To All" to convert all project
|
||||
files to Visual C++ .Net project format.
|
||||
|
||||
1.2 Extract Compaq Fortran Project Files
|
||||
|
||||
a. Select project "attreexampletest" in the Solution Explorer
|
||||
window. In the Project menu, select "Extract Compaq Visual
|
||||
Fortran Project".
|
||||
|
||||
Do the same thing for the each of the other project files, excluding
|
||||
"allf90examples"
|
||||
|
||||
2. Select "Build", then Select "Set Active Configuration".
|
||||
|
||||
@ -1675,10 +1693,24 @@ Notes: 1. For Intel Compiler users, Intel fortran Compiler 9.1 is currently
|
||||
To build and test HDF5 High Level Fortran examples:
|
||||
---------------------------------------------------
|
||||
|
||||
1. Invoke Compaq Visual Fortran 9.1, open the workspace
|
||||
1.1 Open allhlf90examples.dsw and Convert Project Files (.dsp) to Visual
|
||||
C++ .Net Format (.vcproj)
|
||||
|
||||
c:\MyHDFstuff\hdf5\windows\hl\fortran\examples\ (continue next line)
|
||||
allhlf90examples\allhlf90examples.dsw
|
||||
Invoke Microsoft Visual C++ .Net or 2005. From the main menu,
|
||||
go to "File" and select "Open Solution". In the "Open Solution"
|
||||
window, Change "Files of type" to "All Project Files". Choose
|
||||
"allhlf90examples.dsw" under the directory
|
||||
c:\MyHDFstuff\hdf5\windows\hl\fortran\examples\allhlf90examples.
|
||||
In the pop up window, choose "Yes To All" to convert all project
|
||||
files to Visual C++ .Net project format.
|
||||
|
||||
1.2 Extract Compaq Fortran Project Files
|
||||
|
||||
a. Select project "ex_lite" in the Solution Explorer
|
||||
window. In the Project menu, select "Extract Compaq Visual
|
||||
Fortran Project".
|
||||
|
||||
Do the same thing for the "ex_litedll".
|
||||
|
||||
2. Select "Build", then Select "Set Active Configuration".
|
||||
|
||||
@ -1940,7 +1972,8 @@ by other compilers.
|
||||
|
||||
To define this environment variable:
|
||||
|
||||
Click "Start" -> "Control Panel" -> "System" -> "Advanced" -> "Environment Variables".
|
||||
Click "Start" -> "Control Panel" -> "System" -> "Advanced" ->
|
||||
"Environment Variables".
|
||||
|
||||
If you are logged on as administrator to the local computer AND
|
||||
want to let all other users use these two environment variables,
|
||||
@ -1955,8 +1988,8 @@ by other compilers.
|
||||
|
||||
pre5. Copy pthreadVC2.dll to System Directory
|
||||
|
||||
pthreadVC2.dll should be copied into the location that applications can find.
|
||||
One suggestion is to use the c:\WINDOWS\system.
|
||||
pthreadVC2.dll should be copied into the location that applications
|
||||
can find. One suggestion is to use the c:\WINDOWS\system.
|
||||
|
||||
|
||||
1. Build HDF5 Release DLL with Thread-safe Feature
|
||||
@ -2063,11 +2096,12 @@ by other compilers.
|
||||
Go back to Section II, Step I(2) to Build, test and install HDF5
|
||||
libary and tools.
|
||||
========================================================================
|
||||
Section XI: How to build HDF5 in Visual studio 2005 on windows 32-bit and 64-bit platform
|
||||
Section XI: How to build HDF5 in Visual studio 2005 on windows 32-bit and
|
||||
64-bit platform
|
||||
========================================================================
|
||||
The building procedure is almost the same as building HDF5 on .Net 2003.
|
||||
For 64-bit, currently we only support HDF5 as an 32-bit application and you may need to
|
||||
pay attention to the following reminders:
|
||||
For 64-bit, currently we only support HDF5 as an 32-bit application and
|
||||
you may need to pay attention to the following reminders:
|
||||
1) To use zlib or szlib compression packages:
|
||||
Use zlib 1.2.2 DLL provided at
|
||||
ftp://ftp.hdfgroup.org/lib-external/zlib/1.2/bin/zlib123-windows.zip
|
||||
@ -2076,8 +2110,8 @@ Section XI: How to build HDF5 in Visual studio 2005 on windows 32-bit and 64-bit
|
||||
2) Make sure that WIN32 macro is set at visual studio 2005.
|
||||
3) You may use _CRT_SECURE_NO_DEPRECATE to disable the warnings.
|
||||
Please refer to Section VI: How to build HDF5 in Visual Studio .Net 2003.
|
||||
Please also note that the example workspace may not work properly. You may need to reset hdf5
|
||||
library path.
|
||||
Please also note that the example workspace may not work properly. You may
|
||||
need to reset hdf5 library path.
|
||||
|
||||
========================================================================
|
||||
Section XII: Misc.
|
||||
@ -2173,11 +2207,14 @@ using the Visual C++ Development Environment.
|
||||
"HDF5F90_WINDOWS" to use HDF5 Fortran DLL.
|
||||
|
||||
3. Backward compatibility with 1.6
|
||||
If you are going to use 1.6 APIs with 1.8 branch, you may do the following two things:
|
||||
3.1 Uncomment out /*#define H5_WANT_H5_V1_6_COMPAT 1*/ inside h5pubconf.h under windows\src.
|
||||
3.2 Set up an environment variable H5_WANT_H5_V1_6_COMPAT to 1, this will be used to test compatibility
|
||||
of error APIs.
|
||||
Remember to undo 1 and 2 after you test if you are not going to use 1.6 backward compatibility option.
|
||||
If you are going to use 1.6 APIs with 1.8 branch, you may do the
|
||||
following two things:
|
||||
3.1 Uncomment out /*#define H5_WANT_H5_V1_6_COMPAT 1*/ inside
|
||||
h5pubconf.h under windows\src.
|
||||
3.2 Set up an environment variable H5_WANT_H5_V1_6_COMPAT to 1,
|
||||
this will be used to test compatibility of error APIs.
|
||||
Remember to undo 1 and 2 after you test if you are not going to use 1.6
|
||||
backward compatibility option.
|
||||
|
||||
************************************************************************
|
||||
Please send email to help@hdfgroup.org for further assistance.
|
||||
|
@ -25,7 +25,6 @@ copy fortran\src\H5fortran_types.f90 ..\fortran\src
|
||||
xcopy /e/i/Y *.bat ..\
|
||||
copy batch_net\convert.js ..\batch_net\
|
||||
copy examples\testExamples_exp_output.txt ..\examples
|
||||
copy hl\fortran\examples\*.f90 ..\hl\fortran\examples\
|
||||
|
||||
cd ../batch_net
|
||||
copy *.* ..\
|
||||
|
@ -2,7 +2,7 @@
|
||||
Expected output for HDF5 C examples tests
|
||||
#############################
|
||||
The value of the attribute "Integer attribute" is 1
|
||||
The value of the attribute with index 1 is ABCD
|
||||
Found string attribute; its index is 1 , value = ABCD
|
||||
|
||||
Name : Float attribute
|
||||
Rank : 2
|
||||
@ -10,10 +10,10 @@ Dimension sizes : 2 3
|
||||
Type : FLOAT
|
||||
Values : -1.000000 -1.000000 -1.000000 -1.000000 -1.000000 -1.000000
|
||||
|
||||
Name : Integer attribute
|
||||
|
||||
Name : Character attribute
|
||||
|
||||
Name : Integer attribute
|
||||
|
||||
Field c :
|
||||
1.0000 0.5000 0.3333 0.2500 0.2000 0.1667 0.1429 0.1250 0.1111 0.1000
|
||||
|
||||
|
@ -26,7 +26,6 @@ CFG=ex_lite - Win32 Debug
|
||||
# PROP Scc_ProjName ""
|
||||
# PROP Scc_LocalPath ""
|
||||
CPP=cl.exe
|
||||
F90=df.exe
|
||||
RSC=rc.exe
|
||||
|
||||
!IF "$(CFG)" == "ex_lite - Win32 Release"
|
||||
@ -42,6 +41,7 @@ RSC=rc.exe
|
||||
# PROP Intermediate_Dir "..\..\..\..\..\hl\fortran\examples\ex_lite\Release"
|
||||
# PROP Ignore_Export_Lib 0
|
||||
# PROP Target_Dir ""
|
||||
F90=df.exe
|
||||
# ADD BASE F90 /compile_only /nologo /warn:nofileopt
|
||||
# ADD F90 /compile_only /include:"..\..\..\..\..\proj\hdf5_fortran\release/" /include:"..\..\..\..\..\proj\hdf5_hl_fortran\release/" /nologo /warn:nofileopt /module:"Release/"
|
||||
# ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c
|
||||
@ -53,7 +53,7 @@ BSC32=bscmake.exe
|
||||
# ADD BSC32 /nologo
|
||||
LINK32=link.exe
|
||||
# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /machine:I386
|
||||
# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib $(HDF5_EXT_ZLIB) $(HDF5_EXT_SZIP) hdf5_fortran.lib hdf5_hl_fortranr.lib /nologo /subsystem:console /machine:I386 /libpath:"..\..\..\..\..\proj\hdf5_fortran\release" /libpath:"..\..\..\..\..\proj\hdf5_hl_fortran\release"
|
||||
# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib $(HDF5_EXT_ZLIB) $(HDF5_EXT_SZIP) hdf5_fortran.lib hdf5_hl_fortranr.lib hdf5_hl_fortran.lib /nologo /subsystem:console /machine:I386 /libpath:"..\..\..\..\..\proj\hdf5_fortran\release" /libpath:"..\..\..\..\..\proj\hdf5_hl_fortran\release"
|
||||
|
||||
!ELSEIF "$(CFG)" == "ex_lite - Win32 Debug"
|
||||
|
||||
@ -68,6 +68,7 @@ LINK32=link.exe
|
||||
# PROP Intermediate_Dir "..\..\..\..\..\hl\fortran\examples\ex_lite\Debug"
|
||||
# PROP Ignore_Export_Lib 0
|
||||
# PROP Target_Dir ""
|
||||
F90=df.exe
|
||||
# ADD BASE F90 /check:bounds /compile_only /dbglibs /debug:full /nologo /traceback /warn:argument_checking /warn:nofileopt
|
||||
# ADD F90 /check:bounds /compile_only /dbglibs /debug:full /include:"..\..\..\..\..\proj\hdf5_fortran\debug/" /include:"..\..\..\..\..\proj\hdf5_hl_fortran\debug/" /nologo /traceback /warn:argument_checking /warn:nofileopt /module:"Debug/"
|
||||
# ADD BASE CPP /nologo /W3 /Gm /GX /ZI /Od /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /GZ /c
|
||||
@ -79,7 +80,7 @@ BSC32=bscmake.exe
|
||||
# ADD BSC32 /nologo
|
||||
LINK32=link.exe
|
||||
# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept
|
||||
# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib hdf5_fortrand.lib hdf5_hl_fortrand.lib $(HDF5_EXT_ZLIB) $(HDF5_EXT_SZIP) /nologo /subsystem:console /debug /machine:I386 /nodefaultlib:"libc.lib" /pdbtype:sept /libpath:"..\..\..\..\..\proj\hdf5_fortran\debug" /libpath:"..\..\..\..\..\proj\hdf5_hl_fortran\debug"
|
||||
# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib hdf5_fortrand.lib hdf5_hl_fortrand.lib hdf5_hl_fortran.lib $(HDF5_EXT_ZLIB) $(HDF5_EXT_SZIP) /nologo /subsystem:console /debug /machine:I386 /nodefaultlib:"libc.lib" /pdbtype:sept /libpath:"..\..\..\..\..\proj\hdf5_fortran\debug" /libpath:"..\..\..\..\..\proj\hdf5_hl_fortran\debug"
|
||||
# SUBTRACT LINK32 /incremental:no /nodefaultlib
|
||||
|
||||
!ENDIF
|
||||
|
@ -1,91 +0,0 @@
|
||||
! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
|
||||
! Copyright by The HDF Group. *
|
||||
! Copyright by the Board of Trustees of the University of Illinois. *
|
||||
! All rights reserved. *
|
||||
! *
|
||||
! This file is part of HDF5. The full HDF5 copyright notice, including *
|
||||
! terms governing use, modification, and redistribution, is contained in *
|
||||
! the files COPYING and Copyright.html. COPYING can be found at the root *
|
||||
! of the source code distribution tree; Copyright.html can be found at the *
|
||||
! root level of an installed copy of the electronic HDF5 document set and *
|
||||
! is linked from the top-level documents page. It can also be found at *
|
||||
! http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have *
|
||||
! access to either file, you may request a copy from help@hdfgroup.org. *
|
||||
! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
|
||||
!
|
||||
!
|
||||
! This file contains a FORTRAN90 example for the H5LT API
|
||||
!
|
||||
|
||||
program lite_example
|
||||
|
||||
use H5LT ! module of H5LT
|
||||
use HDF5 ! module of HDF5 library
|
||||
|
||||
implicit none
|
||||
|
||||
integer, parameter :: DIM1 = 4; ! Dimension of array
|
||||
character(len=9), parameter :: filename = "exlite.h5"! File name
|
||||
character(LEN=5), parameter :: dsetname1 = "dset1" ! Dataset name
|
||||
integer(HID_T) :: file_id ! File identifier
|
||||
integer(HSIZE_T), dimension(1) :: dims = (/DIM1/) ! Dataset dimensions
|
||||
integer :: rank = 1 ! Dataset rank
|
||||
integer, dimension(DIM1) :: buf1 ! Data buffer
|
||||
integer, dimension(DIM1) :: bufr1 ! Data buffer
|
||||
integer :: errcode ! Error flag
|
||||
integer :: i ! general purpose integer
|
||||
|
||||
!
|
||||
! Initialize the data array.
|
||||
!
|
||||
do i = 1, DIM1
|
||||
buf1(i) = i;
|
||||
end do
|
||||
|
||||
!
|
||||
! Initialize FORTRAN predefined datatypes.
|
||||
!
|
||||
call h5open_f(errcode)
|
||||
|
||||
!
|
||||
! Create a new file using default properties.
|
||||
!
|
||||
call h5fcreate_f(filename, H5F_ACC_TRUNC_F, file_id, errcode)
|
||||
|
||||
!
|
||||
! write dataset.
|
||||
!
|
||||
call h5ltmake_dataset_f(file_id, dsetname1, rank, dims, H5T_NATIVE_INTEGER, buf1, errcode)
|
||||
|
||||
!
|
||||
! read dataset.
|
||||
!
|
||||
call h5ltread_dataset_f(file_id, dsetname1, H5T_NATIVE_INTEGER, bufr1, dims, errcode)
|
||||
|
||||
!
|
||||
! compare read and write buffers.
|
||||
!
|
||||
do i = 1, DIM1
|
||||
if ( buf1(i) .ne. bufr1(i) ) then
|
||||
print *, 'read buffer differs from write buffer'
|
||||
print *, bufr1(i), ' and ', buf1(i)
|
||||
stop
|
||||
endif
|
||||
end do
|
||||
|
||||
|
||||
!
|
||||
! Close the file.
|
||||
!
|
||||
call h5fclose_f(file_id, errcode)
|
||||
|
||||
!
|
||||
! Close FORTRAN predefined datatypes.
|
||||
!
|
||||
call h5close_f(errcode)
|
||||
|
||||
!
|
||||
! end
|
||||
!
|
||||
end program lite_example
|
||||
|
@ -103,6 +103,7 @@ copy proj\hdf5_hl_fortrandll\debug\*.mod hdf5lib\debug\include
|
||||
copy proj\hdf5_hl\debug\hdf5_hld.lib hdf5lib\debug\lib
|
||||
copy proj\hdf5_hl_cpp\debug\hdf5_hl_cppd.lib hdf5lib\debug\lib
|
||||
copy proj\hdf5_hl_fortran\debug\hdf5_hl_fortrand.lib hdf5lib\debug\lib
|
||||
copy proj\hdf5_hl_fortran\debug\hdf5_hl_fortran.lib hdf5lib\debug\lib
|
||||
|
||||
copy proj\hdf5_hldll\debug\hdf5_hldlld.lib hdf5lib\debug\dll
|
||||
copy proj\hdf5_hldll\debug\hdf5_hldlld.dll hdf5lib\debug\dll
|
||||
@ -124,6 +125,7 @@ copy proj\hdf5_hl_fortrandll\release\*.mod hdf5lib\release\include
|
||||
copy proj\hdf5_hl\release\hdf5_hl.lib hdf5lib\release\lib
|
||||
copy proj\hdf5_hl_cpp\release\hdf5_hl_cpp.lib hdf5lib\release\lib
|
||||
copy proj\hdf5_hl_fortran\release\hdf5_hl_fortranr.lib hdf5lib\release\lib
|
||||
copy proj\hdf5_hl_fortran\release\hdf5_hl_fortran.lib hdf5lib\release\lib
|
||||
|
||||
copy proj\hdf5_hldll\release\hdf5_hldll.lib hdf5lib\release\dll
|
||||
copy proj\hdf5_hldll\release\hdf5_hldll.dll hdf5lib\release\dll
|
||||
|
Loading…
Reference in New Issue
Block a user