gudhi-devel
gudhi-devel copied to clipboard
GudhUI will not compile because of alleged missing Qt5 components, despite Qt being installed.
I compiled GUDHI, but the UI part did not compile.
++ GudhUI will not be compiled because Qt5 COMPONENTS Widgets Xml OpenGL are not found
I've installed qt
via brew
, which I thought would satisfy the requirements, but it did not.
brew install qt
I'm asking for clarification on whether Widgets, Xml, and OpenGL are included in Qt5, and if I can download Qt5 through brew
.
Also, I have done the following, but none make the error go away:
brew cask install qt-design-studio
brew cask install qt-creator
Hello, thank you for your report. First, if you don't specifically mean to use the edge-contraction algorithm on skeleton-blocker datastructure, you can probably ignore GudhUI. Did cmake say anything interesting before that? Did cmake find parts of Qt5 but not some components, or did it not find it at all? You can use cmake-gui or ccmake to examine the result. Maybe you just need to tell it where Qt is with Qt5_DIR. You could check if there are files with a name similar to libQt5Widgets.so.5 (maybe .dylib on mac?) in your brew directory, same with xml and opengl. I am not a pro of cmake, the first thing that comes to mind is running cmake with the --trace option, and looking at the parts that talk about Qt...
I reproduced the issue on a OSx virtual machine.
I know it also requires opengl. I did brew install glfw
but it doesn't help.
[EDIT]
I found a fix in this really long thread (update the path regarding your configuration):
brew link --force qt5 && sudo ln -s /usr/local/Cellar/qt/5.14.1/mkspecs /usr/local/mkspecs && sudo ln -s /usr/local/Cellar/qt/5.14.1/plugins /usr/local/plugins
Then you need to install QGLviewer
Thanks to both @mglisse and @VincentRouvreau for their replies. First comes my response to mglisee, and then a response to VincentRouvreau.
CMake
I reduced the number of missing Qt5 components to just QGLViewer since my last post by erasing CMakeCache.txt
and refreshing $PATH$
. I installed QGLViewer according to the Mac OS X instructions in the QGLViewer website.
Did cmake say anything interesting before that?
Previously I got the following output with some CMake warnings, most of which I was able to avoid by implementing this solution from StackOverflow.
(base) 06:00 PM [4] ~/Library/Python/3.7/lib/python/site-packages/gudhi/build --> cmake -DPython_ADDITIONAL_VERSIONS=3 ..
-- The C compiler identification is AppleClang 11.0.0.11000033
-- The CXX compiler identification is AppleClang 11.0.0.11000033
-- Check for working C compiler: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/cc
-- Check for working C compiler: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/cc -- works
-- Detecting Ccompiler ABI info
-- Detecting C compiler ABI info - done
-- Detecting C compile features
-- Detecting C compile features - done
-- Check for working CXX compiler: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/c++
-- Check for working CXX compiler: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/c++ -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- GUDHI version : 3.1.1
CMake Warning at /usr/local/lib/cmake/boost_system-1.72.0/libboost_system-variant-shared.cmake:64 (message):
Target Boost::system already has an imported location
'/usr/local/lib/libboost_system-mt.dylib', which will be overwritten with
'/usr/local/lib/libboost_system.dylib'
Call Stack (most recent call first):
/usr/local/lib/cmake/boost_system-1.72.0/boost_system-config.cmake:57 (include)
/usr/local/lib/cmake/Boost-1.72.0/BoostConfig.cmake:120 (find_package)
/usr/local/lib/cmake/Boost-1.72.0/BoostConfig.cmake:185 (boost_find_component)
/usr/local/Cellar/cmake/3.16.5/share/cmake/Modules/FindBoost.cmake:443 (find_package)
src/cmake/modules/GUDHI_third_party_libraries.cmake:3 (find_package)
CMakeLists.txt:17 (include)
CMake Warning at /usr/local/lib/cmake/boost_filesystem-1.72.0/libboost_filesystem-variant-shared.cmake:64 (message):
Target Boost::filesystem already has an imported location
'/usr/local/lib/libboost_filesystem-mt.dylib', which will be overwritten
with '/usr/local/lib/libboost_filesystem.dylib'
Call Stack (most recent call first):
/usr/local/lib/cmake/boost_filesystem-1.72.0/boost_filesystem-config.cmake:57 (include)
/usr/local/lib/cmake/Boost-1.72.0/BoostConfig.cmake:120 (find_package)
/usr/local/lib/cmake/Boost-1.72.0/BoostConfig.cmake:185 (boost_find_component)
/usr/local/Cellar/cmake/3.16.5/share/cmake/Modules/FindBoost.cmake:443 (find_package)
src/cmake/modules/GUDHI_third_party_libraries.cmake:3 (find_package)
CMakeLists.txt:17 (include)
CMake Warning at /usr/local/lib/cmake/boost_unit_test_framework-1.72.0/libboost_unit_test_framework-variant-shared.cmake:64 (message):
Target Boost::unit_test_framework already has an imported location
'/usr/local/lib/libboost_unit_test_framework-mt.dylib', which will be
overwritten with '/usr/local/lib/libboost_unit_test_framework.dylib'
Call Stack (most recent call first):
/usr/local/lib/cmake/boost_unit_test_framework-1.72.0/boost_unit_test_framework-config.cmake:57 (include)
/usr/local/lib/cmake/Boost-1.72.0/BoostConfig.cmake:120 (find_package)
/usr/local/lib/cmake/Boost-1.72.0/BoostConfig.cmake:185 (boost_find_component)
/usr/local/Cellar/cmake/3.16.5/share/cmake/Modules/FindBoost.cmake:443 (find_package)
src/cmake/modules/GUDHI_third_party_libraries.cmake:3 (find_package)
CMakeLists.txt:17 (include)
CMake Warning at /usr/local/lib/cmake/boost_program_options-1.72.0/libboost_program_options-variant-shared.cmake:64 (message):
Target Boost::program_options already has an imported location
'/usr/local/lib/libboost_program_options-mt.dylib', which will be
overwritten with '/usr/local/lib/libboost_program_options.dylib'
Call Stack (most recent call first):
/usr/local/lib/cmake/boost_program_options-1.72.0/boost_program_options-config.cmake:57 (include)
/usr/local/lib/cmake/Boost-1.72.0/BoostConfig.cmake:120 (find_package)
/usr/local/lib/cmake/Boost-1.72.0/BoostConfig.cmake:185 (boost_find_component)
/usr/local/Cellar/cmake/3.16.5/share/cmake/Modules/FindBoost.cmake:443 (find_package)
src/cmake/modules/GUDHI_third_party_libraries.cmake:3 (find_package)
CMakeLists.txt:17 (include)
-- Found Boost: /usr/local/lib/cmake/Boost-1.72.0/BoostConfig.cmake (found suitable version "1.72.0", minimum required is "1.56.0") found components: system filesystem unit_test_framework program_options thread
-- Found GMP: /usr/local/lib/libgmp.dylib
-- Found GMPXX: /usr/local/lib/libgmpxx.dylib
-- Using header-only CGAL
-- Targetting Unix Makefiles
-- Using /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/c++ compiler.
-- DARWIN_VERSION=19
-- Mac Leopard detected
-- Found MPFR: /usr/local/lib/libmpfr.dylib
-- Found Boost: /usr/local/lib/cmake/Boost-1.72.0/BoostConfig.cmake (found suitable version "1.72.0", minimum required is "1.48")
-- Boost include dirs: /usr/local/include
-- Boost libraries:
-- CGAL version: 5.00.2.100.
-- Build type:
-- USING CXXFLAGS = ' '
-- USING EXEFLAGS = ' '
-- Requested component: MPFR
-- Requested component: GMPXX
-- Requested component: GMP
-- Found Eigen3: /usr/local/include/eigen3 (found suitable version "3.3.7", minimum required is "3.1.0") diff found in /usr/bin/diff
-- boost include dirs:/usr/local/include
-- boost library dirs:/usr/local/lib
-- Found PythonInterp: /Users/herman/opt/anaconda3/bin/python3 (found version "3.7.4")
++ Python module cython - Version 0.29.13 found
++ Python module pytest - Version 5.2.1 found
++ Python module matplotlib - Version 3.1.1 found
++ Python module numpy - Version 1.17.2 found
++ Python module scipy - Version 1.3.1 found
++ Python module sphinx - Version 2.2.0 found
++ Python module sklearn - Version 0.21.3 found
PYTHON_MODULE_NAME = ot
- PYTHON_MODULE_RESULT = 1
- PYTHON_MODULE_VERSION =
- PYTHON_MODULE_ERROR = Traceback (most recent call last):
File "<string>", line 1, in <module>
ModuleNotFoundError: No module named 'ot'
-- Checking to see if CXX compiler accepts flag -Wall
-- Checking to see if CXX compiler accepts flag -Wall - yes
-- Performing Test GUDHI_CAN_USE_CXX11_THREAD_LOCAL_RESULT
-- Performing Test GUDHI_CAN_USE_CXX11_THREAD_LOCAL_RESULT - Failed
++ Release compilation flags are: -Wall -pedantic -O3 -DNDEBUG
++ GUDHI_SUB_DIRECTORIES list is:";test;utilities"
++ GudhUI will not be compiled because QGLViewer is not found
-- Performing Test CGAL_CAN_USE_CXX11_THREAD_LOCAL_RESULT
-- Performing Test CGAL_CAN_USE_CXX11_THREAD_LOCAL_RESULT - Failed
++ /usr/local/lib/libboost_thread-mt.dylib => UNIX_LIB_FILE_NAME = boost_thread-mt
** Add Boost /usr/local/lib
++ /usr/local/lib/libgmp.dylib => UNIX_LIB_FILE_NAME = gmp
** Add gmp /usr/local/lib
++ /usr/local/lib/libgmpxx.dylib => UNIX_LIB_FILE_NAME = gmpxx
** Add gmpxx /usr/local/lib
++ /usr/local/lib/libmpfr.dylib => UNIX_LIB_FILE_NAME = mpfr
** Add mpfr /usr/local/lib/libmpfr.dylib
++ Python documentation module will not be compiled because POT was not found
++ GUDHI_MODULES list is:"common;Alpha_complex;Bitmap_cubical_complex;Bottleneck_distance;Contraction;Cech_complex;Hasse_complex;Persistence_representations;Persistent_cohomology;Rips_complex;Simplex_tree;Skeleton_blocker;Spatial_searching;Subsampling;Tangential_complex;Toplex_map;Witness_complex;Nerve_GIC;python"
++ GUDHI_MISSING_MODULES list is:"GudhUI;python-documentation;cpp-documentation" CMake Warning at /usr/local/lib/cmake/CGAL/CGAL_enable_end_of_configuration_hook.cmake:99 (message):
=======================================================================
CGAL performance notice:
The variable CMAKE_BUILD_TYPE is set to "". For performance reasons, you
should set CMAKE_BUILD_TYPE to "Release".
Set CGAL_DO_NOT_WARN_ABOUT_CMAKE_BUILD_TYPE to TRUE if you want to disable
this warning.
=======================================================================
Call Stack (most recent call first):
CMakeLists.txt:9999 (CGAL_run_at_the_end_of_configuration)
-- Configuring done
-- Generating done
-- Build files have been written to: /Users/herman/Library/Python/3.7/lib/python/site-packages/gudhi/build
Did cmake find parts of Qt5 but not some components, or did it not find it at all? You can use cmake-gui or ccmake to examine the result.
Originally the only message I got regarding Qt5 was the one in my original post (its components were missing). But running cmake
again with the commands you recommended I get the following:
- I don't have
cmake-gui
installed, so I couldn't try it out. - I run
ccmake
with thec
(configure) option and get the following output:
BUILD_TESTING *OFF
Boost_FILESYSTEM_LIBRARY_RELEA */usr/local/lib/libboost_filesystem-mt.dylib
Boost_INCLUDE_DIR */usr/local/include
Boost_PROGRAM_OPTIONS_LIBRARY_ */usr/local/lib/libboost_program_options-mt.dylib
Boost_SYSTEM_LIBRARY_RELEASE */usr/local/lib/libboost_system-mt.dylib
Boost_THREAD_LIBRARY_RELEASE */usr/local/lib/libboost_thread-mt.dylib
Boost_UNIT_TEST_FRAMEWORK_LIBR */usr/local/lib/libboost_unit_test_framework-mt.dylib
CGAL_CTEST_DISPLAY_MEM_AND_TIM *OFF
CGAL_DEV_MODE *OFF
CGAL_DIR */usr/local/lib/cmake/CGAL
CGAL_TEST_DRAW_FUNCTIONS *OFF
CGAL_WITH_GMPXX *OFF
CMAKE_BUILD_TYPE *
CMAKE_EXECUTABLE_FORMAT *MACHO
CMAKE_INSTALL_PREFIX */usr/local
CMAKE_OSX_ARCHITECTURES *
CMAKE_OSX_DEPLOYMENT_TARGET *
CMAKE_OSX_SYSROOT */Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.15.sdk
DIFF_PATH */usr/bin/diff
EIGEN3_INCLUDE_DIR */usr/local/include/eigen3
GCOVR_PATH *GCOVR_PATH-NOTFOUND
GIT_EXECUTABLE */usr/bin/git
GMPXX_INCLUDE_DIR */usr/local/include
GMPXX_LIBRARIES */usr/local/lib/libgmpxx.dylib
GMPXX_LIBRARIES_DIR */usr/local/lib
GMP_INCLUDE_DIR */usr/local/include
GMP_LIBRARIES */usr/local/lib/libgmp.dylib
GMP_LIBRARIES_DIR */usr/local/lib
GNUPLOT_PATH *GNUPLOT_PATH-NOTFOUND
GPROF_PATH *GPROF_PATH-NOTFOUND
MPFR_INCLUDE_DIR */usr/local/include
MPFR_LIBRARIES */usr/local/lib/libmpfr.dylib
MPFR_LIBRARIES_DIR */usr/local/lib
QGLVIEWER_INCLUDE_DIR *QGLVIEWER_INCLUDE_DIR-NOTFOUND
QGLVIEWER_LIBRARY_DEBUG *QGLVIEWER_LIBRARY_DEBUG-NOTFOUND
QGLVIEWER_LIBRARY_RELEASE *QGLVIEWER_LIBRARY_RELEASE-NOTFOUND
Qt5Core_DIR */usr/local/opt/qt/lib/cmake/Qt5Core
Qt5Gui_DIR */usr/local/opt/qt/lib/cmake/Qt5Gui
Qt5OpenGL_DIR */usr/local/opt/qt/lib/cmake/Qt5OpenGL
Qt5Widgets_DIR */usr/local/opt/qt/lib/cmake/Qt5Widgets
Qt5Xml_DIR */usr/local/opt/qt/lib/cmake/Qt5Xml
Qt5_DIR */usr/local/opt/qt/lib/cmake/Qt5
SPHINX_PATH */Users/herman/Library/Python/3.7/bin/sphinx-build
WITH_GUDHI_BENCHMARK *OFF
WITH_GUDHI_BOOST_TEST_COVERAGE *OFF
WITH_GUDHI_EXAMPLE *OFF
WITH_GUDHI_PYTHON *ON
WITH_GUDHI_PYTHON_RUNTIME_LIBR *ON
WITH_GUDHI_TEST *ON
WITH_GUDHI_USE_TBB *ON
WITH_GUDHI_UTILITIES *ON
WITH_MODULE_GUDHI_Alpha_comple *ON
WITH_MODULE_GUDHI_Bitmap_cubic *ON
WITH_MODULE_GUDHI_Bottleneck_d *ON
WITH_MODULE_GUDHI_Cech_complex *ON
WITH_MODULE_GUDHI_Contraction *ON
WITH_MODULE_GUDHI_Hasse_comple *ON
WITH_MODULE_GUDHI_Nerve_GIC *ON
WITH_MODULE_GUDHI_Persistence_ *ON
WITH_MODULE_GUDHI_Persistent_c *ON
WITH_MODULE_GUDHI_Rips_complex *ON
WITH_MODULE_GUDHI_Simplex_tree *ON
WITH_MODULE_GUDHI_Skeleton_blo *ON
WITH_MODULE_GUDHI_Spatial_sear *ON
WITH_MODULE_GUDHI_Subsampling *ON
WITH_MODULE_GUDHI_Tangential_c *ON
WITH_MODULE_GUDHI_Toplex_map *ON
Maybe you just need to tell it where Qt is with Qt5_DIR.
How do I do that?
You could check if there are files with a name similar to libQt5Widgets.so.5 (maybe .dylib on mac?) in your brew directory, same with xml and opengl.
find /usr/local/Homebrew/Library/Taps/homebrew -name "libQt5*"
# no results
find /usr/local/Homebrew -name "libQt5*"
# no results
find /usr/local/Cellar -name "libQt5*"
# Returns the following:
/usr/local/Cellar/qt/5.14.1/lib/libQt5DeviceDiscoverySupport.prl
/usr/local/Cellar/qt/5.14.1/lib/libQt5QmlDebug.prl
/usr/local/Cellar/qt/5.14.1/lib/libQt5EdidSupport.a
/usr/local/Cellar/qt/5.14.1/lib/libQt5PacketProtocol.a
/usr/local/Cellar/qt/5.14.1/lib/libQt5EdidSupport.prl
/usr/local/Cellar/qt/5.14.1/lib/libQt5PlatformCompositorSupport.prl
/usr/local/Cellar/qt/5.14.1/lib/libQt5FontDatabaseSupport.a
/usr/local/Cellar/qt/5.14.1/lib/libQt5UiTools.a
/usr/local/Cellar/qt/5.14.1/lib/libQt5GraphicsSupport.prl
/usr/local/Cellar/qt/5.14.1/lib/libQt5GraphicsSupport.a
/usr/local/Cellar/qt/5.14.1/lib/libQt5ClipboardSupport.prl
/usr/local/Cellar/qt/5.14.1/lib/libQt5ThemeSupport.prl
/usr/local/Cellar/qt/5.14.1/lib/libQt5QmlDebug.a
/usr/local/Cellar/qt/5.14.1/lib/libQt5DeviceDiscoverySupport.a
/usr/local/Cellar/qt/5.14.1/lib/libQt5QmlDevTools.prl
/usr/local/Cellar/qt/5.14.1/lib/libQt5UiTools.prl
/usr/local/Cellar/qt/5.14.1/lib/libQt5FontDatabaseSupport.prl
/usr/local/Cellar/qt/5.14.1/lib/libQt5QmlDevTools.a
/usr/local/Cellar/qt/5.14.1/lib/libQt5ThemeSupport.a
/usr/local/Cellar/qt/5.14.1/lib/libQt5ServiceSupport.a
/usr/local/Cellar/qt/5.14.1/lib/libQt5PacketProtocol.prl
/usr/local/Cellar/qt/5.14.1/lib/libQt5EventDispatcherSupport.a
/usr/local/Cellar/qt/5.14.1/lib/libQt5Bootstrap.prl
/usr/local/Cellar/qt/5.14.1/lib/libQt5ServiceSupport.prl
/usr/local/Cellar/qt/5.14.1/lib/libQt5ClipboardSupport.a
/usr/local/Cellar/qt/5.14.1/lib/libQt5Bootstrap.a
/usr/local/Cellar/qt/5.14.1/lib/libQt5OpenGLExtensions.a
/usr/local/Cellar/qt/5.14.1/lib/libQt5FbSupport.prl
/usr/local/Cellar/qt/5.14.1/lib/libQt5AccessibilitySupport.a
/usr/local/Cellar/qt/5.14.1/lib/libQt5PlatformCompositorSupport.a
/usr/local/Cellar/qt/5.14.1/lib/libQt5FbSupport.a
/usr/local/Cellar/qt/5.14.1/lib/libQt5EventDispatcherSupport.prl
/usr/local/Cellar/qt/5.14.1/lib/libQt5OpenGLExtensions.prl
/usr/local/Cellar/qt/5.14.1/lib/libQt5AccessibilitySupport.prl
I am not a pro of cmake, the first thing that comes to mind is running cmake with the --trace option, and looking at the parts that talk about Qt...
cd /Users/herman/Library/Python/3.7/lib/python/site-packages/gudhi
cmake --trace -DPython_ADDITIONAL_VERSIONS=3 ..
Returns this output with over 15,000 lines and 3207 mentions of "Qt5" (2.4 MB text file).
Fixing Homebrew links
- [x] Fix link
# brew install glfw
brew link --force qt5 && sudo ln -s /usr/local/Cellar/qt/5.14.1/mkspecs /usr/local/mkspecs && ln -s /usr/local/Cellar/qt/5.14.1/plugins /usr/local/plugins
brew link --force qt5 && ln -s /usr/local/Cellar/qt/5.14.1/plugins /usr/local/plugins
- [x] Then install QGLViewer
cd ~/libQGLViewer-2.7.2/
qmake -spec macx-xcode
# Output:
Info: creating stash file /Users/herman/libQGLViewer-2.7.2/.qmake.stash
Info: creating cache file /Users/herman/libQGLViewer-2.7.2/.qmake.cache
WARNING: Ignored (not found) '/Users/herman/libQGLViewer-2.7.2/QGLViewer/QGLViewer.xcodeproj'
WARNING: Ignored (not found) '/Users/herman/libQGLViewer-2.7.2/designerPlugin/qglviewerplugin.xcodeproj'
WARNING: Ignored (not found) '/Users/herman/libQGLViewer-2.7.2/examples/animation/animation.xcodeproj'
WARNING: Ignored (not found) '/Users/herman/libQGLViewer-2.7.2/examples/callback/callback.xcodeproj'
WARNING: Ignored (not found) '/Users/herman/libQGLViewer-2.7.2/examples/cameraLight/cameraLight.xcodeproj'
WARNING: Ignored (not found) '/Users/herman/libQGLViewer-2.7.2/examples/clippingPlane/clippingPlane.xcodeproj'
WARNING: Ignored (not found) '/Users/herman/libQGLViewer-2.7.2/examples/constrainedCamera/constrainedCamera.xcodeproj'
WARNING: Ignored (not found) '/Users/herman/libQGLViewer-2.7.2/examples/constrainedFrame/constrainedFrame.xcodeproj'
WARNING: Ignored (not found) '/Users/herman/libQGLViewer-2.7.2/examples/drawLight/drawLight.xcodeproj'
WARNING: Ignored (not found) '/Users/herman/libQGLViewer-2.7.2/examples/fastDraw/fastDraw.xcodeproj'
WARNING: Ignored (not found) '/Users/herman/libQGLViewer-2.7.2/examples/frameTransform/frameTransform.xcodeproj'
WARNING: Ignored (not found) '/Users/herman/libQGLViewer-2.7.2/examples/frustumCulling/frustumCulling.xcodeproj'
WARNING: Ignored (not found) '/Users/herman/libQGLViewer-2.7.2/examples/interface/interface.xcodeproj'
WARNING: Ignored (not found) '/Users/herman/libQGLViewer-2.7.2/examples/keyboardAndMouse/keyboardAndMouse.xcodeproj'
WARNING: Ignored (not found) '/Users/herman/libQGLViewer-2.7.2/examples/keyFrames/keyFrames.xcodeproj'
WARNING: Ignored (not found) '/Users/herman/libQGLViewer-2.7.2/examples/luxo/luxo.xcodeproj'
WARNING: Ignored (not found) '/Users/herman/libQGLViewer-2.7.2/examples/manipulatedFrame/manipulatedFrame.xcodeproj'
WARNING: Ignored (not found) '/Users/herman/libQGLViewer-2.7.2/examples/mouseGrabber/mouseGrabber.xcodeproj'
WARNING: Ignored (not found) '/Users/herman/libQGLViewer-2.7.2/examples/multiSelect/multiSelect.xcodeproj'
WARNING: Ignored (not found) '/Users/herman/libQGLViewer-2.7.2/examples/multiView/multiView.xcodeproj'
WARNING: Ignored (not found) '/Users/herman/libQGLViewer-2.7.2/examples/overpainting/overpainting.xcodeproj'
WARNING: Ignored (not found) '/Users/herman/libQGLViewer-2.7.2/examples/screenCoordSystem/screenCoordSystem.xcodeproj'
WARNING: Ignored (not found) '/Users/herman/libQGLViewer-2.7.2/examples/select/select.xcodeproj'
WARNING: Ignored (not found) '/Users/herman/libQGLViewer-2.7.2/examples/simpleViewer/simpleViewer.xcodeproj'
WARNING: Ignored (not found) '/Users/herman/libQGLViewer-2.7.2/examples/standardCamera/standardCamera.xcodeproj'
WARNING: Ignored (not found) '/Users/herman/libQGLViewer-2.7.2/examples/stereoViewer/stereoViewer.xcodeproj'
I tried to run cmake
again despite the warnings from the QGLViewer install, but CMake says that the Gudhi UI was still not installed. Maybe I need to pass -CMAKE_BUILD_TYPE="Release"
? What is the syntax to do that? Is it like this:
cmake -DPython_ADDITIONAL_VERSIONS=3 -CMAKE_BUILD_TYPE="Release" ..
?
cmake -DPython_ADDITIONAL_VERSIONS=3 -CMAKE_BUILD_TYPE=Release ..
will fix the CGAL warning (should be better documented on our side - cf. #87 ).
From what I see in your logs, Qt5 is well installed. CMakeLists.txt says find_package(Qt5 COMPONENTS Widgets Xml OpenGL QUIET)
and ccmake on your side clearly shows them:
Qt5OpenGL_DIR */usr/local/opt/qt/lib/cmake/Qt5OpenGL
Qt5Widgets_DIR */usr/local/opt/qt/lib/cmake/Qt5Widgets
Qt5Xml_DIR */usr/local/opt/qt/lib/cmake/Qt5Xml
GudhUI is not compiled because of qglviewer. I will try to install it on my VM and will let you know.
I installed libQGLViewer this way:
cd install/libQGLViewer-2.7.2/QGLViewer/
qmake -spec macx-g++ PREFIX=/usr/local
make
sudo make install
CMake did not manage to find QGLViewer that has been installed in /usr/local/lib/QGLViewer.framework/
.
You can hard code the path in the CMake command this way:
cmake -DPython_ADDITIONAL_VERSIONS=3 -CMAKE_BUILD_TYPE=Release -DQGLVIEWER_INCLUDE_DIR=/usr/local/lib/QGLViewer.framework/Headers ..
If I understand well, there should be an environment variable QGLVIEWERROOT
that should be set by the QGLViewer installer and it is not done.
And now I am facing this bug that can be easily workarounded, but that I have to fix.
Thanks again @VincentRouvreau for helping me out with this issue.
Installing QGLviewer
I tried
qmake -spec macx-g++ PREFIX=/usr/local
But it gave me this output and error:
Info: creating stash file /Users/herman/install/libQGLViewer-2.7.2/QGLViewer/.qmake.stash
Project ERROR: failed to parse default search paths from compiler output
According to some online sources[1][2] the "preferred compiler" on mac OS is clang
, so I tried something different and did the following.
qmake -spec macx-clang PREFIX=/usr/local # Returns no output.
make # Returns over 700 lines of output, which are attached (makeOutput.txt)
sudo make install # returns over 200 lines of output, which are attached (makeInstallOutput.txt)
Compiling GudhUI
According to the CMake documentation all the options need to be prefixed with -D
. (Scroll down to "Create or update a CMake CACHE
entry" in the linked documentation.)
cmake -DPython_ADDITIONAL_VERSIONS=3 -DCMAKE_BUILD_TYPE=Release -DQGLVIEWER_INCLUDE_DIR=/usr/local/lib/QGLViewer.framework/Headers ..
The entire output is below.
I don't get the bug you describe, but when I try to run an example in IPython3 I get the following:
In [1]: %run ~/Downloads/rips_complex_from_points_example.py
#####################################################################
RipsComplex creation from points
---------------------------------------------------------------------------
AttributeError Traceback (most recent call last)
/Users/herman/Downloads/rips_complex_from_points_example.py in <module>()
19 print("#####################################################################")
20 print("RipsComplex creation from points")
---> 21 rips = gudhi.RipsComplex(points=[[0, 0], [1, 0], [0, 1], [1, 1]], max_edge_length=42)
22
23 simplex_tree = rips.create_simplex_tree(max_dimension=1)
AttributeError: module 'gudhi' has no attribute 'RipsComplex'
Is this part of the same issue or should I open a new one?
CMake output for GUDHI:
-- The C compiler identification is AppleClang 11.0.0.11000033
-- The CXX compiler identification is AppleClang 11.0.0.11000033
-- Check for working C compiler: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/cc
-- Check for working C compiler: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/cc -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Detecting C compile features
-- Detecting C compile features - done
-- Check for working CXX compiler: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/c++
-- Check for working CXX compiler: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/c++ -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- GUDHI version : 3.1.1
-- Found Boost: /usr/local/lib/cmake/Boost-1.72.0/BoostConfig.cmake (found suitable version "1.72.0", minimum required is "1.56.0") found components: system filesystem unit_test_framework program_options thread
-- Found GMP: /usr/local/lib/libgmp.dylib
-- Found GMPXX: /usr/local/lib/libgmpxx.dylib
-- Using header-only CGAL
-- Targetting Unix Makefiles
-- Using /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/c++ compiler.
-- DARWIN_VERSION=19
-- Mac Leopard detected
-- Found MPFR: /usr/local/lib/libmpfr.dylib
-- Found Boost: /usr/local/lib/cmake/Boost-1.72.0/BoostConfig.cmake (found suitable version "1.72.0", minimum required is "1.48")
-- Boost include dirs: /usr/local/include
-- Boost libraries:
-- CGAL version: 5.00.2.100.
-- Build type: Release
-- USING CXXFLAGS = ' -O3 -DNDEBUG'
-- USING EXEFLAGS = ' '
-- Requested component: MPFR
-- Requested component: GMPXX
-- Requested component: GMP
-- Found Eigen3: /usr/local/include/eigen3 (found suitable version "3.3.7", minimum required is "3.1.0")
diff found in /usr/bin/diff
-- boost include dirs:/usr/local/include
-- boost library dirs:/usr/local/lib
-- Found PythonInterp: /Library/Frameworks/Python.framework/Versions/3.7/bin/python3 (found version "3.7.3")
++ Python module cython - Version 0.29.15 found
++ Python module pytest - Version 5.3.5 found
++ Python module matplotlib - Version 3.1.1 found
++ Python module numpy - Version 1.16.4 found
++ Python module scipy - Version 1.3.0 found
++ Python module sphinx - Version 2.4.3 found
++ Python module sklearn - Version 0.22.1 found
++ Python module ot - Version 0.6.0 found
-- Checking to see if CXX compiler accepts flag -Wall
-- Checking to see if CXX compiler accepts flag -Wall - yes
-- Performing Test GUDHI_CAN_USE_CXX11_THREAD_LOCAL_RESULT
-- Performing Test GUDHI_CAN_USE_CXX11_THREAD_LOCAL_RESULT - Failed
++ Release compilation flags are: -Wall -pedantic -O3 -DNDEBUG
++ GUDHI_SUB_DIRECTORIES list is:";test;utilities"
-- Performing Test CGAL_CAN_USE_CXX11_THREAD_LOCAL_RESULT
-- Performing Test CGAL_CAN_USE_CXX11_THREAD_LOCAL_RESULT - Failed
++ /usr/local/lib/libboost_thread-mt.dylib => UNIX_LIB_FILE_NAME = boost_thread-mt
** Add Boost /usr/local/lib
++ /usr/local/lib/libgmp.dylib => UNIX_LIB_FILE_NAME = gmp
** Add gmp /usr/local/lib
++ /usr/local/lib/libgmpxx.dylib => UNIX_LIB_FILE_NAME = gmpxx
** Add gmpxx /usr/local/lib
++ /usr/local/lib/libmpfr.dylib => UNIX_LIB_FILE_NAME = mpfr
** Add mpfr /usr/local/lib/libmpfr.dylib
++ GUDHI_MODULES list is:"common;Alpha_complex;Bitmap_cubical_complex;Bottleneck_distance;Contraction;Cech_complex;Hasse_complex;Persistence_representations;Persistent_cohomology;Rips_complex;Simplex_tree;Skeleton_blocker;Spatial_searching;Subsampling;Tangential_complex;Toplex_map;Witness_complex;Nerve_GIC;GudhUI;python-documentation;python"
++ GUDHI_MISSING_MODULES list is:"cpp-documentation"
-- Configuring done
-- Generating done
-- Build files have been written to: /Users/herman/Library/Python/3.7/lib/python/site-packages/gudhi/build
Did you stop after cmake
? That's just the configuration step (like qmake), then you actually need to build, see the installation instructions.
Compiling GudhUI (a Qt/C++ user interface for gudhi) is different from the Python module (the gudhi python module). It seems you confuse both. What I see from the cmake logs, you can now compile GudhUI, you have all the required dependencies. To fix your python issue while playing the example:
cd /your/gudhi/path/build/src/python # or cd /your/gudhi/path/build/python
make
export PYTHONPATH="/your/gudhi/path/build/src/python:$PYTHONPATH" # or export PYTHONPATH="/your/gudhi/path/build/python:$PYTHONPATH"
python3
>>> import gudhi
# Shall report no error
Output_Gudhi_cmake.txt Output_Gudhi_make.txt
I did confuse Gudhi with its python package. I tried to install the python package since it seemed it would be simple, but I'm also having problems with it so now I'm troubleshooting both installations to see which one works first.
Installing Gudhi
Did you stop after
cmake
? That's just the configuration step (like qmake), then you actually need to build, see the installation instructions.
When I run
cd ~/gudhi/
mkdir build
cd build/
cmake -DPython_ADDITIONAL_VERSIONS=3 -DCMAKE_BUILD_TYPE=Release -DQGLVIEWER_INCLUDE_DIR=/usr/local/lib/QGLViewer.framework/Headers -DWITH_GUDHI_EXAMPLE=ON ..
make
I get this output for cmake
and this output for make
(returns 2 warnings and 1 error).
Installing Gudhi Python Package Via Miniconda
@VincentRouvreau, I run
conda install -c conda-forge gudhi
and I see the python package installed at /usr/local/Caskroom/miniconda/base/
, but in IPython3 when I type gu
, it won't autocomplete to gudhi
. Compare to when I type nu
, it will autocomplete to numpy
. If I type in gudhi
, it doesn't return an error, but I still can't run the example.
AttributeError: module 'gudhi' has no attribute 'RipsComplex'
In [2]: gudhi
Out[2]: <module 'gudhi' (namespace)>
@VincentRouvreau, I run
conda install -c conda-forge gudhi
and I see the python package installed at
/usr/local/Caskroom/miniconda/base/
, but in IPython3 when I typegu
, it won't autocomplete togudhi
. Compare to when I typenu
, it will autocomplete tonumpy
. If I type ingudhi
, it doesn't return an error, but I still can't run the example.AttributeError: module 'gudhi' has no attribute 'RipsComplex' In [2]: gudhi Out[2]: <module 'gudhi' (namespace)>
Quite strange... Do you see gudhi when you do:
conda list
You shall see something like
...
gudhi 3.1.1 py36hb3f55d8_0 conda-forge
...
Sorry I've been gone the last few days. I've been distracted with the virus outbreak, and it's supposed to be spring break...
Calling conda list
gives me
gudhi 3.1.1 py37he63e17b_1 conda-forge
Same here with virus outbreak, and no school for the children...
Ok so now what do you have in your folder /usr/local/Caskroom/miniconda/pkgs/gudhi-3.1.1-py37he63e17b_1/lib/python3.7/site-packages/gudhi
?
If it does not exist, you can find it by doing:
find /usr/local/Caskroom/miniconda -name gudhi
It shall contain some .py
files and some .dylib
, if I remember well how it is named on OSx.
Just some very basic checks:
I see the python package installed at
/usr/local/Caskroom/miniconda/base/
, but in IPython3
Are you running the ipython3 provided by miniconda?
when I type
gu
, it won't autocomplete togudhi
You mean after doing import gudhi
, right? And you aren't running ipython3 from a directory that contains a subdirectory named gudhi?
I was able to run an example by adding the miniconda python paths to my preferred instance of python. The work-around was to add the path of the gudhi modules in miniconda to the list of paths of my preferred python instance. I'm wondering if this is the best fix, however. Details below.
@mglisse
Just some very basic checks:
I see the python package installed at
/usr/local/Caskroom/miniconda/base/
, but in IPython3Are you running the ipython3 provided by miniconda?
which ipython3
returns
/Users/herman/Library/Python/3.7/bin/ipython3
But, going off of your suspicion, I did the following:
/usr/local/Caskroom/miniconda/base/bin/python /Users/herman/Downloads/rips_complex_from_points_example.py
which returns
#####################################################################
RipsComplex creation from points
filtrations= [([0], 0.0), ([1], 0.0), ([2], 0.0), ([3], 0.0), ([0, 1], 1.0), ([0, 2], 1.0), ([1, 3], 1.0), ([2, 3], 1.0), ([1, 2], 1.4142135623730951), ([0, 3], 1.4142135623730951)]
star([0])= [([0], 0.0), ([0, 1], 1.0), ([0, 2], 1.0), ([0, 3], 1.4142135623730951)]
coface([0], 1)= [([0, 1], 1.0), ([0, 2], 1.0), ([0, 3], 1.4142135623730951)]
So I guess the problem has something to do with the paths. By the way, as far as I know, I have
- Python 2.7, which comes with macOS,
- Python 3, which I downloaded, and whose packages I all install using
pip install --user
- Python 3, which was installed by Miniconda.
I also had
- Python 3 installed by brew as a prereq for Qt5, but which is now deleted.
So I guess the solution would involve adding the miniconda packages path to the path of my preferred Python instance.
miniconda python paths:
/usr/local/Caskroom/miniconda/base/bin/python
>>> import sys
>>> for x in sys.path:
... print(x)
...
commonpath1
commonpath2
commonpath3
/usr/local/Caskroom/miniconda/base/lib/python37.zip # starting here these are different
/usr/local/Caskroom/miniconda/base/lib/python3.7
/usr/local/Caskroom/miniconda/base/lib/python3.7/lib-dynload
/Users/herman/.local/lib/python3.7/site-packages
/usr/local/Caskroom/miniconda/base/lib/python3.7/site-packages
iPython 3 paths:
ipython3
In [1]: import sys
In [2]: sys.path
Out[2]:
['',
'commonpath1',
'commonpath2',
'commonpath3',
'/Library/Frameworks/Python.framework/Versions/3.7/lib/python37.zip', # starting here these are different
'/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7',
'/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/lib-dynload',
'/Users/herman/Library/Python/3.7/lib/python/site-packages',
'/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages',
'/Users/herman/Library/Python/3.7/lib/python/site-packages/IPython/extensions',
'/Users/herman/.ipython',
'/Users/herman/code/eol_hsrl_python']
Here is my attempt at a solution:
In [11]: condapaths # typed in the paths manually
Out[11]:
['/usr/local/Caskroom/miniconda/base/lib/python37.zip',
'/usr/local/Caskroom/miniconda/base/lib/python3.7',
'/usr/local/Caskroom/miniconda/base/lib/python3.7/lib-dynload',
'/Users/herman/.local/lib/python3.7/site-packages',
'/usr/local/Caskroom/miniconda/base/lib/python3.7/site-packages']
In [12]: sys.path = sys.path + condapaths
In [13]: sys.path
Out[13]:
['',
'commonpath1',
'commonpath2',
'commonpath3',
'/Library/Frameworks/Python.framework/Versions/3.7/lib/python37.zip',
'/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7',
'/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/lib-dynload',
'/Users/herman/Library/Python/3.7/lib/python/site-packages',
'/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages',
'/Users/herman/Library/Python/3.7/lib/python/site-packages/IPython/extensions',
'/Users/herman/.ipython',
'/Users/herman/code/eol_hsrl_python',
'/usr/local/Caskroom/miniconda/base/lib/python37.zip',
'/usr/local/Caskroom/miniconda/base/lib/python3.7',
'/usr/local/Caskroom/miniconda/base/lib/python3.7/lib-dynload',
'/Users/herman/.local/lib/python3.7/site-packages',
'/usr/local/Caskroom/miniconda/base/lib/python3.7/site-packages']
In [14]: %run ~/Downloads/rips_complex_from_points_example.py
#####################################################################
RipsComplex creation from points
filtrations= [([0], 0.0), ([1], 0.0), ([2], 0.0), ([3], 0.0), ([0, 1], 1.0), ([0, 2], 1.0), ([1, 3], 1.0), ([2, 3], 1.0), ([1, 2], 1.4142135623730951), ([0, 3], 1.4142135623730951)]
star([0])= [([0], 0.0), ([0, 1], 1.0), ([0, 2], 1.0), ([0, 3], 1.4142135623730951)]
coface([0], 1)= [([0, 1], 1.0), ([0, 2], 1.0), ([0, 3], 1.4142135623730951)]
Which seems like it is a solution. So I make this permanent by adding the miniconda paths to my PYTHONPATH variable in ".bashrc".
ipython3
returns
Traceback (most recent call last):
Traceback (most recent call last):
File "/Users/herman/Library/Python/3.7/bin/ipython3", line 5, in <module>
from IPython import start_ipython
File "/Users/herman/Library/Python/3.7/lib/python/site-packages/IPython/__init__.py", line 48, in <module>
from .core.application import Application
File "/Users/herman/Library/Python/3.7/lib/python/site-packages/IPython/core/application.py", line 25, in <module>
from IPython.core import release, crashhandler
File "/Users/herman/Library/Python/3.7/lib/python/site-packages/IPython/core/crashhandler.py", line 28, in <module>
from IPython.core import ultratb
File "/Users/herman/Library/Python/3.7/lib/python/site-packages/IPython/core/ultratb.py", line 119, in <module>
from IPython.core import debugger
File "/Users/herman/Library/Python/3.7/lib/python/site-packages/IPython/core/debugger.py", line 37, in <module>
from IPython.utils import PyColorize, ulinecache
File "/Users/herman/Library/Python/3.7/lib/python/site-packages/IPython/utils/PyColorize.py", line 55, in <module>
from IPython.utils.py3compat import PY3
File "/Users/herman/Library/Python/3.7/lib/python/site-packages/IPython/utils/py3compat.py", line 296, in <module>
PYPY = platform.python_implementation() == "PyPy"
File "/usr/local/Caskroom/miniconda/base/lib/python3.7/platform.py", line 1264, in python_implementation
return _sys_version()[0]
File "/usr/local/Caskroom/miniconda/base/lib/python3.7/platform.py", line 1225, in _sys_version
repr(sys_version))
ValueError: failed to parse CPython sys.version: '3.7.3 (v3.7.3:ef4ec6ed12, Mar 25 2019, 16:52:21) \n[Clang 6.0 (clang-600.0.57)]'
According to this SO answer, the problem could stem from a bad PYTHONPATH
.
So I can add the paths after starting IPython, but not before. So the only solution is to add the minicondapaths to my ipython_config.py
file. And indeed this works.
# Add paths to ~/.ipython/profile_default/ipython_config.py
ipython3
In [1]: import sys
In [2]: sys.path
Out[2]:
['',
'commonpath1',
'commonpath2',
'commonpath3',
'/Library/Frameworks/Python.framework/Versions/3.7/lib/python37.zip',
'/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7',
'/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/lib-dynload',
'/Users/herman/Library/Python/3.7/lib/python/site-packages',
'/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages',
'/Users/herman/Library/Python/3.7/lib/python/site-packages/IPython/extensions',
'/Users/herman/.ipython',
'/Users/herman/code/eol_hsrl_python',
'/usr/local/Caskroom/miniconda/base/lib/python37.zip',
'/usr/local/Caskroom/miniconda/base/lib/python3.7',
'/usr/local/Caskroom/miniconda/base/lib/python3.7/lib-dynload',
'/Users/herman/.local/lib/python3.7/site-packages',
'/usr/local/Caskroom/miniconda/base/lib/python3.7/site-packages']
In [3]: %run ~/Downloads/rips_complex_from_points_example.py
#####################################################################
RipsComplex creation from points
filtrations= [([0], 0.0), ([1], 0.0), ([2], 0.0), ([3], 0.0), ([0, 1], 1.0), ([0, 2], 1.0), ([1, 3], 1.0), ([2, 3], 1.0), ([1, 2], 1.4142135623730951), ([0, 3], 1.4142135623730951)]
star([0])= [([0], 0.0), ([0, 1], 1.0), ([0, 2], 1.0), ([0, 3], 1.4142135623730951)]
coface([0], 1)= [([0, 1], 1.0), ([0, 2], 1.0), ([0, 3], 1.4142135623730951)]
In [4]:
But I'm worried why I wasn't able to add the paths to PYTHONPATH. This implies some incompatibility, and I don't want it to come and haunt me later.
when I type
gu
, it won't autocomplete togudhi
And you aren't running ipython3 from a directory that contains a subdirectory named gudhi?
Are you referring to this directory?
/Users/herman/Library/Python/3.7/lib/python/site-packages
The "gudhi" folder there was from when I confused the GUDHI python package with the regular GUDHI. I have since deleted that "gudhi" folder.
You mean after doing
import gudhi
, right?
In IPython3, before importing, it will autocomplete names, like for numpy
or just about everything else. After adding the miniconda python paths, IPython3 has been able to autocomplete gu
to gudhi
:+1:
@VincentRouvreau
cd /usr/local/Caskroom/miniconda/base/pkgs/gudhi-3.1.1-py37he63e17b_1/lib/python3.7/site-packages/gudhi
ls
returns
__init__.py persistence_graphical_tools.py
__pycache__ reader_utils.cpython-37m-darwin.so
alpha_complex.cpython-37m-darwin.so reader_utils.py
alpha_complex.py representations
bottleneck.cpython-37m-darwin.so rips_complex.cpython-37m-darwin.so
bottleneck.py rips_complex.py
cubical_complex.cpython-37m-darwin.so simplex_tree.cpython-37m-darwin.so
cubical_complex.py simplex_tree.py
euclidean_strong_witness_complex.cpython-37m-darwin.so strong_witness_complex.cpython-37m-darwin.so
euclidean_strong_witness_complex.py strong_witness_complex.py
euclidean_witness_complex.cpython-37m-darwin.so subsampling.cpython-37m-darwin.so
euclidean_witness_complex.py subsampling.py
nerve_gic.cpython-37m-darwin.so tangential_complex.cpython-37m-darwin.so
nerve_gic.py tangential_complex.py
off_reader.cpython-37m-darwin.so wasserstein.py
off_reader.py witness_complex.cpython-37m-darwin.so
periodic_cubical_complex.cpython-37m-darwin.so witness_complex.py
periodic_cubical_complex.py
find /usr/local/Caskroom/miniconda -name gudhi
returns
/usr/local/Caskroom/miniconda/base/include/gudhi
/usr/local/Caskroom/miniconda/base/pkgs/gudhi-3.1.1-py37he63e17b_1/include/gudhi
/usr/local/Caskroom/miniconda/base/pkgs/gudhi-3.1.1-py37he63e17b_1/lib/python3.7/site-packages/gudhi
/usr/local/Caskroom/miniconda/base/pkgs/gudhi-3.1.1-py37he63e17b_1/share/gudhi
/usr/local/Caskroom/miniconda/base/lib/python3.7/site-packages/gudhi
/usr/local/Caskroom/miniconda/base/share/gudhi
I compiled GUDHI, but the UI part did not compile.
++ GudhUI will not be compiled because Qt5 COMPONENTS Widgets Xml OpenGL are not found
I've installed
qt
viabrew
, which I thought would satisfy the requirements, but it did not.brew install qt
I'm asking for clarification on whether Widgets, Xml, and OpenGL are included in Qt5, and if I can download Qt5 through
brew
.Also, I have done the following, but none make the error go away:
brew cask install qt-design-studio brew cask install qt-creator
Hello @ChemGuy88,
try to use: $ sudo apt-get install build-essential $ sudo apt-get install qtcreator $ sudo apt-get install qt5-default
These commands above work for me.