📄 readme.txt
字号:
--------------------------------------------------------------------------------
RADVISION Toolkit Source Package Readme File
Aug 09 2001
(c) RADVISION, Inc.
--------------------------------------------------------------------------------
This document provides basic instructions for building RADVISION Toolkits.
--------
Contents
--------
1. Source Tree and Makefile Information
2. Win32 Target Environment Specifics
3. Solaris Target Environment Specifics
4. Red Hat Linux Target Environment Specifics
5. Tru64 Target Environment Specifics
6. VxWorks Target Environment Specifics
7. PSoS Target Environment Specifics
8. OSE Target Environment Specifics
9. Nucleus Target Environment Specifics
1. Source Tree and Makefile Information
=======================================
Overview
--------
The root directory of the Toolkit is where build configuration
information is set and where all command line builds should be
started from. This root directory contains the following files:
Makefile - Primary Toolkit makefile
default.mak - Default build configuration information
nucleus.mak - Nucleus specific sub-makefile
ose.mak - Solaris specific sub-makefile
psos.mak - pSOS specific sub-makefile
readme.txt - This file, which contains setup and build instructions
redhat.mak - Redhat specific sub-makefile (should work on any Linux)
releasenotes.txt - Information about this release of the Megaco Toolkit
megaco.dsw - Megaco Workspace file (for Microsoft Visual Environment only)
solaris.mak - Solaris specific sub-makefile
tru64.mak - Tru64 specific sub-makefile
vxworks.mak - VxWorks specific sub-makefile
win32.mak - Windows specific sub-makefile
The sub-directories beneath this root directory contain the various source
code files. In addition to the standard source code files, there will
also be .mak and .dsp files. The .mak files are specific sub-makefiles
for each "project" and the .dsp file are Microsoft Project files
(which are only usable with Microsoft Visual tools).
Build Requirements
------------------
Building this toolkit requires the following software:
- GNU Make version 3.78 or newer
- Bourne shell or equivalent
- Unix sort command
- cp
- rm
- grep
- sed
Specific information on setting up the build environment, including
the best way to meet these requirements, can be found in the appropriate
section of this readme file for the target environment being used.
Note that if the Target is a Win32 platform, the above requirements
are needed only for a command line build, which is not supported for
WIndows yet. In the Windows environment, the build requires Microsoft
Visual C++ 6.0 or Microsoft Visual Studio 6.0.
Build Configuration
-------------------
After making sure the Build Requirements are met and setting up the
build environment, the next step is to set up the build configuration
parameters to be used for building the libraries and applications.
NOTE: For a Windows Target Environment, command line builds are not yet
supported. The workspace file (megaco.dsw) must be used within
the Microsoft Visual Environment in order to build the toolkit. See the
Win32 Target Environment section of this readme file for more information.
There are three ways to configure the build process: using the default.mak
file, using environment variables, using make command line arguments. It is
probably easiest to set the configuration parameters in the default.mak
file. In all three cases, the parameters are the same. If they are defined in
multiple places, they will be used with the following priority:
1. command line
2. environment
3. default.mak
Thus the command line will over-ride everything and the environment will
over-ride the default.mak file.
IMPORTANT: Changing parameters will NOT force a recompile
of all software. After changing a parameter, you must
do a "make clean" unless you are certain the changed
parameter(s) will not cause a problem.
The follwing parameters are used for building the toolkit:
TYPE What type of build to do. There are two possible values
for this: "debug" and "release". Using "debug" will
build in debugging code and compile with debugging
information. Using "release" will remove the debugging
code and compile with full optimization.
TARGET_OS Indicates the target operating system to be used. There
are six target operating systems currently supported:
"solaris", "redhat", "tru64", "vxworks", "psos", "ose",
"nucleus", and "win32".
HOST_OS Indicates the host operating system that is being used to
build the software. There are three host operating systems
currently support: "solaris", "redhat", "tru64", "win32".
TARGET_FAMILY This indicates the processor family of the target
CPU. See the Target specific section of this
readme for information on how to set this
parameter.
TARGET_CPU This indicates the specific processor type of the
target CPU. See the Target specific section of
this readme for information on how to set this
parameter.
COMPILER_CPU This indicates the CPU type that the compiler
should compile for. See the Target specific section
of this readme for information on how to set this
parameter.
COMPILER Indicates which compiler should be used for building the
software. There are currently three compilers supported:
"sparcworks", "gnu", "decc", "diab", and "ghs". The "sparcworks"
option indicates Sun Workshop. Note that not all compilers
are supported for all Target Environments. See the Target
specific section of this readme for details on which
compilers can be used.
CFLAGS This parameter should only be set in the default.mak file.
Anything set for this parameter will be added to the
command line sent to the compiler. Setting this parameter
anyplace else except the default.mak files will override
all of the information for compiler command line.
RV_SNMP This parameter is a flag. If it is defined (set to "1"),
then SNMP support will be built into software and any
approriate SNMP agents will be built. If left undefined,
no SNMP support will be included. If using the Microsoft
Visual Environment and SNMP support is required, make
sure this paremeter is set under "Preprocessor definitions".
SNMP is not supported for this version of the Megaco Toolkit.
RV_INET_IPV6 This parameter is a flag. If it is defined (set to "1"),
then IPv6 support will be built into software. Currently
only Solaris has been validated for IPv6, other OS's may
fail to compile or run if this switch is enabled.
INSTALL_ROOT This parameter specifies the destination directory
to be used by the install directive. Use the full
path (and drive letter on windows) to insure the
files are placed where intended. On win32 hosts,
use a / instead of \ in the path name.
It is important to note that parameter values are case sensitive and should
be set exactly as indicated. So, for example, to set the TYPE to debug in
a Windows environment, it would look exactly like this:
SET TYPE=debug
To do the same thing from the make command line would be:
make all TYPE=debug
That same setting in the default.mak file would look like this:
TYPE ?= debug
For specific examples of how to set all of the parameters, see the Target
Specific sections of this readme file.
Build Targets
-------------
The following are valid targets for make to build:
libcore.a - Basic services.
libsdp.a - The SDP stack.
librtp.a - The RTP/RTCP stack.
libmegaco.a - The Megaco stack.
libepp.a - The RADVISION EPP protocol (needed for sample MG).
megacomg - Sample Megaco MG based on Endpoint Manager API (a complete residential gateway).
megacomgc - Sample Megaco MGC application.
libs - Builds all of the above libraries.
all - Builds all libraries and applications
install - Builds all libraries and applications and copies them into place
clean - Removes all generated files from the entire source tree
depend - Builds only dependency files
Note that the megacomg, and megacomgc targets build executables
on a native OS (ie Solaris, Red Hat, Tru64, Windows) and libraries (libmg2.a,
libmgc.a, libmegacomg.a, and libmegacomgc.a) for linking to those
applications in an embedded environment (ie pSOS, VxWorks, etc...).
The install target will create a tree underneath the directory specificed
by INSTALL_ROOT. The following directories will be created:
include - all include files needed to use the toolkit libraries
libs - all libraries that have been built
demos - demo apps, sample apps, and related files
scripts - compile and link scripts generated by the Makefile
The libs, demos, and scripts directories will be subdivided into one
directory for each target os so that multiple targets may be placed
in one location.
Note that the link scripts on embedded OS's are just a starting point.
They are not complete since no executable is generated by the Makefiles
for those OS's.
Doing a Build
-------------
Once the build environment is assembled and configuration parameters are
set, building the software is very simple. Simply run make from
the root of this software tree and indicate the target to build:
make target [optional parameters]
NOTE: If the system being used to build the software has multiple versions
of make on it, it is common to rename GNU make to gmake, thus you
would use:
gmake target [optional parameters]
For "target", simply indicate the build target wanted, as described above.
If all parameters are specified in default.mak, then nothing needs to be
entered for "optional parameters".
The resulting libraries and application executable will be placed in the
root source tree directory (same directory that this readme file is in).
Some examples:
On a Windows PC with parameters in default.mak, to make all the libraries do:
make libs
On a Solaris Sun with parameters in default.mak and GNU Make being gmake (since
Sun's make is called "make"), to build everything do:
gmake all
On a Windows PC with parameters in default.mak, to make build everything but
force the build type to "debug", do:
make all TYPE=debug
On a Solaris Sun with parameters in default.mak, to clean up all compiler
output, libraries, and any other generated files, do:
gmake clean
On a Windows PC with nothing specified in default.mak, to build a release
version of the all the libraries for pSOS, using the diab compiler, for the
PPC603 CPU and turning on SNMP support, do:
make TARGET_OS=psos HOST_OS=win32 COMPILER=diab COMPILER_CPU=PPC603ES RV_SNMP=1 libs
In this example, note that the pSOS tools only use the COMPILER_CPU flag to
identify the target. Also, the ES in the COMPILER_CPU setting is compiler
specific and in this case indicates to use elf format and software floating
point.
2. Win32 Target Environment Specifics
=====================================
Supported Target OS's
---------------------
Windows 2000
Windows NT 4.0
Windows 98
Windows 95
Supported Host OS's
-------------------
Windows 2000
Windows NT 4.0
Windows 98
Windows 95
Supported compiler's
--------------------
Microsoft Visual C++ 6.0 (including Studio 6.0)
Build Environment
------------------
Currently, the toolkit can only be built from within the Microsoft
Visual environment. The only thing that needs to be set up is
the installation of Visual C++ 6.0 or Visual Studio 6.0.
Build Configuration
-------------------
The root of the directory tree for WIN32 platforms contains a Microsoft
Workspace called megaco.dsw. Load this workspace.
Building the Toolkit
-------------------------
While the megaco.dsw workspace is loaded, simply, *rebuild* the
desired projects. The "projects" are equivalent to the build targets for
make that are described above.
Building Applications
---------------------
When linking with the toolikit libraries, make sure to link
the apllications with the standard windows wsock32.lib library.
3. Solaris Target Environment
=============================
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -