Go to file
Maarten Gribnau efb524d53f Rewired python for OSX. The Makefiles now use the Python that comes with OSX
in /usr/local.
mxTextTools is still disabled because of a link error.
Maarten
2002-12-21 22:26:46 +00:00
extern/ode/dist Another small fix to ode: 2002-11-04 21:55:48 +00:00
intern Shrunk the hack so it didn't get used in newer versions of OpenAL which 2002-12-20 19:27:39 +00:00
projectfiles OSX Project Builder project for makes_dna, blender and player targets. 2002-12-13 21:34:52 +00:00
source Rewired python for OSX. The Makefiles now use the Python that comes with OSX 2002-12-21 22:26:46 +00:00
COPYING Ok were getting somewhere here ;) 2002-11-15 06:57:59 +00:00
README Added a link for where to get glut 2002-12-20 09:52:45 +00:00

Welcome to the fun world of open-source.

This file is to help you get started using the source and will hopefully
answer most questions.

Here are some links to external packages you may or maynot need:

openssl:  http://www.openssl.org
python:  http://www.python.org
mxtexttools:http://www.egenix.com/files/python/mxTextTools.html (python lib)
libjpeg:  http://www.ijg.org/
libpng:  http://www.libpng.org/pub/png/
zlib:   http://www.gzip.org/zlib/
ode:	http://q12.org/ode/ode.html
openal:  http://www.openal.org/home/		(for linux/windows)
	sdl: http://www.libsdl.org/index.php (for openal)
	smpeg: http://www.lokigames.com/development/smpeg.php3 (for openal)
fmod: http://www.fmod.org/

mozilla: http://www.mozilla.org/
nspr:  ftp://ftp.mozilla.org/pub/nspr/releases
	(side note: on debian linux you will need mozilla-dev and libnspr-dev)

glut:	http://www.opengl.org/developers/documentation/glut.html

If you do not have GL you will also need mesa:
mesa:	http://www.mesa3d.org

*********************************************************************
*********************************************************************
We are in the process of moving things over to automake/autoconf
The old makefiles are still in place and will work.  
If you want to get a working blender skip down to the next section 
and use this readme as a guide.

If you want to play with the new autoconf environment take a look at 
doc/autoconfig.txt

*********************************************************************
*********************************************************************

