This is the offical compilation website, that will fix most problems.
1) download the code
2) put it in your root directory
3) add the env variables in nebula/INSTALL to your .bashrc
4) modfy the one variable (nebulahome) to the correct location
5) cd nebula/code/src
6) tclsh updsrc.tcl
7) make
8) go
It should load, if you have a problem check the nebula compilation instructions, and attempt to do the things they say.
If you have a problem, check my list below and if not then
If you have a problem and fix it email me the fix and I will add it to this website for others.s
Most problems come from tcl/tk, and their library files.
Make sure you have tcl8.4.4 compiled and set up right.
complains about multiple conversions for operator [] - visual studio is stupid...if you are using a vector class or something with operator [] (nArray) and you pass it something other then an int it will really complain. Just typecast in interior -> array[(int) i] and it should be happy.
cannot find d3d8.h - install the DXSDK - from microsoft.com and make sure to include c:\DXSDK\include,lib into options-directories-include/lib
It complains about lxinputserver
lxinputserver is the server for linux, that is set in go.tcl
edit nebula/data/scripts/go.tcl
replace
new nlxinputserver input
with
new ndi8server input
You can also replace nopenglserver with nd3d8server to use directx instead of opengl.
In future versions I will fix this problem in script.
make sure tcl84.dll, tclpip.dll, tk84.dll and devil.dll, ill.dll, ilu.dll, ilut.dll are all under nebula/bin/win & nebula/bin/win32
if one of these is missing it will be unable to create the opengl/d3d8 server, complaining that it cannot load the module
tclsh84 must be in your path, in visual c++ make sure tcl/bin is in under options-directories-executables.
It outputs 10000 loading module lines and then crashes - In a .pak file a class ordered before a class that it inherits from, so if you have setmodules { nthing nroot } It will cause an infinite recursion - Took my like 6 hours of parsing ridiculously obscure functions in the debugger to identify.
Windows CANNOT handle cyclic dependencies when creating dlls.
If dll A uses something from B, and B uses something from A, you are stuck - Merge them into a single dll. Note any usage is enough to break visual c++, such as a single function call.
Complains about tclsh84, make sure it is inside your path.
Make sure to properly copy the info in nebula/INSTALL into your .bashrc
Complains about lammpio
1) get the latest version of the code from my website ( fixes this problem ).
2) OR go into nebula/code/defines.mak and find the 3 lines after the MPI comment, comment them out / erase them.
Runs REALLY REALLY slow.
Your computer is not using its video card, it is probably using Mesa. Go to your cards website and get linux drivers. Follow the instructions precisely (they aren't hard, but dont miss any), and meticulously and it should install smoothly.
Complains about linpng, newer versions of linuxd come newer versions then it expects.
cd nebula/bin/linuxd
ln -s /usr/lib/libpng.s0.3 libpng.so.2
use locate to find the actual libpng you have, and be sure to link it under the filename it expects