Build Failure on Mac OS X (GLX support) (Bug #1603)
Description
On Mac OS X 10.6.8 configured with OpenGL, build stops at modules/highgui/src/window_QT.cpp:3364 with a not-declared error of a GLX function.
<builddir>/opencv/modules/highgui/src/window_QT.cpp: In member function ‘virtual void GlFuncTab_QT::generateBitmapFont(const std::string&, int, int, bool, bool, int, int, int) const’: <builddir>/opencv/modules/highgui/src/window_QT.cpp:3364: error: ‘glXUseXFont’ was not declared in this scope <builddir>/opencv/modules/highgui/src/window_QT.cpp:3355: warning: unused variable ‘cvFuncName’ make[2]: *** [modules/highgui/CMakeFiles/opencv_highgui.dir/src/window_QT.cpp.o] Error 1 make[1]: *** [modules/highgui/CMakeFiles/opencv_highgui.dir/all] Error 2 make: *** [all] Error 2
This is, to the best of my knowledge, the only usage of a GLX function when building with Mac OS X. It isn't appropriate to use GLX on Mac OS X because Apple uses AGL's aglUseFont for the same purpose.
This error may be related to improper #ifdef@s: At the top of window_QT.cpp,
#ifdef Q_WS_X11@ is used to guard the inclusion of GL/glx.h. However, at line 3364, a #ifndef Q_WS_WIN is used to guard the use of glXUseXFont. This allows a non-Windows machine possessing X11 but lacking GLX (i.e. Mac OS X) to reach the faulty call.
Related issues
duplicated by Bug #4495: Build Failure on Mac OS X (GLX support) | Open | 2012-02-15 |
Associated revisions
Merge pull request #1603 from ilya-lavrenov:ocl_disable_svm_noblas
Merge remote-tracking branch 'upstream/2.4' into merge-2.4
- #1538 from StevenPuttemans:bugfix_3283
- #1545 from alalek:ocl_test_fix_rng
- #1551 from alalek:cmake_install_win
- #1570 from ilya-lavrenov:ipp_warn_fix
- #1573 from alalek:perf_simple_strategy
- #1574 from alalek:svm_workaround
- #1576 from alalek:ocl_fix_cl_double
- #1577 from ilya-lavrenov:ocl_setto_opencl12
- #1578 from asmorkalov:android_fd_cp_fix
- #1579 from ilya-lavrenov:ocl_norm
- #1582 from sperrholz:ocl-arithm-additions
- #1586 from ilya-lavrenov:ocl_setto_win_fix
- #1589 from ilya-lavrenov:pr1582_fix
- #1591 from alalek:ocl_remove_cl_hpp_h
- #1592 from alalek:ocl_program_cache_update
- #1593 from ilya-lavrenov:ocl_war_on_double
- #1594 from ilya-lavrenov:ocl_perf
- #1595 from alalek:cl_code_cleanup
- #1596 from alalek:test_fix_run_py
- #1597 from alalek:ocl_fix_cleanup
- #1598 from alalek:ocl_fix_build_mac
- #1599 from ilya-lavrenov:ocl_mac_kernel_warnings
- #1601 from ilya-lavrenov:ocl_fix_tvl1_and_sparse
- #1602 from alalek:ocl_test_dump_info
- #1603 from ilya-lavrenov:ocl_disable_svm_noblas
- #1605 from alalek:ocl_fixes
- #1606 from ilya-lavrenov:ocl_imgproc
- #1607 from ilya-lavrenov:ocl_fft_cleanup
- #1608 from alalek:fix_warn_upd_haar
- #1609 from ilya-lavrenov:ocl_some_optimization
- #1610 from alalek:ocl_fix_perf_kalman
- #1612 from alalek:ocl_fix_string_info
- #1614 from ilya-lavrenov:ocl_svm_misprint
- #1616 from ilya-lavrenov:ocl_cvtColor
- #1617 from ilya-lavrenov:ocl_info
- #1622 from a0byte:2.4
- #1625 from ilya-lavrenov:to_string
Conflicts:
cmake/OpenCVConfig.cmake
cmake/OpenCVDetectPython.cmake
cmake/OpenCVGenConfig.cmake
modules/core/CMakeLists.txt
modules/nonfree/src/surf.ocl.cpp
modules/ocl/include/opencv2/ocl/ocl.hpp
modules/ocl/include/opencv2/ocl/private/util.hpp
modules/ocl/perf/main.cpp
modules/ocl/src/arithm.cpp
modules/ocl/src/cl_operations.cpp
modules/ocl/src/cl_programcache.cpp
modules/ocl/src/color.cpp
modules/ocl/src/fft.cpp
modules/ocl/src/filtering.cpp
modules/ocl/src/gemm.cpp
modules/ocl/src/haar.cpp
modules/ocl/src/imgproc.cpp
modules/ocl/src/matrix_operations.cpp
modules/ocl/src/pyrlk.cpp
modules/ocl/src/split_merge.cpp
modules/ocl/src/svm.cpp
modules/ocl/test/main.cpp
modules/ocl/test/test_fft.cpp
modules/ocl/test/test_moments.cpp
modules/ocl/test/test_objdetect.cpp
modules/ocl/test/test_optflow.cpp
modules/ocl/test/utility.hpp
modules/python/CMakeLists.txt
modules/ts/include/opencv2/ts.hpp
modules/ts/src/ts_perf.cpp
samples/android/face-detection/jni/DetectionBasedTracker_jni.cpp
History
Updated by Olexa Bilaniuk about 13 years ago
The revision that I have attempted to build is r7306, although the particular file has had the incorrect call since r7052 and preprocessor directives since r7048.
Updated by Alexander Shishkov about 13 years ago
- Category set to highgui-images
Updated by Alexander Shishkov almost 13 years ago
- Target version deleted ()
Updated by Alexander Shishkov almost 13 years ago
- Target version deleted ()
Updated by Alexander Reshetnikov almost 13 years ago
- Target version set to 2.4.0
- Assignee set to Alexander Shishkov
Updated by Alexander Shishkov almost 13 years ago
We should rewrite it using new API for cocoa.
- Target version changed from 2.4.0 to 3.0
Updated by Alexander Shishkov almost 13 years ago
- Priority changed from High to Normal
Updated by Andrey Kamaev over 12 years ago
- Category changed from highgui-images to highgui-gui
Updated by Maksim Shabunin over 9 years ago
Issue has been transferred to GitHub: https://github.com/Itseez/opencv/issues/4329