Page 1 of 1

[STICKY] openVibe on Mac

Posted: Fri Oct 24, 2014 9:36 am
by gderou
Hi,

I managed to compile openvibe on my mac yesterday.
It was a bit tricky, but the changes I made are quite limited.

Do you still have interest in including mac support ?

Guillaume

Re: openVibe on Mac

Posted: Mon Oct 27, 2014 8:50 am
by jtlindgren
Hi Guillaume,

we'd definitely be interested in that. We may not be able to provide 'official' support like answer questions, or provide an official compiled version (for the moment), but we could perhaps include the necessary modifications to the source, depending somewhat how they look like (e.g. clean/simple). This'd make it one step easier for Mac enthusiasts to try the software out.

If you'd like to contribute the Mac-related changes to OpenViBE, there are some rules that may apply.

http://openvibe.inria.fr/contribution-rules/

ps. switched to a new topic

Thank you,
Jussi

Re: openVibe on Mac

Posted: Mon Oct 27, 2014 10:44 am
by gderou
Hi Jussi,

Changes are rather light - I'll try to provide a patch based on the latest GIT version (I started from the 0.18 zip bundle).
I played with both the acquisition-server and the designer, and everything seems to be working ok.

The only thing I could not compile is the P300Stimulator in contrib/platforms - which I did not need so I simply excluded it from the build.

Guillaume

Re: openVibe on Mac

Posted: Tue Oct 28, 2014 7:44 am
by gderou
Hi,

Here is the patch file.
As you will see, the changes are very llight:
- moved system/Time.h to system/ovTime.h (apparently a conflict with time.h happened, I suppose this is due to mac os using clang instead of gcc)
- a few additions to the cmake modules (missing dependencies)
- excluded project P300stimulator (didn't have time to look at it, as it is in contrib I assume this is not necessary)

For the dependencies, I installed most of them using Homebrew or MacPorts (package management for mac), it is probably the most complicated step.

The build itself is launched with Ogre3D support disabled: cmake -G "Unix Makefiles" -DOV_DISABLE_OGRE=1 ..
It is possible to compile with Ogre3D though, but the library is not available in either Homebrew nor MacPorts, so I think it is best to exclude it initially.

Guillaume

Re: openVibe on Mac

Posted: Sat Apr 18, 2015 5:13 pm
by alexandre.barachant
Hi guys,

after a lot of blood and tears, i was able to compile openvibe on my mac.
The patch of Guillaume seems to be partially integrated, but with the last version it need more modifications.

Most of the dependencies are availble through macport or homebrew. I can't tell you exactly what i installed, but i will make a list as soon as i get a clean mac to repeat the procedure.

There is problem with only two dependencies :
  • ogre : there is a port, but it does not compile, so ogre support is disabled.
  • LSL : you have to download the lsl release, and copy liblsl.dylib in openvibe/dependencies/lib and lsl_c.h and lsl_cpp.h in openvibe/dependencies/include
The code modification is small, attached is the patch from the current git master branch. The main changes are :
  • add two script osx-build and osx-clean. The linux script to adjust then number of compilation thread is not compatible with mac, so i made another.
  • On runtime, openvibe expect .so file so i changed the extension from .dylib to .so in the main CMakeLists.txt
  • A few change in the code, mainly casts and missing #includes.
  • Disabling the coadapt contrib, because of <sys/perm.h> for parallel port that does not exist on mac (if you find a fix let me know).
Then, openvibe run just fine. The display is uggly (window 95 like) but it is usable.
I will try to create a script for installing dependencies, but in the meantime, let me know if my patch helps.

Alex

Re: openVibe on Mac

Posted: Mon Apr 20, 2015 8:00 am
by jtlindgren
Hi Guillaume and Alexandre,

thanks for your work. None of the core dev team engineers work with a Mac, so its a bit difficult for us to
test/integrate these patches (+ we would need a copyright transfer to do so; if you're willing to do this,
please send me email). Some of the work, like building without Ogre, we have implemented independently,
as a heavy dependency like that is excessive/difficult for many light-weight platforms, and its only used
for 3D visu boxes & demos that many users do not need at all.

Since Mac port is doubtlessly of great interest to users, I'll make this post sticky for now.


Thanks again,
Jussi