Welcome to the Second Life Forums Archive

These forums are CLOSED. Please visit the new forums HERE

3D Space Navigator Support?

Nexus Chemistry
Registered User
Join date: 6 Jun 2008
Posts: 14
06-20-2008 12:01
I just bought a 3D Space Navigator, thinking that since there were linux drivers on the manufacturer's website, and what appeared to be input/joystick support in the preferences of Second Life, that it would be supported. I am saddened to learn that I must boot into the horrid Windows if I wish to smoothly fly with comfort throughout Second Life.

Will this ever be supported in linux?
Armin Weatherwax
Registered User
Join date: 4 Jan 2008
Posts: 71
06-20-2008 13:53
Hi Nexus,

at the moment the only things you can do about this are:
1) vote for http://jira.secondlife.com/browse/VWR-5297
2) convince your friends to vote for http://jira.secondlife.com/browse/VWR-5297
3) program the missing piece yourself
4) convince your friends to program the missing piece
5) use that wonderful hardware with that ... er ...different ... operating system
6) sell it at ebay and get something which is working for real with linux (for example there are graphic tablets which are working very well with linux; of course thats a completely different input method compared to a spacenavi and maybe a completely useless hint)
7) be happy to have one of the coolest blue glowing designer paper-weights in the world

er ... well ...I liked to see my Spacenavi to work with something else than the xcube demo program which comes with it, too. Neither the blender patch looks convincing nor using it with the gimp does. A google earth and/or SL support would ... non-FOSS-programs-users might add different points of view here.

*fitting emote*
Armin
Yan Swindlehurst
Registered User
Join date: 28 Sep 2007
Posts: 5
Joystick support
07-03-2008 18:12
I have added joystick support for Linux, please vote for bug:
http://jira.secondlife.com/browse/VWR-5297

SpaceNavigator will follow once I am back from vacation in late July.
Yan Swindlehurst
Registered User
Join date: 28 Sep 2007
Posts: 5
SpaceNavigator is supported now
08-03-2008 10:31
SpaceNavigator works with the patch attached to the JIRA entry above. Feel free to test and report issues on JIRA.
Opensource Obscure
Hide UI
Join date: 5 Jun 2008
Posts: 115
08-19-2008 06:12
Yan Swindlehurst, a big THANKS for your patch - and thanks also to other residents that are giving feedback and help to get Spacenavigator working on Second Life - Linux. I hear that these devices are REALLY good for using Second Life, and they are getting even more affordable. I ordered my Spacenavigator after seeing Yan's patch and now I'm waiting for shipping.

I tried to apply Yan's patch, but I'm confused about the first step:
"Compile the .c file into a static lib libndofdev.a"

(I apologize for following lameness, I'm not a dev.)

I tried:
c++ ndofdev.c
g++ ndofdev.c
cc ndofdev.c
gcc ndofdev.c

all of them gave the same error (right now I can't paste it here)

I guess I should do something different .. or doing it in a different location inside the source tree maybe (where?).

Also: which release sources should I start from?
Boroondas Gupte
Registered User
Join date: 16 Sep 2005
Posts: 186
Rebuilding still required?
12-24-2008 19:06
Does anybody know if it's still required to build the viewer from source to have Space Navigator support on linux? I'm using the current RC (1.22.4.106127).
Tofu Linden
Linden Lab Employee
Join date: 29 Aug 2006
Posts: 471
01-06-2009 16:30
Yes, if I remember correctly, SpaceNavigator Linux support isn't in viewers earlier than 1.23. So it's on the 'trunk' but still percolating through to an official Linden release.
Nexus Chemistry
Registered User
Join date: 6 Jun 2008
Posts: 14
01-06-2009 23:57
I would LOVE to get this working, but I'm a linux newbie. I tried following http://www.aaue.dk/~janoc/index.php?n=Personal.3DConnexionSpaceNavigatorSupport up to the point of building SL, but I don't know how. Much less anything about SConstruct.

Anyone willing to make a step-by-step? I'm sick of using Windows. :( Long live Ubuntu! (and all linux)
Boroondas Gupte
Registered User
Join date: 16 Sep 2005
Posts: 186
01-07-2009 07:36
Yay, I finally managed to compile the viewer from source (for the first time since the switch to CMake). Big thanks to the SLDev mailing list and the documenters of the imprudence viewer. Flycam still needs some time to get used to, but looks promising.
From: Nexus Chemistry
I would LOVE to get this working, but I'm a linux newbie. I tried following http://www.aaue.dk/~janoc/index.php?n=Personal.3DConnexionSpaceNavigatorSupport up to the point of building SL, but I don't know how. Much less anything about SConstruct.

Anyone willing to make a step-by-step? I'm sick of using Windows. :( Long live Ubuntu! (and all linux)

You don't need SConstruct, but rather CMake for recent versions of the viewer (this includes current trunk on svn). Following the switch from SConstruct to CMake, the documentation is in a state of transition. All relevant pages should be linked on http://wiki.secondlife.com/wiki/Get_source_and_compile , but they might be redundant, contradict each other or just be incomplete or out of date.

Your chances are probably best when following http://wiki.secondlife.com/wiki/User:Michelle2_Zenovka/cmake . Be sure to use the SVN method to get the source, if you want the relevant changes for Space Navigator support. The steps at http://www.aaue.dk/~janoc/index.php?n=Personal.3DConnexionSpaceNavigatorSupport#secondlife are no longer needed, as Jan's patch is now merged into trunk. Though, you'll still have to do the steps above that (giving your linux user account access to the device). Also, I had to hand-edit the last of the g++ command lines generated by CMake. (see https://lists.secondlife.com/pipermail/sldev/2009-January/012561.html )
Nexus Chemistry
Registered User
Join date: 6 Jun 2008
Posts: 14
01-07-2009 08:04
Thanks for the references, will surely check them out later today.
Nexus Chemistry
Registered User
Join date: 6 Jun 2008
Posts: 14
01-07-2009 22:25
Had an error on the ./develop.py build command for the 1.22.5-r107013 svn.


From: someone

Linking CXX static library libllui.a
make[2]: Leaving directory `/home/acidicchip/bin/sl/trunk/indra/viewer-linux-i686-relwithdebinfo'
[ 44%] Built target llui
make[1]: Leaving directory `/home/acidicchip/bin/sl/trunk/indra/viewer-linux-i686-relwithdebinfo'
make: *** [all] Error 2
make: Leaving directory `/home/acidicchip/bin/sl/trunk/indra/viewer-linux-i686-relwithdebinfo'
Error: the command 'make' exited with status 2
acidicchip@acidicmobile:~/bin/sl/trunk/indra$
Armin Weatherwax
Registered User
Join date: 4 Jan 2008
Posts: 71
01-08-2009 01:50
random guess: do you use cmake 2.4.8 ? If not try that (might be some google work to find though).
Another thing: if you want the spacenavi support without having to apply the patch from VWR-5297 then choose the source from trunk or branches/maint-viewer.
Armin Weatherwax
Registered User
Join date: 4 Jan 2008
Posts: 71
01-08-2009 04:01
From: Tofu Linden
Yes, if I remember correctly, SpaceNavigator Linux support isn't in viewers earlier than 1.23. So it's on the 'trunk' but still percolating through to an official Linden release.

Tofu, does one of your inofficial test builds of 1.22 already contain the spacenavi support - even if done for a different purpose?
Boroondas Gupte
Registered User
Join date: 16 Sep 2005
Posts: 186
01-08-2009 07:36
From: Nexus Chemistry
Had an error on the ./develop.py build command for the 1.22.5-r107013 svn.
I can't see the actual error message, maybe it was somewhere before the posted part of the output? Strangely it reports a successful step afterwards ("[ 44%] Built target llui";).

If you have to run the build step again, to get the full error message, also append VERBOSE=1, so you see the commands called by make, including the failing one:
./develop.py build VERBOSE=1

From: Armin Weatherwax
do you use cmake 2.4.8 ? If not try that
Versions >= 2.6.2 should work, too. Only 2.6.0 and 2.6.1 are to be avoided, as far as I know.

From: Armin Weatherwax
if you want the spacenavi support without having to apply the patch from VWR-5297 then choose the source from trunk or branches/maint-viewer.
ACK.
Armin Weatherwax
Registered User
Join date: 4 Jan 2008
Posts: 71
01-08-2009 09:07
From: Boroondas Gupte

Versions >= 2.6.2 should work, too. Only 2.6.0 and 2.6.1 are to be avoided, as far as I know.

I ran into linking issues about ndofdev using 2.6.2 since about 1 or 2 months ago. Downgrading to 2.4.8 solved that for me - didn't try 2.6.2 since then. Sure it works again ?
Karla Khondji
Registered User
Join date: 11 Mar 2007
Posts: 3
space navigator+linux newbie
01-08-2009 14:34
Hi,
could you speak french (lol) or clear english rather than chinese translated in binary japanese?
(escuse me for this message but it was only writed to make you understand that there is peoples who simply couldn't understand what you say...so please try to be more clear...Thanks)
Tofu Linden
Linden Lab Employee
Join date: 29 Aug 2006
Posts: 471
01-08-2009 15:34
From: Armin Weatherwax
Tofu, does one of your inofficial test builds of 1.22 already contain the spacenavi support - even if done for a different purpose?
I can't verify this right now, but I reckon the build in the sticky 'bleeding-edge viewer' thread above probably does.
Baloo Uriza
Debian Linux Helper
Join date: 19 Apr 2008
Posts: 895
01-08-2009 19:33
From: Karla Khondji
could you speak french (lol) or clear english rather than chinese translated in binary japanese?


Il existe un forum français disponibles, vous pouvez essayer de demander là-bas. Le poste que vous répondre à contenu technique, à savoir les noms de paquets sous Linux. Obtenir les insultes à ce sujet n'est pas susceptible de gagner les cœurs et les esprits tout, et ne sert qu'à renforcer les stéréotypes négatifs lorsque l'on parle français à un public essentiellement américain.
Boroondas Gupte
Registered User
Join date: 16 Sep 2005
Posts: 186
01-09-2009 01:46
From: Armin Weatherwax
I ran into linking issues about ndofdev using 2.6.2 since about 1 or 2 months ago. Downgrading to 2.4.8 solved that for me - didn't try 2.6.2 since then. Sure it works again ?
hmmm ... I might have had the same issue. Are we speaking of this one:
https://lists.secondlife.com/pipermail/sldev/2009-January/012559.html
?

I thought it was due to buggy *.cmake files, didn't consider the CMake version could matter. I "fixed" it (well, worked around) by the following procedure:

In the ./indra directory, run ./develop.py build VERBOSE=1 and see it fail.

cd into ./indra/viewer-linux-i686-relwithdebinfo/newview

take the failed command line and remove the fist -lndofdev, then run it manually.

cd back to ./indra

Run ./develop.py build again, and see it finish successfully.
Armin Weatherwax
Registered User
Join date: 4 Jan 2008
Posts: 71
01-09-2009 04:29
From: Boroondas Gupte

indeed - and thats what cmake 2.4.8 does not complain about.

To put it in less cryptical words for those who requested:
If you look at compiling the viewer yourself like if it was just an alternate (and slightly slower) method of installing the viewer, and you want to compile a viewer with spacenavigator support on linux without having to think about things that could go wrong, then use cmake 2.4.8.
If you think compiling the viewer isn't a thing you really want to do, then you'll have to wait for the spacenavigator support until (depending on how much in/stability is ok for you) an according bleeding-edge- or RC- or release- viewer is available.
Boroondas Gupte
Registered User
Join date: 16 Sep 2005
Posts: 186
01-09-2009 13:55
On the mailing list I was told that if CMake 2.6.2 didn't succeed to build trunk, it should be filed as a bug. So here it is:
http://jira.secondlife.com/browse/VWR-11474
As always: Vote for it, if you are affected by the issue.
Nexus Chemistry
Registered User
Join date: 6 Jun 2008
Posts: 14
01-12-2009 20:11
Here is the error I'm getting....

From: someone

/home/acidicchip/bin/sl/trunk/libraries/i686-linux/lib_release_client/libndofdev.a: In function `ndof_dump':
ndofdev.c:(.text+0x0): multiple definition of `ndof_dump'
/home/acidicchip/bin/sl/trunk/libraries/i686-linux/lib_release_client/libndofdev.a:ndofdev.c:(.text+0x0): first defined here
/home/acidicchip/bin/sl/trunk/libraries/i686-linux/lib_release_client/libndofdev.a: In function `ndof_dump_list':
ndofdev.c:(.text+0x5): multiple definition of `ndof_dump_list'
/home/acidicchip/bin/sl/trunk/libraries/i686-linux/lib_release_client/libndofdev.a:ndofdev.c:(.text+0x5): first defined here
/home/acidicchip/bin/sl/trunk/libraries/i686-linux/lib_release_client/libndofdev.a: In function `ndof_update':
ndofdev.c:(.text+0xa): multiple definition of `ndof_update'
/home/acidicchip/bin/sl/trunk/libraries/i686-linux/lib_release_client/libndofdev.a:ndofdev.c:(.text+0xa): first defined here
/home/acidicchip/bin/sl/trunk/libraries/i686-linux/lib_release_client/libndofdev.a: In function `ndof_libinit':
ndofdev.c:(.text+0x127): multiple definition of `ndof_libinit'
/home/acidicchip/bin/sl/trunk/libraries/i686-linux/lib_release_client/libndofdev.a:ndofdev.c:(.text+0x127): first defined here
/home/acidicchip/bin/sl/trunk/libraries/i686-linux/lib_release_client/libndofdev.a: In function `ndof_libcleanup':
ndofdev.c:(.text+0x13b): multiple definition of `ndof_libcleanup'
/home/acidicchip/bin/sl/trunk/libraries/i686-linux/lib_release_client/libndofdev.a:ndofdev.c:(.text+0x13b): first defined here
/home/acidicchip/bin/sl/trunk/libraries/i686-linux/lib_release_client/libndofdev.a: In function `ndof_create':
ndofdev.c:(.text+0x170): multiple definition of `ndof_create'
/home/acidicchip/bin/sl/trunk/libraries/i686-linux/lib_release_client/libndofdev.a:ndofdev.c:(.text+0x170): first defined here
/home/acidicchip/bin/sl/trunk/libraries/i686-linux/lib_release_client/libndofdev.a: In function `ndof_init_first':
ndofdev.c:(.text+0x184): multiple definition of `ndof_init_first'
/home/acidicchip/bin/sl/trunk/libraries/i686-linux/lib_release_client/libndofdev.a:ndofdev.c:(.text+0x184): first defined here
/home/acidicchip/bin/sl/trunk/libraries/i686-linux/lib_release_client/libndofdev.a:(.rodata+0x0): multiple definition of `SPACE_NAVIG_THRESHOLD'
/home/acidicchip/bin/sl/trunk/libraries/i686-linux/lib_release_client/libndofdev.a:(.rodata+0x0): first defined here
collect2: ld returned 1 exit status
make[2]: *** [newview/secondlife-bin] Error 1
make[2]: Leaving directory `/home/acidicchip/bin/sl/trunk/indra/viewer-linux-i686-relwithdebinfo'
make[1]: *** [newview/CMakeFiles/secondlife-bin.dir/all] Error 2
make[1]: Leaving directory `/home/acidicchip/bin/sl/trunk/indra/viewer-linux-i686-relwithdebinfo'
make: *** [all] Error 2
make: Leaving directory `/home/acidicchip/bin/sl/trunk/indra/viewer-linux-i686-relwithdebinfo'
Error: the command 'make' exited with status 2
acidicchip@acidicmobile:~/bin/sl/trunk/indra$ cmake --version
cmake version 2.6-patch 0
acidicchip@acidicmobile:~/bin/sl/trunk/indra$ make --version
GNU Make 3.81
Copyright (C) 2006 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.
There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A
PARTICULAR PURPOSE.

This program built for i486-pc-linux-gnu


Maybe I messed something up in the process?

They need to release this and the voice fix in the linux viewer already, I'm sick of having to rig it all the time.
Armin Weatherwax
Registered User
Join date: 4 Jan 2008
Posts: 71
01-13-2009 00:48
From: Nexus Chemistry
Here is the error I'm getting....
Maybe I messed something up in the process?

nonono. You are almost there. Look at and vote for http://jira.secondlife.com/browse/VWR-11474 and choose out of 2 workarounds.

From: Nexus Chemistry

They need to release this and the voice fix in the linux viewer already, I'm sick of having to rig it all the time.

indeed. What source exactly do you compile? If it is from trunk or maint-viewer then you can have openal sound using ./develop.py configure -DOPENAL:BOOL=TRUE
Nexus Chemistry
Registered User
Join date: 6 Jun 2008
Posts: 14
01-13-2009 07:38
I used the svn. What do I need to use to get both voice AND 3dpacenav working?
Boroondas Gupte
Registered User
Join date: 16 Sep 2005
Posts: 186
01-13-2009 09:49
From: Nexus Chemistry
I used the svn.
What svn branch? (I guess it's trunk)

From: Nexus Chemistry
What do I need to use to get both voice AND 3dpacenav working?
Both should work with a svn trunk checkout, once you've worked around the issue stated above (VWR-11474), if you are doing a standard build (i.e. with the precompiled libraries, NOT standalone and NOT a custom build). Other than in the binary releases, sound has already changed from FMOD to OpenAl in trunk, it seems, so if voice isn't working you might want to test if sound does work at all in your build.
1 2