Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

OS X and official Equalizer port #1

Open
wants to merge 5 commits into
base: master
Choose a base branch
from
Open

Conversation

eile
Copy link

@eile eile commented May 20, 2015

The code now compiles for me on OS X, and the build processed is streamlined by integrating Equalizer as a sub project. Also contains some bug fixes.

I'm a bit at loss on how to test the result, as there are no executables and the README does not say anything.

@PetrosKataras
Copy link
Owner

Once again your response is amazing.. I have to take some time to check this but in the mean time what do you mean there are no executables ?? There are two very simple examples under the examples directory that you could test with, if that is what you mean??

@PetrosKataras PetrosKataras self-assigned this May 20, 2015
@eile
Copy link
Author

eile commented May 20, 2015

Didn't see them since they are not part of the top-level CMake. Checking it out.

@PetrosKataras
Copy link
Owner

Yeah my bad.. I had some issues integrating them in an automated way in the build process so I went the simple road so that I have something to test for now..

@PetrosKataras
Copy link
Owner

Currently it fails at configuration because of missing Qt .

CMake Error at /usr/share/cmake-2.8/Modules/FindPkgConfig.cmake:283 (message):
  A required package was not found
Call Stack (most recent call first):
  /usr/share/cmake-2.8/Modules/FindPkgConfig.cmake:337 (_pkg_check_modules_internal)
  Deflect/CMake/FindPackages.cmake:49 (pkg_check_modules)
  Deflect/CMake/FindPackages.cmake:60 (common_package)
  Deflect/CMakeLists.txt:25 (include)
...
Make Error at Deflect/deflect/CMakeLists.txt:48 (qt5_wrap_cpp):
  Unknown CMake command "qt5_wrap_cpp".

Also this is a general question on how I can completely disable all of the non-required dependencies of Eq ? I think in the case of the stardust it makes it much easier if there are less dependencies ( faster config time, less prone to errors in different configurations etc. ) so I would lean towards disabling everything that is not a requirement.

@eile
Copy link
Author

eile commented May 21, 2015

We have not figured out yet on how to disable optional dependencies, for now uncomment in the .gitsubprojects. It's on our list, though.

For now, can you just install Qt5 (cmake -DINSTALL_PACKAGES=1 .. on Ubuntu)?

@PetrosKataras
Copy link
Owner

Yes this is what I have been doing so far. I would prefer not to install Qt if not necessary :) It installs a bunch of stuff and if I can avoid it I would prefer to do so.

I will wait for this to be merged also since the current state is a bit broken.

Also I see here that all of the non-system OF dependencies where removed which is causing linking errors. What was the reason for this?

@eile
Copy link
Author

eile commented May 21, 2015

Also I see here that all of the non-system OF dependencies where removed which is causing linking errors. What was the reason for this?

They don't exist on OS X, and are apparently not needed. I think it's best to let this PR mature a bit, I've got a few loose ends to tie up. Will ping here.

@PetrosKataras
Copy link
Owner

They don't exist on OS X, and are apparently not needed.

This is strange. GLFW, Poco and so on are required dependencies of OF independent of the platform and I can also see here ( GLFW for example ) that exists in the relevant osx directory.

I think it's best to let this PR mature a bit, I've got a few loose ends to tie up. Will ping here.

Super ! Thanks very much! I will also have a closer look..

@PetrosKataras
Copy link
Owner

Maybe you have an idea about this. I successfully compiled 64bit Eq on Yosemite but when trying to include it and build stardust, Lunchbox complains that it can't find <tr1/unordered_map> ...

I am not sure if I am doing something totally wrong but just getting c++11 to play nicely on OSX has been a pain for me so far with all these clang / gcc weirdness happening ..

I am testing with my local fork of Eq and not master btw.

@eile
Copy link
Author

eile commented May 26, 2015

Yes, this has been fixed in Eyescale/Lunchbox@1045a30

@eile
Copy link
Author

eile commented May 26, 2015

I'm still working on this, but hit a bigger issue with install(EXPORTS) which I'm resolving with the help of @biddisco right now

@PetrosKataras
Copy link
Owner

Cool .. Just wanted to test OF related stuff and how the cmake configuration works in the case of OS X. It was just recently that 64bit and c++11 support was officially added for OS X ( my local OF fork actually is behind this so I would have to update from upstream ) and I wanted to check how everything plays together.

I also haven't figured out a nice way to install(EXPORT) the include dependencies of stardust. Right now I am setting the config to point to hardcoded paths through STARDUST_DEPENDS_INCLUDES https://github.com/PetrosKataras/stardust/blob/master/CMakeLists.txt/#L78-L101 when it comes to Eq and OF.

My motivation is that an application only has to link with stardust and include STARDUST_INCLUDE_DIRS and this should pull all libs and include dependent dirs. The libs part is working nice through the INTERFACE_LINK_LIBRARIES but I haven't figure out how to do something similar for the include paths.

@PetrosKataras
Copy link
Owner

I took some time this weekend to work on this. Current master should now work on MacOS X for 64bit builds with GLX installed. I hand-picked some of the stuff from this pull request but OF integration now follows the official OF structure ( i.e using the precompiled library dependencies that ship with OF and not the system wide as in the Linux case. ) . Examples are also included in the build phase of stardust now and Eq and OF are updated to the latest master versions. The readme file has been updated to reflect these changes. It would be interesting to now if this works for you also. Thanks for this and you have any feedback please let me know.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants