⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 install.vms

📁 mediastreamer2是开源的网络传输媒体流的库
💻 VMS
字号:
			VMS Installation instructions			written by Richard Levitte			<richard@levitte.org>Intro:======This file is divided in the following parts:  Requirements			- Mandatory reading.  Checking the distribution	- Mandatory reading.  Compilation			- Mandatory reading.  Logical names			- Mandatory reading.  Test				- Mandatory reading.  Installation			- Mandatory reading.  Backward portability		- Read if it's an issue.  Possible bugs or quirks	- A few warnings on things that				  may go wrong or may surprise you.  TODO				- Things that are to come.Requirements:=============To build and install OpenSSL, you will need: * DEC C or some other ANSI C compiler.  VAX C is *not* supported.   [Note: OpenSSL has only been tested with DEC C.  Compiling with     a different ANSI C compiler may require some work]Checking the distribution:==========================There have been reports of places where the distribution didn't quite getthrough, for example if you've copied the tree from a NFS-mounted Unixmount point.The easiest way to check if everything got through as it should is to checkfor one of the following files:	[.CRYPTO]OPENSSLCONF.H_IN	[.CRYPTO]OPENSSLCONF_H.INThey should never exist both at once, but one of them should (preferablythe first variant).  If you can't find any of those two, something wentwrong.The best way to get a correct distribution is to download the gzipped tarfile from ftp://ftp.openssl.org/source/, use GUNZIP to uncompress it anduse VMSTAR to unpack the resulting tar file.GUNZIP is available in many places on the net.  One of the distributionpoints is the WKU software archive, ftp://ftp.wku.edu/vms/fileserv/ .VMSTAR is also available in many places on the net.  The recommended placeto find information about it is http://www.free.lp.se/vmstar/ .Compilation:============I've used the very good command procedures written by Robert Byer<byer@mail.all-net.net>, and just slightly modified them, makingthem slightly more general and easier to maintain.You can actually compile in almost any directory separately.  Lookfor a command procedure name xxx-LIB.COM (in the library directories)or MAKExxx.COM (in the program directories) and read the comments atthe top to understand how to use them.  However, if you want tocompile all you can get, the simplest is to use MAKEVMS.COM in the topdirectory.  The syntax is the following:  @MAKEVMS <option> <rsaref-p> <debug-p> [<compiler>]<option> must be one of the following:      ALL       Just build "everything".      CONFIG    Just build the "[.CRYPTO]OPENSSLCONF.H" file.      BUILDINF  Just build the "[.INCLUDE]BUILDINF.H" file.      SOFTLINKS Just copies some files, to simulate Unix soft links.      BUILDALL  Same as ALL, except CONFIG, BUILDINF and SOFTLINKS aren't done.      RSAREF    Just build the "[.xxx.EXE.RSAREF]LIBRSAGLUE.OLB" library.      CRYPTO    Just build the "[.xxx.EXE.CRYPTO]LIBCRYPTO.OLB" library.      SSL       Just build the "[.xxx.EXE.SSL]LIBSSL.OLB" library.      SSL_TASK  Just build the "[.xxx.EXE.SSL]SSL_TASK.EXE" program.      TEST      Just build the "[.xxx.EXE.TEST]" test programs for OpenSSL.      APPS      Just build the "[.xxx.EXE.APPS]" application programs for OpenSSL.<rsaref-p> must be one of the following:      RSAREF    compile using the RSAREF Library      NORSAREF  compile without using RSAREFNote 0: The RSAREF library IS NO LONGER NEEDED.  The RSA patent        expires September 20, 2000, and RSA Security chose to make        the algorithm public domain two weeks before that.Note 1: If you still want to use RSAREF, the library is NOT INCLUDED        and you have to download it.  RSA Security doesn't carry it        any more, but there are a number of places where you can find        it.  You have to get the ".tar-Z" file as the ".zip" file        doesn't have the directory structure stored.  You have to        extract the file into the [.RSAREF] directory as that is where        the scripts will look for the files.Note 2: I have never done this, so I've no idea if it works or not.<debug-p> must be one of the following:      DEBUG     compile with debugging info (will not optimize)      NODEBUG   compile without debugging info (will optimize)<compiler> must be one of the following:      DECC      For DEC C.      GNUC      For GNU C.You will find the crypto library in [.xxx.EXE.CRYPTO], called LIBCRYPTO.OLB,where xxx is VAX or AXP.  You will find the SSL library in [.xxx.EXE.SSL],named LIBSSL.OLB, and you will find a bunch of useful programs in[.xxx.EXE.APPS].  However, these shouldn't be used right off unless it'sjust to test them.  For production use, make sure you install first, seeInstallation below.Note 1: Some programs in this package require a TCP/IP library.Note 2: if you want to compile the crypto library only, please make sure        you have at least done a @MAKEVMS CONFIG, a @MAKEVMS BUILDINF and        a @MAKEVMS SOFTLINKS.  A lot of things will break if you don't.Logical names:==============There are a few things that can't currently be given through the commandline.  Instead, logical names are used.Currently, the logical names supported are:      OPENSSL_NO_ASM    with value YES, the assembler parts of OpenSSL will                        not be used.  Instead, plain C implementations are                        used.  This is good to try if something doesn't work.      OPENSSL_NO_'alg'  with value YES, the corresponding crypto algorithm                        will not be implemented.  Supported algorithms to                        do this with are: RSA, DSA, DH, MD2, MD4, MD5, RIPEMD,                        SHA, DES, MDC2, CR2, RC4, RC5, IDEA, BF, CAST, HMAC,                        SSL2.  So, for example, having the logical name                        OPENSSL_NO_RSA with the value YES means that the                        LIBCRYPTO.OLB library will not contain an RSA                        implementation.Test:=====Testing is very simple, just do the following:  @[.TEST]TESTSIf a test fails, try with defining the logical name OPENSSL_NO_ASM (yes,it's an ugly hack!) and rebuild. Please send a bug report to<openssl-bugs@openssl.org>, including the output of "openssl version -a"and of the failed test.Installation:=============Installation is easy, just do the following:  @INSTALL <root><root> is the directory in which everything will be installed,subdirectories, libraries, header files, programs and startup commandprocedures.N.B.: INSTALL.COM builds a new directory structure, different fromthe directory tree where you have now build OpenSSL.In the [.VMS] subdirectory of the installation, you will find thefollowing command procedures:  OPENSSL_STARTUP.COM        defines all needed logical names.  Takes one argument that        tells it in what logical name table to insert the logical        names.  If you insert if it SYS$MANAGER:SYSTARTUP_VMS.COM, the        call should look like this:           @openssldev:[openssldir.VMS]OPENSSL_STARTUP "/SYSTEM"  OPENSSL_UTILS.COM        sets up the symbols to the applications.  Should be called        from for example SYS$MANAGER:SYLOGIN.COM The logical names that are set up are the following:  SSLROOT       a dotted concealed logical name pointing at the                root directory.  SSLCERTS      Initially an empty directory, this is the default		location for certificate files.  SSLMISC	Various scripts.  SSLPRIVATE	Initially an empty directory, this is the default		location for private key files.  SSLEXE        Contains the openssl binary and a few other utility		programs.  SSLINCLUDE    Contains the header files needed if you want to		compile programs with libcrypto or libssl.  SSLLIB        Contains the OpenSSL library files (LIBCRYPTO.OLB		and LIBSSL.OLB) themselves.  OPENSSL	Same as SSLINCLUDE.  This is because the standard		way to include OpenSSL header files from version		0.9.3 and on is:			#include <openssl/header.h>		For more info on this issue, see the INSTALL. file		(the NOTE in section 4 of "Installation in Detail").		You don't need to "deleting old header files"!!!Backward portability:=====================One great problem when you build a library is making sure it will workon as many versions of VMS as possible.  Especially, code compiled onOpenVMS version 7.x and above tend to be unusable in version 6.x orlower, because some C library routines have changed names internally(the C programmer won't usually see it, because the old name ismaintained through C macros).  One obvious solution is to make sureyou have a development machine with an old enough version of OpenVMS.However, if you are stuck with a bunch of Alphas running OpenVMS version7.1, you seem to be out of luck.  Fortunately, the DEC C header filesare cluttered with conditionals that make some declarations and definitionsdependent on the OpenVMS version or the C library version, *and* youcan use those macros to simulate older OpenVMS or C library versions,by defining the macros _VMS_V6_SOURCE, __VMS_VER and __CTRL_VER withcorrect values.  In the compilation scripts, I've provided the possibilityfor the user to influence the creation of such macros, through a bunch ofsymbols, all having names starting with USER_.  Here's the list of them:  USER_CCFLAGS		 - Used to give additional qualifiers to the			   compiler.  It can't be used to define macros			   since the scripts will do such things as well.			   To do such things, use USER_CCDEFS.  USER_CCDEFS		 - Used to define macros on the command line.  The			   value of this symbol will be inserted inside a			   /DEFINE=(...).  USER_CCDISABLEWARNINGS - Used to disable some warnings.  The value is			   inserted inside a /DISABLE=WARNING=(...).So, to maintain backward compatibility with older VMS versions, do thefollowing before you start compiling:  $ USER_CCDEFS := _VMS_V6_SOURCE=1,__VMS_VER=60000000,__CRTL_VER=60000000  $ USER_CCDISABLEWARNINGS := PREOPTWThe USER_CCDISABLEWARNINGS is there because otherwise, DEC C will complainthat those macros have been changed.Note: Currently, this is only useful for library compilation.  The      programs will still be linked with the current version of the      C library shareable image, and will thus complain if they are      faced with an older version of the same C library shareable image.      This will probably be fixed in a future revision of OpenSSL.Possible bugs or quirks:========================I'm not perfectly sure all the programs will use the SSLCERTS:directory by default, it may very well be that you have to give themextra arguments.  Please experiment.TODO:=====There are a few things that need to be worked out in the VMS version ofOpenSSL, still:- Description files. ("Makefile's" :-))- Script code to link an already compiled build tree.- A VMSINSTALlable version (way in the future, unless someone else hacks).- shareable images (DLL for you Windows folks).There may be other things that I have missed and that may be desirable.Please send mail to <openssl-users@openssl.org> or to me directly if youhave any ideas.--Richard Levitte <richard@levitte.org>2000-02-27

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -