sensics / OSVR-RenderManager

Apache License 2.0
63 stars 45 forks source link

Ubuntu 14.04 Compile Fails with error: ‘vrpn_gettimeofday’ #189

Closed Conzar closed 8 years ago

Conzar commented 8 years ago

OSVR-Core compiles without issue along with the required libraries. Here is the output from the compile.

`-- Git reports version 00_06_43-381-g1600a70 -- Could NOT find nvapi (missing: NVAPI_LIBRARY NVAPI_INCLUDE_DIR NDA) -- Could NOT find liquidvr (missing: LIQUIDVR_INCLUDE_DIR) -- Git's description of the current revision indicates this is a prerelease of 07.34: version_07.33-310-ge75e92c

-- Configuring the VRPN suite version 07.34.0~prerelease-git-07.33-310-ge75e92c using the CMake-based build system

-- NOTE: You have VRPN_USE_LOCAL_HIDAPI enabled, but VRPN_USE_HID disabled: HIDAPI will only be built if you enable HID support for VRPN -- - NVIDIA direct support: disabled (need NVAPI and NVIDIA NDA submodule) -- - AMD direct support: disabled (need LIQUIDVR and AMD NDA submodule) -- - Intel direct support: disabled (need Intel NDA submodule) -- - OpenGL support: enabled CMake Warning at examples/CMakeLists.txt:1 (find_package): By not providing "FindQt5Widgets.cmake" in CMAKE_MODULE_PATH this project has asked CMake to find a package configuration file provided by "Qt5Widgets", but CMake did not find one.

Could not find a package configuration file provided by "Qt5Widgets" with any of the following names:

Qt5WidgetsConfig.cmake
qt5widgets-config.cmake

Add the installation prefix of "Qt5Widgets" to CMAKE_PREFIX_PATH or set "Qt5Widgets_DIR" to a directory containing one of the above files. If "Qt5Widgets" provides a separate development package or SDK, be sure it has been installed.

CMake Warning at examples/CMakeLists.txt:2 (find_package): By not providing "FindQt5OpenGL.cmake" in CMAKE_MODULE_PATH this project has asked CMake to find a package configuration file provided by "Qt5OpenGL", but CMake did not find one.

Could not find a package configuration file provided by "Qt5OpenGL" with any of the following names:

Qt5OpenGLConfig.cmake
qt5opengl-config.cmake

Add the installation prefix of "Qt5OpenGL" to CMAKE_PREFIX_PATH or set "Qt5OpenGL_DIR" to a directory containing one of the above files. If "Qt5OpenGL" provides a separate development package or SDK, be sure it has been installed.

-- Configuring done -- Generating done -- Build files have been written to: /home/spethm/Work/MonkyGames/projects/osvr/osvr-ubuntu-build-script/OSVR-RenderManager/build [ 1%] Building C object vendor/vrpn/quat/CMakeFiles/quat.dir/matrix.c.o ... [ 42%] Building CXX object CMakeFiles/osvrRenderManager.dir/osvr/RenderKit/RenderManagerBase.cpp.o In file included from /home/spethm/Work/MonkyGames/projects/osvr/osvr-ubuntu-build-script/OSVR-Core/vendor/eigen/Eigen/Core:276:0, from /home/spethm/Work/MonkyGames/projects/osvr/osvr-ubuntu-build-script/OSVR-RenderManager/osvr/RenderKit/DistortionCorrectTextureCoordinate.h:36, from /home/spethm/Work/MonkyGames/projects/osvr/osvr-ubuntu-build-script/OSVR-RenderManager/osvr/RenderKit/RenderManagerBase.cpp:29: /home/spethm/Work/MonkyGames/projects/osvr/osvr-ubuntu-build-script/OSVR-Core/vendor/eigen/Eigen/src/Core/Functors.h:973:28: warning: ‘template class std::binder2nd’ is deprecated [-Wdeprecated-declarations] struct functor_traitsstd::binder2nd ^ In file included from /usr/include/c++/5/bits/stl_function.h:1128:0, from /usr/include/c++/5/string:48, from /usr/include/c++/5/stdexcept:39, from /usr/include/c++/5/array:38, from /home/spethm/Work/MonkyGames/projects/osvr/osvr-ubuntu-build-script/OSVR-RenderManager/osvr/RenderKit/MonoPointMeshTypes.h:35, from /home/spethm/Work/MonkyGames/projects/osvr/osvr-ubuntu-build-script/OSVR-RenderManager/osvr/RenderKit/osvr_display_configuration.h:34, from /home/spethm/Work/MonkyGames/projects/osvr/osvr-ubuntu-build-script/OSVR-RenderManager/osvr/RenderKit/RenderManager.h:29, from /home/spethm/Work/MonkyGames/projects/osvr/osvr-ubuntu-build-script/OSVR-RenderManager/osvr/RenderKit/RenderManagerBase.cpp:26: /usr/include/c++/5/backward/binders.h:143:11: note: declared here class binder2nd ^ In file included from /home/spethm/Work/MonkyGames/projects/osvr/osvr-ubuntu-build-script/OSVR-Core/vendor/eigen/Eigen/Core:276:0, from /home/spethm/Work/MonkyGames/projects/osvr/osvr-ubuntu-build-script/OSVR-RenderManager/osvr/RenderKit/DistortionCorrectTextureCoordinate.h:36, from /home/spethm/Work/MonkyGames/projects/osvr/osvr-ubuntu-build-script/OSVR-RenderManager/osvr/RenderKit/RenderManagerBase.cpp:29: /home/spethm/Work/MonkyGames/projects/osvr/osvr-ubuntu-build-script/OSVR-Core/vendor/eigen/Eigen/src/Core/Functors.h:977:28: warning: ‘template class std::binder1st’ is deprecated [-Wdeprecated-declarations] struct functor_traitsstd::binder1st ^ In file included from /usr/include/c++/5/bits/stl_function.h:1128:0, from /usr/include/c++/5/string:48, from /usr/include/c++/5/stdexcept:39, from /usr/include/c++/5/array:38, from /home/spethm/Work/MonkyGames/projects/osvr/osvr-ubuntu-build-script/OSVR-RenderManager/osvr/RenderKit/MonoPointMeshTypes.h:35, from /home/spethm/Work/MonkyGames/projects/osvr/osvr-ubuntu-build-script/OSVR-RenderManager/osvr/RenderKit/osvr_display_configuration.h:34, from /home/spethm/Work/MonkyGames/projects/osvr/osvr-ubuntu-build-script/OSVR-RenderManager/osvr/RenderKit/RenderManager.h:29, from /home/spethm/Work/MonkyGames/projects/osvr/osvr-ubuntu-build-script/OSVR-RenderManager/osvr/RenderKit/RenderManagerBase.cpp:26: /usr/include/c++/5/backward/binders.h:108:11: note: declared here class binder1st ^ /home/spethm/Work/MonkyGames/projects/osvr/osvr-ubuntu-build-script/OSVR-RenderManager/osvr/RenderKit/RenderManagerBase.cpp: In member function ‘virtual bool osvr::renderkit::RenderManager::PresentRenderBuffersInternal(const std::vectorosvr::renderkit::RenderBuffer&, const std::vectorosvr::renderkit::RenderInfo&, const osvr::renderkit::RenderManager::RenderParams&, const std::vectorosvr::renderkit::OSVR_ViewportDescription&, bool)’: /home/spethm/Work/MonkyGames/projects/osvr/osvr-ubuntu-build-script/OSVR-RenderManager/osvr/RenderKit/RenderManagerBase.cpp:726:45: error: ‘vrpn_gettimeofday’ was not declared in this scope vrpn_gettimeofday(&allStart, nullptr); ^ /home/spethm/Work/MonkyGames/projects/osvr/osvr-ubuntu-build-script/OSVR-RenderManager/osvr/RenderKit/RenderManagerBase.cpp:749:77: error: ‘vrpn_TimevalDurationSeconds’ was not declared in this scope timePresentFrameInitilize += vrpn_TimevalDurationSeconds(stop, start); ^ make[2]: * [CMakeFiles/osvrRenderManager.dir/osvr/RenderKit/RenderManagerBase.cpp.o] Error 1 make[1]: * [CMakeFiles/osvrRenderManager.dir/all] Error 2 make: *\ [all] Error 2 `

I see that Eigen is a requirement. Is there something that I need to do when building OSVR-Core for this?

russell-taylor commented 8 years ago

Hopefully your pull requests fixed the problems with VRPN. I think I used apt-get install to get Eigen before running cmake on Linux. On Windows, I need to either point at the OSVR Core build or install separately. Just merged a document change pull requests that tries to clarify this.

Conzar commented 8 years ago

The patch fixed the bug. Eigen needs to be installed on Ubuntu. apt-get install libeigen3-dev