Ignore:
Timestamp:
Nov 18, 2005 12:16:43 AM (18 years ago)
Author:
bennylp
Message:

Pretty comments

File:
1 edited

Legend:

Unmodified
Added
Removed
  • pjproject/trunk/INSTALL.txt

    r47 r51  
    1 Last Update: 2005/05/28 for pjproject-0.2.8 
    2  
    3  
    4 COMMON PROBLEMS 
    5 ================= 
    6 - make error 
    7 process_begin: CreateProcess((null), cl /c /nologo /DWIN32 /D_WIN32 /DPJ_GUID_TY 
    8 PE=PJ_GUID_COCREATEGUID /I../src ..\src\pj\ioqueue_winnt.c /Fooutput\pjlib_win32 
    9 _vc\ioqueue_winnt.o, ...) failed. 
    10 make (e=2): The system cannot find the file specified. 
    11 make[1]: *** [output/pjlib_win32_vc/ioqueue_winnt.o] Error 2 
    12  
    13   solution: 
    14 make doesn't like spaces in vc98 PATH 
    15  
    16  
    17 BUILD INSTRUCTIONS 
    18 ================================================================================ 
    19  
    20 The main target of the build process is to build executable pjsip/bin/pjsua.exe. 
    21  
    22  
    23 1. Build instructions for Microsoft Visual Studio .NET 2003 
    24    ---------------------------------------------- 
    25    - Open solution file: build/pjproject.sln 
    26      There will be some dialogs appear asking about Source Safe, just ignore it. 
    27    - Build the solution. That should build every single projects in pjproject. 
    28  
    29  
    30 2. Build instructions for Microsoft Visual Studio 6 
    31    ------------------------------------------------ 
    32    Note: MSVC6 workspace is normally updated less often than MSVC7.1 projects.  
    33          Especially during intermediate release. Normally the status will be 
    34          noted in the web page. 
    35  
    36    - Open workspace file: build/pjproject.dsw 
    37    - Perform batch build. That should build every single projects in pjproject. 
    38  
    39  
    40 3. Build instructions for Linux i386, Mingw 
    41    ---------------------------------------- 
    42    Note: mingw/Linux Makefiles are normally updated less often than MSVC7.1 projects. 
    43  
    44    Step-by-step instruction to build the whole thing: 
    45  
    46      $ tar xzvf pjproject-0.2.6.tar.gz  
    47      $ cd pjproject-0.2.6 
    48       
    49      $ export TARGET=mingw       <== for Mingw, or 
    50      $ export TARGET=linux-i386  <== for Linux 
    51     
    52      $ make dep 
    53      $ make all 
    54  
    55    That should build all libraries and test applications (including pjsua). 
    56  
    57    There are some other make targets: 
    58  
    59      $ make clean      ==> clean files (except libraries, binaries, & dependency files). 
    60      $ make realclean  ==> clean everything 
    61      $ make distclean  ==> ditto. 
    62  
    63    Note:  
    64      - pjsua for Mingw and Linux build doesn't have audio device at present. 
    65  
    66  
    67 4. Additional flags (for debugging etc.) 
    68    ------------------------------------- 
    69    The build system for mingw/Linux accepts can additional flags, for example 
    70    for debugging. 
    71  
    72    Example: 
    73  
    74     $ (on pjproject root directory) 
    75     $ make CFLAGS=-ggdb "LDFLAGS=-L/foo/lib -lfoo" 
    76  
    77  
    78  
    79 REDUCING SIZE 
    80 ================================================================================ 
    81  
    82 There are some C macros that can be used to reduce the size. For Mingw and Linux build, 
    83 these macros are activated if you specify MINSIZE=1 during make, e.g.: 
    84  
    85      $ .. (we're in pjproject directory) .. 
    86      $ make MINSIZE=1 all 
    87  
    88 Then after building the projects, you can check the size of the libraries: 
    89  
    90      $ make size 
    91  
    92 If you use Microsoft Visual Studio, then you'll have to set the C macros manually: 
    93  
    94      pjlib/src/pj/config.h: 
    95            - #define PJ_HAS_TCP                0   // ==> to exclude TCP 
    96            - #define PJ_HAS_THREADS            0   // ==> to exclude threads 
    97            - #define PJ_FUNCTIONS_ARE_INLINED  0   // ==> do not inline. 
    98      pjlib/src/pj/log.h: 
    99            - #define PJ_LOG_MAX_LEVEL          0   // ==> disable all tracing 
    100  
    101  
    102 GENERATING DOCUMENTATION 
    103 ================================================================================ 
    104  
    105 You need to have doxygen to generate documentation. 
    106  
    107 To generate doxygen documentation with GNU make,  
    108  
    109     $ (on pjproject root directory) 
    110     $ make doc 
    111  
    112 If GNU make is not available, generate documentation on each project: 
    113  
    114     $ cd pjsip 
    115     $ doxygen docs/doxygen.cfg 
    116  
    117     $ cd pjlib 
    118     $ doxygen docs/doxygen.cfg 
    119  
    120     etc.. 
    121  
    122 The HTML files will be put under docs/html directory. 
    123  
    124  
    125 That's about it I guess, sorry couldn't write more. Feel free to drop me a note if 
    126 you encounter any problems. 
    127  
    128  
    129 Thanks, 
    130 Benny Prijono 
    131 <bennylp at pjproject.net> 
    132  
     1Left empty for now. 
Note: See TracChangeset for help on using the changeset viewer.