Flux multi-user server: Difference between revisions

The educational technology and digital learning wiki
Jump to navigation Jump to search
Line 3: Line 3:
== Definition ==
== Definition ==


Flux multi-user server (alis Hydra) is ''Open Virtual Worlds Web Server'' made by [http://www.mediamachines.com/ Media Machines]. Currently in alpha/early beta - 15:54, 6 July 2007 (MEST)
Flux multi-user server (alis Hydra) is ''Open Virtual Worlds Web Server'' made by [http://www.mediamachines.com/ Media Machines]. Currently in alpha/early beta - 17:13, 6 July 2007 (MEST)


== Installation ==
== Installation ==
[[User:Daniel K. Schneider|Daniel K. Schneider]] on his personal Linux Desktop (Ubuntu 6.10)


=== Downlods ===
=== Downlods ===
Line 11: Line 13:
# Get the [http://www.hawksoft.com/hawknl/  Hawk Network Library version 1.7 by Phil Frisbie] (LGPL). You can find it in the downloads section.
# Get the [http://www.hawksoft.com/hawknl/  Hawk Network Library version 1.7 by Phil Frisbie] (LGPL). You can find it in the downloads section.
# Get [http://www.mediamachines.com/hydra/ Hydra], Flux Multi-User
# Get [http://www.mediamachines.com/hydra/ Hydra], Flux Multi-User
# Get MySQL development libraries
# Also install [http://www.mediamachines.com/make.php Flux Player 2.1] if you don't have it already.
# Also install [http://www.mediamachines.com/make.php Flux Player 2.1] if you don't have it already.


=== Preparation of installation ===
=== Preparation of installation ===


Currently (July 2007) you have to compile it yourself.  
; MySQL
 
* Install MySQL '''and''' the development libararies !
* Use Synaptic Package Manger or apt-get and install these
I took:
mysql-server
libmysqlclient15-dev
 
If don't want to type command-lines to mysql, you also may want to install a mysql administration client. I took:
mysqladmin
 
This tool then will show up under Applications/Systems tools. First time you connect you can use 'root' without password.


; Hydras (files)
; Hydras (files)
Currently (July 2007) you have to compile Hydras and HawkNL it yourself.


* unzip into a folder, e.g. I used
* unzip into a folder, e.g. I used
  /usr/local/flux/hydra
  /usr/local/flux/hydra


* I also suggest to make a change to scenemodel.c
Change line 51 from:
(&hydra_db, "localhost", "user", "password", "database", 0, NULL, 0) != NULL);
to:
  (&hydra_db, "localhost", "hydrausr", "SECRET", "hydra", 0, NULL, 0) != NULL);
; HawkNL
; HawkNL


Line 51: Line 71:
; Hydras
; Hydras


* On Windows, load the hydras.sln or hydrac.sln solution files into MSVC 2003 or later
* On Windows, load the hydras.sln or hydrac.sln solution files into MSVC 2003 or later (not tested)
* On (Red Hat) Linux, run make on the Makefile with gcc installed.
* On Linux (I used Ubuntu) run make on the Makefile with gcc installed.


  cd hydra
  cd hydra
  make
  make


Then read forums and stuff on the web ... will try later to finish this install - [[User:Daniel K. Schneider|Daniel K. Schneider]] 15:54, 6 July 2007 (MEST)
Result:
gcc -I/usr/include/mysql -DUSE_MYSQL -c scenemodel.c
gcc -I/usr/include/mysql -DUSE_MYSQL -c netcontroller.c
gcc -c netview.c
gcc -c -ggdb swamp.c
gcc -o hydras -pthread hydras.o clients.o scenemodel.o netcontroller.o  netview.o swamp.o ../HawkNL/src/libNL.a -I/usr/include/mysql -L/usr/lib/mysql -lmysqlclient
gcc -c -ggdb hydrac.c
gcc -o hydrac -pthread hydrac.o swamp.o ../HawkNL/src/libNL.a
hydrac.o: In function `printErrorExit':
/usr/local/flux/hydra/hydrac.c:76: warning: the `gets' function is dangerous and should not be used.
make: *** No rule to make target `hydrabot', needed by `all'.  Stop.
 
Then read forums and stuff on the web ... will try later to finish this install - [[User:Daniel K. Schneider|Daniel K. Schneider]] 17:13, 6 July 2007 (MEST)
 
=== MysSQL database ===
 
I used the command line since I couldn't figure out how to use the GUI ;)
mysql -p
 
* You have to create a hydra_db databse called <code>hydra</code>
 
mysql> create database hydra;
 
* Then create the user called hydrausr (change secret of course)
 
mysql> create user hydrausr identified by 'secret';
 
* Then give it rights to the hydra database
mysql > GRANT SELECT,INSERT,UPDATE,DELETE,CREATE,DROP ON hydra.* TO 'hydrausr'@'localhost';
 
* Then reload the privileges
mysql > flush privileges;
 
=== Run it ===
 
Type: hypdras
./hydras
 
