tpaviot / oce

OpenCASCADE Community Edition (OCE): a community driven fork of the Open CASCADE library.
http://groups.google.com/group/oce-dev
GNU Lesser General Public License v2.1
811 stars 284 forks source link

cmake error installing OpenCASCADE #659

Closed bjdarrer closed 7 years ago

bjdarrer commented 7 years ago

I came across an error trying to install OpenCASCADE (oce) using cmake, where I was following the build command:

mkdir build
cd build
cmake -DOCE_INSTALL_PREFIX=/path/to/where/you/want/oce ..
make install

I downloaded OpenCASCADE with: git clone git://github.com/tpaviot/oce.git from https://www.dealii.org/8.3.0/external-libs/opencascade.html

The command line build error is:

-- Build 64bit
CMake Error at /usr/share/cmake-3.5/Modules/FindPackageHandleStandardArgs.cmake:148 (message):
  Could NOT find OpenGL (missing: OPENGL_gl_LIBRARY OPENGL_INCLUDE_DIR)
Call Stack (most recent call first):
  /usr/share/cmake-3.5/Modules/FindPackageHandleStandardArgs.cmake:388 (_FPHSA_FAILURE_MESSAGE)
  /usr/share/cmake-3.5/Modules/FindOpenGL.cmake:172 (FIND_PACKAGE_HANDLE_STANDARD_ARGS)
  CMakeLists.txt:440 (find_package)

I checked to see if I had a version of OpenGL, with,

glxinfo | grep "OpenGL version"

that showed:

OpenGL version string: 3.0 Mesa 12.0.6

So it seems I have OpenGL but the build cannot find it. Can anyone understand how to resolve this?

tpaviot commented 7 years ago

@bjdarrer OpenGl libs are not enough, you also need headers. Be sure you installed the opengl dev package (according to your distro the package name may change)

bjdarrer commented 7 years ago

Thank you tpaviot for your help. I went to:

http://askubuntu.com/questions/11378/how-do-i-set-up-an-opengl-programming-environment

and followed the instructions in the second reply (with score <10>), that seems to have resolved the Could NOT find OpenGL (missing: OPENGL_gl_LIBRARY OPENGL_INCLUDE_DIR) issue. However, now it cannot find Freetype

-- Build 64bit
CMake Error at /usr/share/cmake-3.5/Modules/FindPackageHandleStandardArgs.cmake:148 (message):
  Could NOT find Freetype (missing: FREETYPE_LIBRARY FREETYPE_INCLUDE_DIRS)
Call Stack (most recent call first):
  /usr/share/cmake-3.5/Modules/FindPackageHandleStandardArgs.cmake:388 (_FPHSA_FAILURE_MESSAGE)
  /usr/share/cmake-3.5/Modules/FindFreetype.cmake:151 (find_package_handle_standard_args)
  CMakeLists.txt:446 (find_package)

I am wondering if it needs a 32 bit Freetype instead of 64 bit one, see:

http://askubuntu.com/questions/846961/wine-cannot-find-the-freetype-font-library/847041

I checked my Ubuntu system and it does have Freetype on it.

tpaviot commented 7 years ago

@bjdarrer same for Freetype, you need to install the freetype-dev package

bjdarrer commented 7 years ago

@tpaviot , I installed freetype-dev --> freetype2.git --> see: https://www.freetype.org/download.html http://git.savannah.gnu.org/cgit/freetype/freetype2.git/

and built it with: make setup ansi & make, but on next building OpenCASCADE, I get:

$ cmake -DOCE_INSTALL_PREFIX=/home/brendan/bin/oce ..
-- Build 64bit
CMake Error at /usr/share/cmake-3.5/Modules/FindPackageHandleStandardArgs.cmake:148 (message):
  Could NOT find Freetype (missing: FREETYPE_LIBRARY FREETYPE_INCLUDE_DIRS)
Call Stack (most recent call first):
  /usr/share/cmake-3.5/Modules/FindPackageHandleStandardArgs.cmake:388 (_FPHSA_FAILURE_MESSAGE)
  /usr/share/cmake-3.5/Modules/FindFreetype.cmake:151 (find_package_handle_standard_args)
  CMakeLists.txt:446 (find_package)

-- Configuring incomplete, errors occurred!
See also "/home/brendan/Documents/OpenCASCADE/oce/build/CMakeFiles/CMakeOutput.log".
See also "/home/brendan/Documents/OpenCASCADE/oce/build/CMakeFiles/CMakeError.log".

It doesn't seem to have detected it. Would I need to include freetype-dev in the cmake build? and how would I do that as I don't know where freetype2 is called from. I also tried:

cmake -DFREETYPE_INCLUDE_DIR=/home/brendan/freetype2 -DOCE_INSTALL_PREFIX=/home/brendan/bin/oce ..

but with the same building error message. Thank you for your help.

bjdarrer commented 7 years ago

Problem solved by using sudo apt-get install libfreetype6-dev , from last comment at:

https://github.com/matplotlib/matplotlib/issues/3029/

Now OpenCASCADE (oce) is building correctly!

iulian787 commented 6 years ago

sudo apt-get install libfreetype6-dev was a life saver