mirror of
https://github.com/panda3d/panda3d.git
synced 2025-10-03 10:22:45 -04:00
Updated to reflect changes in makepanda
This commit is contained in:
parent
2689381a45
commit
87d4d768c5
@ -10,30 +10,29 @@ Panda3D Install --- using the 'makepanda' system.
|
||||
INVOKING MAKEPANDA
|
||||
|
||||
Makepanda is a script that builds panda, all the way through. To
|
||||
invoke it under windows, type this:
|
||||
invoke it under windows, change directory to the root of the panda
|
||||
source tree and type this:
|
||||
|
||||
makepanda
|
||||
makepanda\makepanda.bat
|
||||
|
||||
To invoke it under Linux, you need to type the 'py' extension
|
||||
explicitly:
|
||||
To invoke it under Linux, change directory to the root of the panda
|
||||
source tree and type this:
|
||||
|
||||
makepanda.py
|
||||
makepanda/makepanda.py
|
||||
|
||||
From this point forward, I will not be including the 'py' extension
|
||||
in my examples, I will simply assume that you know to add it if your
|
||||
OS requires it.
|
||||
From this point forward, I will not be including the directory name or
|
||||
the extension in my examples. I will simply assume that you know to
|
||||
add the correct extension as demanded by your operating system.
|
||||
|
||||
|
||||
BUILDING PANDA: QUICK START
|
||||
|
||||
The easy way to build panda is to type:
|
||||
|
||||
makepanda --default
|
||||
makepanda --everything
|
||||
|
||||
This will compile panda with all the default options. The default is
|
||||
to compile every feature, every subsystem, and every tool that can
|
||||
possibly be built. It can take several hours, depending on the speed
|
||||
of your machine.
|
||||
This will compile panda with all the features. It can take several
|
||||
hours, depending on the speed of your machine.
|
||||
|
||||
The resulting copy of panda will be found in a subdirectory 'built'
|
||||
inside the source tree. You can invoke panda programs directly out of
|
||||
@ -45,7 +44,7 @@ If you choose to do so, you must first copy the subdirectories
|
||||
and 'direct/src' into 'built/direct/src'.
|
||||
|
||||
|
||||
BUILDING PANDA: COMMAND-LINE OPTIONS
|
||||
MAKEPANDA COMMAND-LINE OPTIONS
|
||||
|
||||
The default invocation of makepanda is a good way to test panda on
|
||||
your machine. However, it compiles several features that you probably
|
||||
@ -60,74 +59,89 @@ it will show you the available command-line options:
|
||||
--optimize X (optimization level can be 1,2,3,4)
|
||||
--thirdparty X (directory containing third-party software)
|
||||
--complete (copy models, samples, direct into the build)
|
||||
--no-installer (don't bother building the executable installer)
|
||||
--installer (build an executable installer)
|
||||
--v1 X (set the major version number)
|
||||
--v2 X (set the minor version number)
|
||||
--v3 X (set the sequence version number)
|
||||
--lzma (use lzma compression when building installer)
|
||||
|
||||
--no-zlib (disable the use of ZLIB)
|
||||
--no-png (disable the use of PNG)
|
||||
--no-jpeg (disable the use of JPEG)
|
||||
--no-tiff (disable the use of TIFF)
|
||||
--no-vrpn (disable the use of VRPN)
|
||||
--no-fmod (disable the use of FMOD)
|
||||
--no-nvidiacg (disable the use of NVIDIACG)
|
||||
--no-helix (disable the use of HELIX)
|
||||
--no-nspr (disable the use of NSPR)
|
||||
--no-openssl (disable the use of OPENSSL)
|
||||
--no-freetype (disable the use of FREETYPE)
|
||||
--no-fftw (disable the use of FFTW)
|
||||
--no-miles (disable the use of MILES)
|
||||
--no-maya5 (disable the use of MAYA5)
|
||||
--no-maya6 (disable the use of MAYA6)
|
||||
--no-max5 (disable the use of MAX5)
|
||||
--no-max6 (disable the use of MAX6)
|
||||
--no-max7 (disable the use of MAX7)
|
||||
--use-zlib --no-zlib (enable/disable use of ZLIB)
|
||||
--use-png --no-png (enable/disable use of PNG)
|
||||
--use-jpeg --no-jpeg (enable/disable use of JPEG)
|
||||
--use-tiff --no-tiff (enable/disable use of TIFF)
|
||||
--use-vrpn --no-vrpn (enable/disable use of VRPN)
|
||||
--use-fmod --no-fmod (enable/disable use of FMOD)
|
||||
--use-nvidiacg --no-nvidiacg (enable/disable use of NVIDIACG)
|
||||
--use-helix --no-helix (enable/disable use of HELIX)
|
||||
--use-nspr --no-nspr (enable/disable use of NSPR)
|
||||
--use-openssl --no-openssl (enable/disable use of OPENSSL)
|
||||
--use-freetype --no-freetype (enable/disable use of FREETYPE)
|
||||
--use-fftw --no-fftw (enable/disable use of FFTW)
|
||||
--use-miles --no-miles (enable/disable use of MILES)
|
||||
--use-maya5 --no-maya5 (enable/disable use of MAYA5)
|
||||
--use-maya6 --no-maya6 (enable/disable use of MAYA6)
|
||||
--use-max5 --no-max5 (enable/disable use of MAX5)
|
||||
--use-max6 --no-max6 (enable/disable use of MAX6)
|
||||
--use-max7 --no-max7 (enable/disable use of MAX7)
|
||||
|
||||
--no-nothing (don't use any of the third-party packages)
|
||||
--default (use default options for everything not specified)
|
||||
--nothing (disable every third-party lib)
|
||||
--everything (enable every third-party lib)
|
||||
|
||||
Makepanda shows you all the available options, not all of which may be
|
||||
relevant to your operating system. For example, makepanda can build a
|
||||
plugin for 3D Studio Max 5. However, there is no 3D Studio Max for
|
||||
linux, so the option --no-max5 is largely irrelevant under Linux.
|
||||
Linux, so the option --use-max5 is irrelevant under Linux.
|
||||
|
||||
|
||||
SELECTING PANDA FEATURES
|
||||
|
||||
Panda contains a large number of optional features. For example, if
|
||||
panda is compiled with PNG support, then panda will be able to load
|
||||
textures from PNG image files.
|
||||
|
||||
Some of these features require the use of bulky third-party libraries.
|
||||
For example, 'helix' is a streaming video library from real networks.
|
||||
If you do not plan on using streaming video in your 3D world, then
|
||||
you may be interested in compiling panda without helix. This will
|
||||
shave several megabytes off of the panda libraries.
|
||||
|
||||
To select panda features, you need to specify one of two different
|
||||
command-line options:
|
||||
|
||||
makepanda --everything
|
||||
makepanda --nothing
|
||||
|
||||
You can follow either of these with a list of specific exceptions.
|
||||
For example, you can say:
|
||||
|
||||
makepanda --everything --no-helix --no-openssl
|
||||
makepanda --nothing --use-zlib --use-png
|
||||
|
||||
Note that 'makepanda' is a new tool. The panda3d team has not had
|
||||
time to test all the options. It is very likely that several do not
|
||||
work. However, we have thoroughly tested the --default configuration,
|
||||
which works flawlessly on the machines we own.
|
||||
time to test every combination of options. It is likely that most
|
||||
combinations do not work. The only combination we can vouch for at
|
||||
this time is '--everything'. In the next release, we hope to be able
|
||||
to vouch for a large number of different combinations.
|
||||
|
||||
The options you are most likely to be interested in are:
|
||||
|
||||
--no-installer: Under Windows, makepanda builds an installer --- a
|
||||
neatly packaged EXE file containing a panda distribution. This takes
|
||||
time and disk space, and you probably don't need to build your own
|
||||
installer. This option is only relevant under Windows.
|
||||
USING YOUR OWN LIBRARIES
|
||||
|
||||
--no-helix: Helix is realmedia's library of subroutines for playing
|
||||
realvideo files, realaudio files, and streaming video and audio. It's
|
||||
a large library, and unless you're planning on using this feature, you
|
||||
might be able to shave several megabytes off your panda tree. This
|
||||
option is only relevant under Windows.
|
||||
Panda3D uses a number of third-party libraries: libpng, libjpeg,
|
||||
openssl, etc. If you are using a Unix variant, many of these
|
||||
libraries come with the operating system. Panda3D will use these
|
||||
OS-supplied libraries where possible, so if your OS comes with a copy
|
||||
of libpng, Panda3D uses that.
|
||||
|
||||
--no-openssl: Panda3D can download resources from encrypted websites.
|
||||
Again, this is a large library, and unless you're planning on using
|
||||
this feature, you might be able to shave several megabytes off your
|
||||
panda tree. This option is much less useful under Linux, where openssl
|
||||
is normally provided as a shared library, and therefore doesn't really
|
||||
cost any disk space.
|
||||
For convenience, the panda source distribution includes precompiled
|
||||
copies of many of the third-party libraries. You will find these
|
||||
libraries in a subdirectory labeled 'thirdparty'. If you are happy
|
||||
with the versions we have provided, then you don't need to do anything
|
||||
special.
|
||||
|
||||
--thirdparty: Panda3D uses a number of third-party libraries: libpng,
|
||||
fftw, nspr, etc. Panda3D obtains these libraries from the host
|
||||
operating system where possible, so if your OS comes with a copy of
|
||||
libpng, Panda3D uses that. Those libraries which are not provided by
|
||||
the host operating system are included in the source tar-ball under a
|
||||
subdirectory 'thirdparty'. If you are not satisfied with the versions
|
||||
of the libraries we have provided, you may supply your own versions.
|
||||
To do so, duplicate the 'thirdparty' tree, substitute your own
|
||||
libraries, and then use the --thirdparty option to point makepanda to
|
||||
your libraries.
|
||||
If you are not satisfied with the versions of the libraries we have
|
||||
provided, you may supply your own versions. To do so, duplicate the
|
||||
'thirdparty' tree, substitute your own libraries, and then use
|
||||
the --thirdparty option to point makepanda to your libraries.
|
||||
|
||||
|
||||
THE EDIT-COMPILE-DEBUG CYCLE
|
||||
@ -147,11 +161,11 @@ It is all too easy to accidentally invoke 'makepanda' with the wrong
|
||||
options, thereby triggering an hour-long recompilation. To avoid this
|
||||
situation, we recommend that you write a short script containing the
|
||||
options you intend to use regularly. For example, I regularly compile
|
||||
panda without helix and without the installer. I have a very short
|
||||
Windows BAT file called "mkp.bat" that looks like this:
|
||||
panda without helix. I have a very short Windows BAT file called
|
||||
"mkp.bat" that looks like this:
|
||||
|
||||
@echo off
|
||||
makepanda --no-installer --no-helix
|
||||
makepanda --everything --no-helix
|
||||
|
||||
This helps me avoid accidentally typing makepanda with the wrong
|
||||
options.
|
||||
@ -164,10 +178,10 @@ panda3d sources.
|
||||
|
||||
BUILDING THE SOURCE TAR-BALL AND THE RPM
|
||||
|
||||
If you want to build an RPM, it is fairly easy to do so. First, you
|
||||
need a panda source tar-ball. If you do not already have one, build
|
||||
one using 'maketarball.py'. You will need to specify a version
|
||||
number.
|
||||
If you are using Linux and you want to build an RPM, it is fairly easy
|
||||
to do so. First, you need a panda source tar-ball. If you do not
|
||||
already have one, build one using 'maketarball.py'. You will need to
|
||||
specify a version number.
|
||||
|
||||
maketarball.py --v1 58 --v2 23 --v3 95
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user