You may see:
port is 13214
url is http://worlds.webers.org/content/testbed/
connected to database


== Links ==
== Links ==
Line 66: Line 127:
; Help for installation
; Help for installation


* [http://planet-earth.org/smam/fluxServerInstallRun.html Experience installing, compiling and running Flux server and client]
* [http://planet-earth.org/smam/fluxServerInstallRun.html Experience installing, compiling and running Flux server and client] by DragonMage, really useful !
* [http://community.mediamachines.com/categories.php Developer Forums]
* [http://community.mediamachines.com/categories.php Developer Forums]


[[Category: Technologies]]
[[Category: Technologies]]
[[Category: Virtual environments]]
[[Category: Virtual environments]]

Revision as of 17:13, 6 July 2007

Draft

Definition

Flux multi-user server (alis Hydra) is Open Virtual Worlds Web Server made by Media Machines. Currently in alpha/early beta - 17:13, 6 July 2007 (MEST)

Installation

Daniel K. Schneider on his personal Linux Desktop (Ubuntu 6.10)

Downlods

  1. Get the Hawk Network Library version 1.7 by Phil Frisbie (LGPL). You can find it in the downloads section.
  2. Get Hydra, Flux Multi-User
  3. Get MySQL development libraries
  4. Also install Flux Player 2.1 if you don't have it already.

Preparation of installation

MySQL
  • Install MySQL and the development libararies !
  • Use Synaptic Package Manger or apt-get and install these

I took:

mysql-server
libmysqlclient15-dev

If don't want to type command-lines to mysql, you also may want to install a mysql administration client. I took:

mysqladmin

This tool then will show up under Applications/Systems tools. First time you connect you can use 'root' without password.

Hydras (files)

Currently (July 2007) you have to compile Hydras and HawkNL it yourself.

  • unzip into a folder, e.g. I used
/usr/local/flux/hydra
  • I also suggest to make a change to scenemodel.c

Change line 51 from:

(&hydra_db, "localhost", "user", "password", "database", 0, NULL, 0) != NULL);

to:

 (&hydra_db, "localhost", "hydrausr", "SECRET", "hydra", 0, NULL, 0) != NULL);
HawkNL
  • Put it in a folder named "HawkNL" at the same level as the folder containing the Hydra sources. E.g. I used
/usr/local/flux/HawkNL
 unzip HawkNL17b1src.zip [-d "flux directory"]
 cd "flux directory"
 ln -s HawkNL1.70 HawkNL
Result is something like this
/usr/local/flux
lrwxrwxrwx  1 root root   10 2007-07-06 15:28 HawkNL -> HawkNL1.70
drwxr-xr-x  7 root root 4096 2007-07-06 15:27 HawkNL1.70
drwxr-xr-x  2 root root 4096 2007-07-06 15:40 hydra
drwxr-xr-x  2 root root 4096 2007-07-06 15:39 src

Compilation

HawNL
 cd HawkNL
 make -f makefile.linux
 make -f makefile.linux install

It will also copy the libraries in /usr/local/lib and header to /usr/local/include/nl.h

Hydras
  • On Windows, load the hydras.sln or hydrac.sln solution files into MSVC 2003 or later (not tested)
  • On Linux (I used Ubuntu) run make on the Makefile with gcc installed.
cd hydra
make

Result:

gcc -I/usr/include/mysql -DUSE_MYSQL -c scenemodel.c
gcc -I/usr/include/mysql -DUSE_MYSQL -c netcontroller.c
gcc -c netview.c
gcc -c -ggdb swamp.c
gcc -o hydras -pthread hydras.o clients.o scenemodel.o netcontroller.o  netview.o swamp.o ../HawkNL/src/libNL.a -I/usr/include/mysql -L/usr/lib/mysql -lmysqlclient
gcc -c -ggdb hydrac.c
gcc -o hydrac -pthread hydrac.o swamp.o ../HawkNL/src/libNL.a
hydrac.o: In function `printErrorExit':
/usr/local/flux/hydra/hydrac.c:76: warning: the `gets' function is dangerous and should not be used.
make: *** No rule to make target `hydrabot', needed by `all'.  Stop.

Then read forums and stuff on the web ... will try later to finish this install - Daniel K. Schneider 17:13, 6 July 2007 (MEST)

MysSQL database

I used the command line since I couldn't figure out how to use the GUI ;)

mysql -p
  • You have to create a hydra_db databse called hydra
mysql> create database hydra;
  • Then create the user called hydrausr (change secret of course)
mysql> create user hydrausr identified by 'secret';
  • Then give it rights to the hydra database
mysql > GRANT SELECT,INSERT,UPDATE,DELETE,CREATE,DROP ON hydra.* TO 'hydrausr'@'localhost';
  • Then reload the privileges
mysql > flush privileges;

Run it

Type: hypdras

./hydras

You may see:

port is 13214
url is http://worlds.webers.org/content/testbed/
connected to database

Links

Mediamachines
Help for installation