瀏覽代碼

This is the text from the MS Word doc of similar name

Dave Schuyler 22 年之前
父節點
當前提交
880f2e74d5
共有 1 個文件被更改,包括 490 次插入0 次删除
  1. 490 0
      panda/src/doc/howto.install_panda_on_windows.txt

+ 490 - 0
panda/src/doc/howto.install_panda_on_windows.txt

@@ -0,0 +1,490 @@
+WARNING: This document is an internal VR Studio document describing
+how to set up Panda on a new PC using our internal development
+environment.  It is not useful for programmers who are not within the
+VR Studio firewall.
+
+If you are looking for documentation on installing Panda in the rest
+of the world, see INSTALL.txt in this directory.
+
+
+
+To install Panda3D on WinXP/Win2000
+-------------------------------------
+Notes:
+  Lines preceeded by ">" are instructions to be typed on the command line.
+  Make sure your system clock is not set to GMT (only worry about 
+    this if your makedepend seems out of sync, i.e. you constantly reinstall 
+    old files over more current ones).
+  "Touch" doesn't quite work properly currently (is this still true?).
+  Make sure your machine has enough disk space - I'd start with the largest
+    open space on any of your partitions.
+    You will have the fewest headaches if you choose C:\ for everything.
+    Also make sure that you’re logged into your computer with the same
+    username as your unix account because Cygwin will get its USER variable
+    from the windows username.
+
+  Ensure your computer’s date is set correctly, or else the compilation
+    scripts may have problems later.
+    
+Step 0: Map network drive to build tools drive
+  - Right click on Network Places, choose Map Network Drive
+  - Map Network Drive P: to \\dimbo\panda  (blank, your password, or “changeme”)
+    You also can do this from cmd.exe using 
+    'net use p: \\dimbo\panda /persistent:yes'
+  - Select ‘Reconnect drive at startup’
+  - If this doesnt work, you can install the build tools from CD
+  - Run 'regedit P:\tabs.reg' to enable cmd.exe tab-filename-completion.  
+    You must exit and restart the cmd.exe shell to enable this, since the
+    registry is only read at cmd.exe startup.
+    
+Step 1: Update OS software
+  On Win2000, install ServicePack 3 and DX 8.1 by running
+    > P:\win2k-servicepack3.exe
+    > P:\dx8.1\DX81NTeng.exe
+  or download them from http://windowsupdate.microsoft.com/ (this will be MUCH slower).
+
+  On both WinXP and Win2000, I recommend you go to 
+    http://windowsupdate.microsoft.com/, click on 'Product Updates' 
+    (installing the Product Update ActiveX control), and install any
+	patches labeled 'Critical Updates' as well as any updated sound,
+	network, and motherboard drivers.  Video card manufacturers will
+	usually have newer drivers than the WindowsUpdate site, however, so
+	go to the manufacturer’s website to check for win2000/winXP
+	drivers, especially on win2000, since the original win2k CD drivers
+	are most likely obsolete.
+
+Step 2: 
+  Choose whether to use Visual C++ v7.0 or v6.0
+    As of 5/19/03, it’s better to use Visual C++ v7.0 
+    (which is a synonym for Visual C++ .NET)
+  
+  To Install VC++ 7.0
+    Run P:\msvc7\vc_setup\setup.exe, or install from the MSDN 
+    'Visual Studio.NET' CD. Click on 'Windows Component Update' 
+    (if it is highlighted, else click '2').  Click 'Continue' 
+    (Selecting 'Do not use this machine to host web projects').  
+    You will install IE6, which will requires a reboot.  Give your 
+    cvspassword if you want it to happen automatically.   
+  
+  After rebooting, setup should start again.  If it does not, go 
+    back and rerun it, it should remember where it left off. After 
+    installing components, you are ready to install VC7 in .NET 
+    setup Step 2. Enter this step and enter the product-key, 
+    which is stored in P:\msvc7\vc7_prodkey.txt. On the 'Select 
+    items to install page', you need uncheck things to avoid 
+    wasting gigs of extra space and install time.  
+    Uncheck everything except for 
+    - Language Tools->Visual C++
+    - Server Components->Remote Debugger->Native Remote Debugger
+
+    and if you want, 
+    - Documentation (this takes a gig, and is only a slight 
+      update if you already have MSDN installed locally.  
+      You will want to uninstall any separately-installed 
+      MSDN docs if you get this.)
+
+  Unlike VC 6.0, there is no option to add the required compiler 
+    bin\ directories to the environment path automatically. If you 
+    are building using tcsh.exe under cygwin, wait until step 4.5 
+    to setup the environment after your shell environment is running 
+    properly.  If you are running from the NT command line, run 
+    > ”C:\Program Files\Microsoft Visual Studio .NET\Vc7\bin\vcvars32.bat"
+        
+  Note there is (currently) no need to install the MS Platform SDK, 
+    since VC7 comes with an updated version of it.
+  
+  To Install Visual C++ (v6.0)
+  - Run P:\msvc-6.0\setup.exe, or install from CD. For a faster 
+    install, select custom install and uncheck everything but 
+    Visual C++, Data Access, ActiveX, and Tools
+  - On WinNT/XP/2000, you will be prompted to register environment 
+    variables for running the compiler from the command line - do it.
+  - Install MSVC Service Pack 5 by running P:\msvc-sp5\setupsp5.exe, 
+    or from CD. You may need to run P:\msvc-sp5\mdac_typ.exe first 
+    (setup will tell you if so)
+  - Install the MSDN Library documentation if this is a primary dev 
+    machine. Install from the MSDN CD, or by running P:\msdn-apr01\setup.exe.  
+    To save time and disk space, choose custom install and uncheck 
+    everything but Text-Search, Index, VC++, Platform SDK, Knowledge 
+    Base, and All Other Files.
+  - Install MS Platform SDK to get updated VC libs and headers
+  - Run P:\platform-sdk\setup.exe to install the Feb 2001 Platform SDK and
+    choose 'Install MS Platform SDK in default location.' (there may be 
+    problems with other newer versions of the Platform SDK). This should 
+    prepend the Platform SDK paths to your PATH,INCLUDE, and LIB dirs.  
+    Building libpandadx requires this step (needs DX7 headers/libs)
+    
+Step 3: Install Cygwin (v1.3.5 or above should work)
+  - As of 1.3.11, cygwin seems stable enough to install from the internet, 
+    go to http://cygwin.com and click on the ‘install cygwin now’ link.  
+    The most reliable download server is http://mirrors.rcn.net.  Make 
+    sure that the following packages are selected for installation:
+  - Devel packages such as :  CVS, make, flex
+  - under Interpreters : gawk, perl (see note below)
+  - under Shells : ash, bash, sh-utils, tcsh
+  - under Text : more
+  - under Archive : zip, unzip
+  - You can also install other programs (like vi for instance) if you want.  
+    To rotate through the possible installation options, left-click on 
+    the programs of your choice.
+  - Keep in mind the following exceptions: 
+  - Do NOT install the Interpreter->python package (change the Setting to ‘SKIP’)
+  - Do NOT install the Devel->bison package if the version is 1.30-1.34,  
+    they are known to be buggy.  Version 1.28 is safe, as is version 1.35+. 
+    If 1.35+ is not available, you can install 1.28 manually, after you 
+    have a shell running (see step 4.5)
+  - There are many subpackages that are obviously not needed (e.g. Mail, 
+    Doc, Text, Games) that you can skip if you like.
+  - Create a desktop shortcut or Start Menu item for c:\cygwin\bin\tcsh.exe 
+    and use it in the future.
+
+    Known Problems with tcsh:
+       tcsh v6.09.00: (cygwin 1.0)   
+  - long paths result in 'Word too long' errors, especially during panda 
+    ‘attach’ scripts
+
+       tcsh v.6.11 - 6.12.00
+  - TAB filename completion sometimes fails on second+ arguments in 
+    cmdline (e.g. ‘cp file.cxx file2[TAB]’ fails to complete file2.cxx)  
+    To fix this, go to /etc/profile.d/complete.tcsh and comment out the  
+    lines associated with ‘complete mv’ and ‘complete cp’
+       
+       v6.09 and v6.11 should be stored on P:\cygwin-1.3.5, you can copy them
+       to c:\cygwin\bin if you want to use them
+
+    Known Problems with perl version 5.8.0-2 installed by default w/ Cygwin 5.2.0-2:
+      Is not compatible with the current $DTOOL startup script 
+      $DTOOL/etc/dtool.cshrc install: specifically the “source $SETUP_SCRIPT” 
+      because cygwin Perl 5.8.0 leaves a ^M newline in the variable, screwing 
+      up the later source $SETUP_SCRIPT resulting in startup errors.  Stay 
+      with earlier versions of Perl (5.6.x) or later versions of Perl, 
+      starting with version 5.8.0-3
+               
+    Next, you can run a bash shell by going to the "Start"
+    button at the bottom left of your screen, selecting "Programs",
+    "Cygwin" and "bash".  You can then run "tcsh" at the bash prompt to make 
+    things easier.  
+
+Step 3.5: Set up the Cygwin environment:
+  - All of the commands below have been collected in 	
+    P:\win\install\wintools\etc\setup_env.csh.  To do all the Cygwin 
+    steps below automatically, from the tcsh prompt do:
+    > cd P:/win/install/wintools/etc
+    > source setup_env.csh
+
+  These are the steps setup_env.csh performs (so you don’t have to):
+  - Make the following directories (don’t worry if they already exist)
+    > mkdir /bin /etc/ /tmp /usr
+    > mkdir /c /f /g /h /i /j /p
+    > mkdir /usr/local /usr/local/bin /usr/local/etc
+      
+  - Rename any cygwin-installed python.exe (if it exists) to avoid 
+    conflicts with required VRSTUDIO-compiled python, which is custom-built 
+    to load ‘sitecustomize.py’ which sets up the PYTHONPATH env-var 
+    for our panda environment:
+    > mv /bin/python.exe /bin/python-cygwin.exe
+
+  - Create some links expected by the attach scripts, which look in std unix places:
+    > ln -s /bin/tcsh /bin/csh
+    > ln -s /bin/perl /usr/local/bin/perl
+    > ln -s /bin/bash /usr/local/bin/bash
+
+  - Connect the network drives:
+    Note that any of your drive letters are already in use (by a CD drive, 
+      or by some I.S. login-script-created drive), you simply do a 'net use' 
+      to a different drive letter, then change the 'mount' command to point 
+      the official '/[drivelet]' dir at the real drive letter it's mounted 
+      to.
+      It is not necessary for cygwin’s /p to point to the P: drive in Windows.
+
+    > net use f: "\\nufat\fat" /persistent:yes
+    > net use g: "\\nufat\bit" /persistent:yes
+    > net use h: "\\dimbo\usr2" /persistent:yes
+    > net use i: "\\nufat\big" /persistent:yes
+    > net use j: "\\nufat\for" /persistent:yes
+    > net use P: "\\dimbo\panda" /persistent:yes
+
+  The ‘net use’ commands may require you to enter a password if access is 
+    denied, in which case you can add the /USER:[username] argument to net 
+    use and it will ask for a password.  See ‘net use /help’ for more info.  
+    The ‘Map Networked Drive’ GUI option can be used instead of ‘net use’.
+
+  - Create cygwin mount directories.  The purpose of this is to shorten 
+    and simplify paths.  Note the use of -b for the mounts to mapped 
+    network drivers on remote machines. The /ms* mounts assume things 
+    were installed in C:\Program Files:
+
+      > mount -s c:/ /c
+      > mount -s -b f:/ /f
+      > mount -s -b g:/ /g
+      > mount -s -b h:/ /h
+      > mount -s -b i:/ /i
+      > mount -s -b j:/ /j
+      > mount -s -b P:/ /p
+
+    If VC7 is installed:
+      > mkdir /msvc7
+      > mount -s C:/Program\ Files/Microsoft\ Visual\ Studio .NET/Vc7 /msvc7
+
+    If VC6 is installed:
+      > mkdir /msvc98 /mscommon /mspsdk
+      > mount -s C:/Program\ Files/Microsoft\ Visual\ Studio/VC98 /msvc98
+      > mount -s C:/Program\ Files/Microsoft\ Visual\ Studio/Common /mscommon
+      > mount -s C:/Program\ Files/Microsoft\ Platform\ Sdk /mspsdk
+         
+    If Intel C++ is installed:
+      > mkdir /intel /ia32
+      > mount -s C:/Program\ Files/Intel /intel
+      > mount -s C:/Program\ Files/Intel/Compiler60/IA32 /ia32
+
+ 	These are optional, but handy aliases for our common unix locations:
+      > mkdir /fat /for /bit /ful /alpha /beta /gamma
+      
+      > mount -s -b F:/ /fat
+      > mount -s -b G: /bit
+      > mount -s -b H:/fit/ /fit
+      > mount -s -b H:/ful/ /ful
+      > mount -s -b I:/alpha/ /alpha
+      > mount -s -b I:/beta /beta
+      > mount -s -b I:/gamma /gamma
+      > mount -s -b J:/ /for
+
+    Note that these mount points may ‘hide’ any local directories with 
+      the same path from cygwin apps (e.g. C:\Cygwin\beta will be not 
+      be accessible via /beta)
+
+Step 4: Create your home directory
+  - Create a HOME directory:
+    > mkdir /usr/<yourname>
+	or
+    > mkdir /home/<yourname>
+
+  - Set the $HOME environment variable in the Registry:
+  - You must be logged into your computer on an account with Administrator access
+  - Select "Start Menu->Control Panel”
+  - Select "System" icon.
+  - Select “Advanced->Environment” button.
+  - Create the variable "HOME" with the value "/usr/<yourname>".
+  - click ok - ok - ok to exit (you must exit for the change to take effect)
+  - Now open a new shell so the registry is read by the shell to get the changes.
+  Note: We've seen a problem where we can't source ~/.cshrc if the home 
+    directory ‘/usr/<yourname>’ does not match the user name %USERNAME% 
+    windows env var. To be safe, be sure and name your home directory 
+    to be /usr/<yourname>.
+
+  - Add C:\Cygwin\bin to the $path environment variable in the registry 
+    to avoid errors (sed: Command not found) when executing the file 
+    complete.tcsh (in C:\Cygwin\etc\profile.d) on startup 
+
+  Copy important startup files into your home directory:
+    > cd /p/win/install/wintools/panda
+    > cp .cshrc .emacs Configrc Config.pp.sample /usr/<yourname>
+    > mv /usr/<yourname>/Config.pp.sample /usr/<yourname>/Config.pp
+
+  Make sure the contents of .cshrc are correct for your setup.  In 
+    particular, make sure the definition for PANDA_ROOT matches the 
+    directory you have installed Cygwin to (normally C:\Cygwin), 
+    and that CVSROOT is correct for your CVS login (if $USERNAME 
+    is not the same as your CVS/Unix account name, edit the 
+    variable as necessary).
+
+  INSTALL BISON:  Skip this is you have bison 1.35+ installed.  
+    Versions of bison between 1.30-1.34 seem to have a bug, to 
+    avoid this you can install bison manually:
+    > cd /
+    > tar zxvf /p/Cygwin-1.3.5/bison-1.28-1.tar.gz
+
+Step 4.5:  Setup VC7 environment in shell (skip if you have VC6)
+  (NOTE: This step is already done if you ran setup_env.csh)
+ 
+  Use your favorite text editor to open /p/win/install/wintools/bin/setup_msvc7.csh.  
+    Copy the top portion of setup_msvc7.csh (it sets PATH and other 
+    environment variables) to your .cshrc, and put 'set_msvc7' cmd 
+    from the script at the end of your .cshrc to set up the PATH 
+    properly as well as do the important 'setenv USE_COMPILER MSVC7' 
+    to tell ppremake to use VC7.  The USE_COMPILER variable can 
+    alternatively be added to your local Config.pp.
+
+  After finishing this process, make sure you are using VC7 in your
+    shell by typing 'cl' at the prompt.  If you have VC7 you will see: 
+
+    Microsoft (R)32-bit C/C++ Optimizing Compiler Version 13.00.9466 for 80x86 
+    Copyright (C) Microsoft Corporation 1984-2001.
+
+  If you still have VC6, you will see something like
+
+    Microsoft (R)32-bit C/C++ Optimizing Compiler Version 12.00.8804 for 80x86
+    Copyright (C) Microsoft Corp 1984-1998. 
+
+  If you try to build with this broken setup, the build process will get 
+    confused and compile with VC6 but try to link with the VC7 libraries 
+    and you will get link errors.
+
+  To correct this problem, check your tcsh path to make sure it has the
+    .NET dirs in it, and make sure the cygwin softlink mount point /msvc7
+    exists, and is not empty but points to the proper VC7 directory. Doing
+    'ls /msvc7' should give you something like
+
+    Common7/               Visual Studio .NET Enterprise Architect - English/
+    Crystal Reports/       Visual Studio SDKs/
+    EnterpriseFrameworks/  contents.htm
+    FrameworkSDK/          readme.htm
+    Msdn/                  redist.txt
+    Setup/                 sqlserver/
+    Vb7/                   toc.htm
+    Vc7/                   vdt70vcs.dll*
+
+
+  If it does not, try running 
+    > source ~/player/wintools/etc/setup_env.csh
+  again to get it to do the cmd (ignore file-exists errors)
+    > mount -s C:/Program\ Files/Microsoft\ Visual\ Studio\ .NET /msvc7
+  This should create the softlink mount, or you can just run the cmd manually yourself.
+
+Step 5: Copy files needed by attach scripts
+  - Run script to copy vspec files from $WINTOOLS to /usr/local/etc
+    > cd /p/win/install/wintools
+    > ./cp_vspec 
+  To setup a new user in panda environment files:
+  - If you are setting up a new user, edit the *.vspec files in 
+    /usr/local/etc to add the new username and path to the player
+    tree (starting with dtool.vspec, panda.vspec, direct.vspec, toontown.vspec).
+  - (Optional) Update default values in vspec files. Edit appropriate *.vspec 
+    files to specify which trees you wish to use as a default (e.g. install, 
+    personal, or release)
+
+Step 6: Grab the cvs trees
+  Open a new shell
+  Create personal trees:
+    > mkdir ~/player
+    > cd ~/player
+  Grab from local repository
+    # Just hit return or type your unix password when prompted for a password
+    > cvs login
+    > cvs co toontown (only if local toontown will be built)
+
+  Now choose either A (commit) or B (anonymous) access:
+A. SourceForge developer (with commit) access
+1. setup an account with SourceForge at http://sourceforge.net/account/register.php
+  try to use the same username used your cygwin setup
+  tell somebody like Daniel or Dave Schuyler to add your new sourceforge 
+    username to the list of Panda3D developers
+2. setup ssh and access through the corporate firewall to cvs.panda3d.sourceforge.net
+  - copy the setup from /p/win/install/wintools/etc/ssh_config to your ~/.ssh/config
+  - You may also need to copy the config file to /etc/ssh_config
+  - If you have not generated a key before on another machine, generate a dsa key now with:
+    > ssh-keygen -t dsa
+  (If you have generated this key before, copy the id_dsa and id_dsa.pub 
+    from ~/.ssh/config on your other machine.)
+  If the above does not put a file in ~/.ssh/config, check that your 
+    /etc/passwd file has an entry for your username and that it points 
+    to the correct home directory for you.
+  register your generated ssh public key (id_dsa.pub) at 
+    https://sourceforge.net/account/editsshkeys.php
+3. type this at the shell or/and put it into your .cshrc
+    > setenv CVS_RSH /bin/ssh
+4. check out these trees in ~/player (only if a local version will be built) with:
+    > setenv SFROOT :ext:<your-sourceforge-username>@cvs.panda3d.sourceforge.net:/cvsroot/panda3d
+B. anonymous CVS (read-only access) from SourceForge
+    > setenv SFROOT :pserver:anonymous@nit:/cvsroot/panda3d
+
+  now check out these trees
+    > cvs -d $SFROOT co dtool (only if local dtool will be built)
+    > cvs -d $SFROOT co panda (only if local panda will be built)
+    > cvs -d $SFROOT co direct (only if local direct will be built)
+
+  - Choose which optimize level you want. This is set in Config.pp in
+    your $HOME directory.  Look for #define OPTIMIZE and follow
+    instructions above that.  You can only choose an arbitrary
+    optimize level if you are building your own DTOOL and PANDA;
+    otherwise, you must set it to the optimize level corresponding to
+    the version of DTOOL/PANDA you intend to attach to (install is
+    built OPTIMIZE 2, release is built OPTIMIZE 3).  A good choice is OPTIMIZE 3.
+
+  Your normal, non-SourceForge CVSROOT should be set to the default:
+    > setenv CVSROOT :pserver:<your-unix-username>@dimbo:/fit/cvs
+
+Step 7: (Optional) Build $DTOOL
+  - When you opened a new shell in step 6, it should have attached to 
+    DTOOL:install automatically, but you will need to attach to your 
+    own DTOOL if you want to build your own.
+    **Note all the ‘cta’ attach commands can be placed in your .cshrc **
+    > cta dtool personal  
+    > cd $DTOOL
+    > ppremake
+    > make install
+
+  After the make is done, kill your current tcsh window and open another 
+  using your shortcut from before.
+
+Step 8: (Optional) Build $PANDA 
+  - Build panda
+    > cta dtool personal  
+    > cta panda personal
+    > cd $PANDA
+    > ppremake
+    > make install
+
+Again, after every make, kill and reopen the tcsh window.
+
+  - You can now run "pview" to test the install and build - you should
+    see a window pop up with a triangle in it.  To see the triangle with
+    a texture on it, you'll need to be in $PANDA/src/testbed/ when
+    you run "pview".
+
+Step 9: Build $DIRECT
+  > cta dtool personal  
+  > cta panda personal
+  > cta direct personal
+  > cd $DIRECT
+  > ppremake
+  > make install
+
+Step 10: Install Emacs   
+  We use GNU emacs (21.2 currently) by default, other versions of emacs 
+    may also work.  Note: unlike xemacs.exe compiled for cygwin, this 
+    emacs does not use Cygwin paths, so "/" represents the real root 
+    (C:\, not "C:\Cygwin")).  
+  Copy the tarball to your local machine
+    > cp /p/emacs-21.2-fullbin-i386.tar /c
+  Untar and install (This will install emacs into C:/emacs-21.2, do 
+    not attempt to install it under a directory containing a space,
+    like "Program Files".)
+    > cd /c
+    > tar xvf emacs-21.2-fullbin-i386.tar
+  Copy lisp/script files
+    > cp $DIRECT/src/directscripts/python-mode.el /c/emacs-21.2/lisp/progmodes
+    > cp $DIRECT/src/directscripts/runPythonEmacs /usr/local/bin
+  Update environment variables (win2000/XP).  Note: You should only need to
+    do this if you intend to invoke Emacs from a non-Cygwin prompt.  If you
+    will always be using Cygwin, simply edit your .cshrc file to add /c/emacs-21.2/bin)
+  - Select "Start Menu->Control Panel”
+  - Select "System" icon.
+  - Select "Advanced->Environment" button.
+  - double click on the "Path" variable in the bottom pane (system variables)
+  - add "C:\emacs-21.2\bin" to the end of the path (semicolon separated)
+  - click ok - ok - ok to exit (you must exit for the change to take effect)
+
+Step 11: Build $TOONTOWN
+  > cta dtool personal  
+  > cta panda personal
+  > cta direct personal
+  > cta toontown personal
+  > cd $TOONTOWN
+  > ppremake
+  > make install
+  Exit the shell and create a new one
+
+Step 12: Generate Python Code
+  > cd $DIRECT/bin
+  > genPyCode win-debug (if you have built using OPTIMIZE = 1 or 2)
+  > genPyCode win-release (if you have built using OPTIMIZE = 3 or 4)
+  > genPyCode win-publish (for publishes)
+
+Step 13: set up a local server (optional)
+  - mkdir /c/toonsrv
+  - unzip /p/toontown_server/dev_NOTAG_*.zip to /c/toonsrv
+  - run /c/toonsrv/INSTALLALL.BAT to install toon servers as local NT-type services
+  - /c/toonsrv/STARTALL.BAT to start the servers and /c/toonsrv/STOPALL.BAT to stop them
+
+When you get here, rejoice!