--Notes on compiling mxTextTools----------------------------------------------
To get the latest version to compile on my machine I had to
edit mxSetup.py and remove /usr/include from INCLPATH for it to build
properly.
(after doing this you need to edit blender/source/Makefile and
fix the pointer to it I'm still working on automating this)

--------------Basic Makefile TIPS---------------------------------------
Assuming you are using tcsh/csh do the following before compiling.
#Set this to wherever you have extracted the source.
setenv NANBLENDERHOME `pwd`
setenv MAKEFLAGS "-w -I$NANBLENDERHOME/source"

Or for bash/sh do this:
NANBLENDERHOME=`pwd`
export NANBLENDERHOME
MAKEFLAGS="-w -I$NANBLENDERHOME/source"
export MAKEFLAGS

Then edit source/nan_definitions.mk to fit you're environment.
(You'll want to change things like NAN_OPENSSL,NAN_JPEG, NAN_PNG etc.. 
to point to where you have it installed)

If you want to integrate the game-engine in Blender, you might want
to uncomment the following line in nan_compile.mk:
#CFLAGS += -DGAMEBLENDER=1
The define is disabled by default because there still are still some
problems with this at the moment.

If you tried to just have a go at making stuff you might wind up with
an empty file /tmp/.nanguess
You need to remove the empty file and it will get created automatically
by $NANBLENDERHOME/source/tools/guess/guessconfig after you have 
setup the NANBLENDERHOME variable.

After that cd $NANBLENDERHOME/intern 
make
make install

cd $NANBLENDERHOME/source/ode
Look at the README_BLENDER and follow instructions

Then cd $NANBLENDERHOME/source
make

If you have any problems with the above post a message to the Forums on
www.blender.org
----------------------WINDOWS TIPS--------------------------------------
If you have any problems with the above post a message to the Forums on
www.blender.org


----------------------Mac OSX TIPS--------------------------------------
When building Blender on OSX you have three choices:
METHOD 1. Build using the old NaN Makefiles.
METHOD 2. Build using the new automake/autoconf files
METHOD 3. Use the Project Builder project

METHOD 1 and 3
The first 4 steps are th same for methods 1 and 3. Only the actual Blender 
build step number 5 is different.

Step1:
If you want to follow method 1 and 3, follow the instructions above to set the
environment variables. You don't need to edit the Makefiles. They should work
out of the box in combinations with some external libraries that should be on
your system in a fixed location. 

Step 2:
You can use the package installer fink (http://fink.sourceforge.net/) for some
of the external libraries:
1. openssl (fink install openssl)
2. jpeg    (fink install jpeg)
3. png     (fink install png)

Step 3:
The rest of the external libraries are present in CVS in binary format so you
don't have to download them. Precompiled libraries are found in CVS in 
directory:
$NANBLENDERHOME/lib/darwin-6.1-powerpc
If you are not running on a darwing kernel 6.1 (which is likely if you auto-
update your system, you might want to add a symbolic link in the 
$NANBLENDERHOME/lib/ directory. For example, if you work on a 6.2 kernel:
ln -s darwin-6.1-powerpc darwin-6.2-powerpc

Step 4: 
Start the build process by building Blender's "intern" libraries. Navigate to 
$NANBLENDERHOME/intern and type make. This will build the intern libaries which
will be installed into the $NANBLENDERHOME/lib/darwin-6.1-powerpc (thanks to 
the symbolic link).
Now you can choose how to build Blender itself; using the Makefiles or the 
Project Builder project.

Step 5 METHOD 1:
Navigate to $NANBLENDERHOME/source and type make. 

Step 5 METHOD 3:
The project Builder project can be found in the directory:
$NANBLENDERHOME/projectfiles/pb_2_0_1
Start Project Builder open the blender.pbproj project, choose a target (blender
or player) and build.

Step 6:
Although the Makefiles in the intern directory run ranlib on the libraries 
built, the gcc linker complains about ranlib not being run. Until there is a
solution, you will need to run ranlib by hand once in a while when the make 
breaks. Luckily, the error message lists the full path of the file to run 
ranlib on... Anybody out there with a real solution? I guess the problem arises
from copying the files from one location to the other...


BUILDING EXTERNAL LIBRARIES
If you don't want to use the precompiled libraries you can download and/or
build them yourself. Here are some directions.

PYHON:
Mac OSX 10.2 (Jaguar) now comes with Python (2.2.1) pre-installed. This is fine
for producing the "frozen" Python code found in the intern directory. However,
the installation does not contain the python library to link against (at least
I could not find it). You could use fink to install Python but that Python 
installation depends on X being installed and that is a large installation.

If you prefer the easy way: download Python 2.2.2 from http://www.python.org.
Follow the instructions to in the documentation to install it on your box. If
you run OSX 10.2 it should install just fine. Basically a configure and a 
"make" will do the job. The result is a Python library that should be copied to
the library tree together with the associated header files.

Create the following  directories:
$NANBLENDERHOME/lib/darwin-6.1-powerpc/python/include/python2.2
$NANBLENDERHOME/lib/darwin-6.1-powerpc/python/lib/python2.2/config
Now copy the include files and the libpython2.2.a library to those locations.

FMOD:
Download FMOD from http://www.fmod.org/ and unpack with StuffIt Expander. The
archive contains header files and a library. Copy those to these directories
(that you need to create first):
$NANBLENDERHOME/lib/darwin-6.1-powerpc/fmod/include
$NANBLENDERHOME/lib/darwin-6.1-powerpc/fmod/lib

ODE:
Ode is currently included in the source tree of Blender. This might change in
the close future. But for now you don't need to download Ode.
If you want to build ODE yourself, you'll have to edit a config file of ODE first.
go to $NANBLENDERHOME/source/ode/config and edit the file "user-settings" so 
that platform is equal to osx (PLATFORM=osx).

Success!