{"action":"created","issue":{"url":"https://api.github.com/repos/IntelRealSense/librealsense/issues/2352","repository_url":"https://api.github.com/repos/IntelRealSense/librealsense","labels_url":"https://api.github.com/repos/IntelRealSense/librealsense/issues/2352/labels{/name}","comments_url":"https://api.github.com/repos/IntelRealSense/librealsense/issues/2352/comments","events_url":"https://api.github.com/repos/IntelRealSense/librealsense/issues/2352/events","html_url":"https://github.com/IntelRealSense/librealsense/issues/2352","id":356877223,"node_id":"MDU6SXNzdWUzNTY4NzcyMjM=","number":2352,"title":"Building examples (capture) realsense D435","user":{"login":"c3ramos","id":38235003,"node_id":"MDQ6VXNlcjM4MjM1MDAz","avatar_url":"https://avatars1.githubusercontent.com/u/38235003?v=4","gravatar_id":"","url":"https://api.github.com/users/c3ramos","html_url":"https://github.com/c3ramos","followers_url":"https://api.github.com/users/c3ramos/followers","following_url":"https://api.github.com/users/c3ramos/following{/other_user}","gists_url":"https://api.github.com/users/c3ramos/gists{/gist_id}","starred_url":"https://api.github.com/users/c3ramos/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/c3ramos/subscriptions","organizations_url":"https://api.github.com/users/c3ramos/orgs","repos_url":"https://api.github.com/users/c3ramos/repos","events_url":"https://api.github.com/users/c3ramos/events{/privacy}","received_events_url":"https://api.github.com/users/c3ramos/received_events","type":"User","site_admin":false},"labels":[{"id":783023241,"node_id":"MDU6TGFiZWw3ODMwMjMyNDE=","url":"https://api.github.com/repos/IntelRealSense/librealsense/labels/Linux","name":"Linux","color":"006b75","default":false},{"id":335715762,"node_id":"MDU6TGFiZWwzMzU3MTU3NjI=","url":"https://api.github.com/repos/IntelRealSense/librealsense/labels/installation","name":"installation","color":"d4c5f9","default":false}],"state":"open","locked":false,"assignee":{"login":"RealSense-Customer-Engineering","id":34384799,"node_id":"MDQ6VXNlcjM0Mzg0Nzk5","avatar_url":"https://avatars0.githubusercontent.com/u/34384799?v=4","gravatar_id":"","url":"https://api.github.com/users/RealSense-Customer-Engineering","html_url":"https://github.com/RealSense-Customer-Engineering","followers_url":"https://api.github.com/users/RealSense-Customer-Engineering/followers","following_url":"https://api.github.com/users/RealSense-Customer-Engineering/following{/other_user}","gists_url":"https://api.github.com/users/RealSense-Customer-Engineering/gists{/gist_id}","starred_url":"https://api.github.com/users/RealSense-Customer-Engineering/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/RealSense-Customer-Engineering/subscriptions","organizations_url":"https://api.github.com/users/RealSense-Customer-Engineering/orgs","repos_url":"https://api.github.com/users/RealSense-Customer-Engineering/repos","events_url":"https://api.github.com/users/RealSense-Customer-Engineering/events{/privacy}","received_events_url":"https://api.github.com/users/RealSense-Customer-Engineering/received_events","type":"User","site_admin":false},"assignees":[{"login":"RealSense-Customer-Engineering","id":34384799,"node_id":"MDQ6VXNlcjM0Mzg0Nzk5","avatar_url":"https://avatars0.githubusercontent.com/u/34384799?v=4","gravatar_id":"","url":"https://api.github.com/users/RealSense-Customer-Engineering","html_url":"https://github.com/RealSense-Customer-Engineering","followers_url":"https://api.github.com/users/RealSense-Customer-Engineering/followers","following_url":"https://api.github.com/users/RealSense-Customer-Engineering/following{/other_user}","gists_url":"https://api.github.com/users/RealSense-Customer-Engineering/gists{/gist_id}","starred_url":"https://api.github.com/users/RealSense-Customer-Engineering/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/RealSense-Customer-Engineering/subscriptions","organizations_url":"https://api.github.com/users/RealSense-Customer-Engineering/orgs","repos_url":"https://api.github.com/users/RealSense-Customer-Engineering/repos","events_url":"https://api.github.com/users/RealSense-Customer-Engineering/events{/privacy}","received_events_url":"https://api.github.com/users/RealSense-Customer-Engineering/received_events","type":"User","site_admin":false}],"milestone":null,"comments":3,"created_at":"2018-09-04T16:01:36Z","updated_at":"2018-09-18T23:10:36Z","closed_at":null,"author_association":"NONE","body":"| Required Info                         |                                                                |\r\n|---------------------------------|------------------------------------------- |\r\n| Camera Model                       |D435 | \r\n| Firmware Version                   | RealSense viewer 2.16.0 | \r\n| Operating System & Version |  Ubuntu 16.04 lTS | \r\n| Kernel Version (Linux Only)    | 4.15.0-33-generic                                     | \r\n| Platform                                 |PC |\r\n| SDK Version                            | 2.0                        | \r\n| Language                            | C++                   | \r\n| Segment\t\t\t| Building from source                   | \r\n\r\nI am experiencing problems when trying to build from source the examples provided by intel ( librealsense/examples at master · IntelRealSense/librealsense · GitHub  ) . \r\nFirst, I installed the realsense sdk following the instructions provided here librealsense/distribution_linux.md at master · IntelRealSense/librealsense · GitHub   and here librealsense/installation.md at master · IntelRealSense/librealsense · GitHub  , and have been able to run realsense-viewer without any issues.\r\n\r\nThen, I tried building the capture example. To do this I created a build directory inside examples/capture and run  :\r\n\r\n     cmake ..  -DBUILD_GRAPHICAL_EXAMPLES=true , from examples/capture/build\r\n\r\nwith the following output:\r\n\r\n\r\n\r\n-- The C compiler identification is GNU 5.4.0\r\n\r\n-- The CXX compiler identification is GNU 5.4.0\r\n\r\n-- Check for working C compiler: /usr/bin/cc\r\n\r\n-- Check for working C compiler: /usr/bin/cc -- works\r\n\r\n-- Detecting C compiler ABI info\r\n\r\n-- Detecting C compiler ABI info - done\r\n\r\n-- Detecting C compile features\r\n\r\n-- Detecting C compile features - done\r\n\r\n-- Check for working CXX compiler: /usr/bin/c++\r\n\r\n-- Check for working CXX compiler: /usr/bin/c++ -- works\r\n\r\n-- Detecting CXX compiler ABI info\r\n\r\n-- Detecting CXX compiler ABI info - done\r\n\r\n-- Detecting CXX compile features\r\n\r\n-- Detecting CXX compile features - done\r\n\r\n-- Performing Test COMPILER_SUPPORTS_CXX11\r\n\r\n-- Performing Test COMPILER_SUPPORTS_CXX11 - Success\r\n\r\n-- Performing Test COMPILER_SUPPORTS_CXX0X\r\n\r\n-- Performing Test COMPILER_SUPPORTS_CXX0X - Success\r\n\r\n-- Configuring done\r\n\r\n-- Generating done\r\n\r\n-- Build files have been written to: /home/awdw/realsense_install/librealsense/examples/capture/build\r\n\r\nThen I run :\r\n\r\nmake\r\n\r\nwith the following output:\r\n\r\n\r\n\r\n```\r\nScanning dependencies of target rs-capture\r\n\r\n[ 50%] Building CXX object CMakeFiles/rs-capture.dir/rs-capture.cpp.o\r\n\r\nIn file included from /home/awdw/realsense_install/librealsense/examples/capture/rs-capture.cpp:5:0:\r\n\r\n/home/awdw/realsense_install/librealsense/examples/capture/../example.hpp: In member function ‘rect texture::calc_grid(float2, int)’:\r\n\r\n/home/awdw/realsense_install/librealsense/examples/capture/../example.hpp:189:40: warning: narrowing conversion of ‘w’ from ‘double’ to ‘float’ inside { } [-Wnarrowing]\r\n\r\n         return rect{ w, h, new_w, new_h}; //column count, line count, cell width cell height\r\n\r\n                                        ^\r\n\r\n/home/awdw/realsense_install/librealsense/examples/capture/../example.hpp:189:40: warning: narrowing conversion of ‘h’ from ‘double’ to ‘float’ inside { } [-Wnarrowing]\r\n\r\n/home/awdw/realsense_install/librealsense/examples/capture/../example.hpp:189:40: warning: narrowing conversion of ‘new_w’ from ‘double’ to ‘float’ inside { } [-Wnarrowing]\r\n\r\n/home/awdw/realsense_install/librealsense/examples/capture/../example.hpp:189:40: warning: narrowing conversion of ‘new_h’ from ‘double’ to ‘float’ inside { } [-Wnarrowing]\r\n\r\n[100%] Linking CXX executable rs-capture\r\n\r\nCMakeFiles/rs-capture.dir/rs-capture.cpp.o: In function `draw_pointcloud(float, float, glfw_state&, rs2::points&)':\r\n\r\nrs-capture.cpp:(.text+0x647): undefined reference to `glPopMatrix'\r\n\r\nrs-capture.cpp:(.text+0x651): undefined reference to `glPushAttrib'\r\n\r\nrs-capture.cpp:(.text+0x676): undefined reference to `glClearColor'\r\n\r\nrs-capture.cpp:(.text+0x680): undefined reference to `glClear'\r\n\r\nrs-capture.cpp:(.text+0x68a): undefined reference to `glMatrixMode'\r\n\r\nrs-capture.cpp:(.text+0x68f): undefined reference to `glPushMatrix'\r\n\r\nrs-capture.cpp:(.text+0x6d1): undefined reference to `gluPerspective'\r\n\r\nrs-capture.cpp:(.text+0x6db): undefined reference to `glMatrixMode'\r\n\r\nrs-capture.cpp:(.text+0x6e0): undefined reference to `glPushMatrix'\r\n\r\nrs-capture.cpp:(.text+0x71f): undefined reference to `gluLookAt'\r\n\r\nrs-capture.cpp:(.text+0x754): undefined reference to `glTranslatef'\r\n\r\nrs-capture.cpp:(.text+0x77a): undefined reference to `glRotated'\r\n\r\nrs-capture.cpp:(.text+0x79f): undefined reference to `glRotated'\r\n\r\nrs-capture.cpp:(.text+0x7b4): undefined reference to `glTranslatef'\r\n\r\nrs-capture.cpp:(.text+0x7ca): undefined reference to `glPointSize'\r\n\r\nrs-capture.cpp:(.text+0x7d4): undefined reference to `glEnable'\r\n\r\nrs-capture.cpp:(.text+0x7de): undefined reference to `glEnable'\r\n\r\nrs-capture.cpp:(.text+0x7fa): undefined reference to `glBindTexture'\r\n\r\nrs-capture.cpp:(.text+0x844): undefined reference to `glTexParameterfv'\r\n\r\nrs-capture.cpp:(.text+0x858): undefined reference to `glTexParameteri'\r\n\r\nrs-capture.cpp:(.text+0x86c): undefined reference to `glTexParameteri'\r\n\r\nrs-capture.cpp:(.text+0x876): undefined reference to `glBegin'\r\n\r\nrs-capture.cpp:(.text+0x91e): undefined reference to `glVertex3fv'\r\n\r\nrs-capture.cpp:(.text+0x942): undefined reference to `glTexCoord2fv'\r\n\r\nrs-capture.cpp:(.text+0x950): undefined reference to `glEnd'\r\n\r\nrs-capture.cpp:(.text+0x955): undefined reference to `glPopMatrix'\r\n\r\nrs-capture.cpp:(.text+0x95f): undefined reference to `glMatrixMode'\r\n\r\nrs-capture.cpp:(.text+0x964): undefined reference to `glPopMatrix'\r\n\r\nrs-capture.cpp:(.text+0x969): undefined reference to `glPopAttrib'\r\n\r\nrs-capture.cpp:(.text+0x96e): undefined reference to `glPushMatrix'\r\n\r\nCMakeFiles/rs-capture.dir/rs-capture.cpp.o: In function `rs2::error::error(rs2_error*)':\r\n\r\nrs-capture.cpp:(.text._ZN3rs25errorC2EP9rs2_error[_ZN3rs25errorC5EP9rs2_error]+0x2a): undefined reference to `rs2_get_error_message'\r\n\r\nrs-capture.cpp:(.text._ZN3rs25errorC2EP9rs2_error[_ZN3rs25errorC5EP9rs2_error]+0x74): undefined reference to `rs2_get_failed_function'\r\n\r\nrs-capture.cpp:(.text._ZN3rs25errorC2EP9rs2_error[_ZN3rs25errorC5EP9rs2_error]+0x9b): undefined reference to `rs2_get_failed_function'\r\n\r\nrs-capture.cpp:(.text._ZN3rs25errorC2EP9rs2_error[_ZN3rs25errorC5EP9rs2_error]+0x102): undefined reference to `rs2_get_failed_args'\r\n\r\nrs-capture.cpp:(.text._ZN3rs25errorC2EP9rs2_error[_ZN3rs25errorC5EP9rs2_error]+0x129): undefined reference to `rs2_get_failed_args'\r\n\r\nrs-capture.cpp:(.text._ZN3rs25errorC2EP9rs2_error[_ZN3rs25errorC5EP9rs2_error]+0x190): undefined reference to `rs2_get_librealsense_exception_type'\r\n\r\nrs-capture.cpp:(.text._ZN3rs25errorC2EP9rs2_error[_ZN3rs25errorC5EP9rs2_error]+0x1a5): undefined reference to `rs2_free_error'\r\n\r\nCMakeFiles/rs-capture.dir/rs-capture.cpp.o: In function `rs2::error::handle(rs2_error*)':\r\n\r\nrs-capture.cpp:(.text._ZN3rs25error6handleEP9rs2_error[_ZN3rs25error6handleEP9rs2_error]+0x22): undefined reference to `rs2_get_librealsense_exception_type'\r\n\r\nCMakeFiles/rs-capture.dir/rs-capture.cpp.o: In function `rs2::stream_profile::stream_profile(rs2_stream_profile const*)':\r\n\r\nrs-capture.cpp:(.text._ZN3rs214stream_profileC2EPK18rs2_stream_profile[_ZN3rs214stream_profileC5EPK18rs2_stream_profile]+0xc1): undefined reference to `rs2_get_stream_profile_data'\r\n\r\nrs-capture.cpp:(.text._ZN3rs214stream_profileC2EPK18rs2_stream_profile[_ZN3rs214stream_profileC5EPK18rs2_stream_profile]+0xe7): undefined reference to `rs2_is_stream_profile_default'\r\n\r\nCMakeFiles/rs-capture.dir/rs-capture.cpp.o: In function `rs2::frame::~frame()':\r\n\r\nrs-capture.cpp:(.text._ZN3rs25frameD2Ev[_ZN3rs25frameD5Ev]+0x23): undefined reference to `rs2_release_frame'\r\n\r\nCMakeFiles/rs-capture.dir/rs-capture.cpp.o: In function `rs2::frame::get_data() const':\r\n\r\nrs-capture.cpp:(.text._ZNK3rs25frame8get_dataEv[_ZNK3rs25frame8get_dataEv]+0x35): undefined reference to `rs2_get_frame_data'\r\n\r\nCMakeFiles/rs-capture.dir/rs-capture.cpp.o: In function `rs2::frame::get_profile() const':\r\n\r\nrs-capture.cpp:(.text._ZNK3rs25frame11get_profileEv[_ZNK3rs25frame11get_profileEv]+0x39): undefined reference to `rs2_get_frame_stream_profile'\r\n\r\nCMakeFiles/rs-capture.dir/rs-capture.cpp.o: In function `rs2::frame::add_ref() const':\r\n\r\nrs-capture.cpp:(.text._ZNK3rs25frame7add_refEv[_ZNK3rs25frame7add_refEv]+0x35): undefined reference to `rs2_frame_add_ref'\r\n\r\nCMakeFiles/rs-capture.dir/rs-capture.cpp.o: In function `rs2::frame::reset()':\r\n\r\nrs-capture.cpp:(.text._ZN3rs25frame5resetEv[_ZN3rs25frame5resetEv]+0x23): undefined reference to `rs2_release_frame'\r\n\r\nCMakeFiles/rs-capture.dir/rs-capture.cpp.o: In function `rs2::video_frame::video_frame(rs2::frame const&)':\r\n\r\nrs-capture.cpp:(.text._ZN3rs211video_frameC2ERKNS_5frameE[_ZN3rs211video_frameC5ERKNS_5frameE]+0x6d): undefined reference to `rs2_is_frame_extendable_to'\r\n\r\nCMakeFiles/rs-capture.dir/rs-capture.cpp.o: In function `rs2::video_frame::get_width() const':\r\n\r\nrs-capture.cpp:(.text._ZNK3rs211video_frame9get_widthEv[_ZNK3rs211video_frame9get_widthEv]+0x3d): undefined reference to `rs2_get_frame_width'\r\n\r\nCMakeFiles/rs-capture.dir/rs-capture.cpp.o: In function `rs2::video_frame::get_height() const':\r\n\r\nrs-capture.cpp:(.text._ZNK3rs211video_frame10get_heightEv[_ZNK3rs211video_frame10get_heightEv]+0x3d): undefined reference to `rs2_get_frame_height'\r\n\r\nCMakeFiles/rs-capture.dir/rs-capture.cpp.o: In function `rs2::points::get_vertices() const':\r\n\r\nrs-capture.cpp:(.text._ZNK3rs26points12get_verticesEv[_ZNK3rs26points12get_verticesEv]+0x3d): undefined reference to `rs2_get_frame_vertices'\r\n\r\nCMakeFiles/rs-capture.dir/rs-capture.cpp.o: In function `rs2::points::get_texture_coordinates() const':\r\n\r\nrs-capture.cpp:(.text._ZNK3rs26points23get_texture_coordinatesEv[_ZNK3rs26points23get_texture_coordinatesEv]+0x3d): undefined reference to `rs2_get_frame_texture_coordinates'\r\n\r\nCMakeFiles/rs-capture.dir/rs-capture.cpp.o: In function `rs2::depth_frame::depth_frame(rs2::frame const&)':\r\n\r\nrs-capture.cpp:(.text._ZN3rs211depth_frameC2ERKNS_5frameE[_ZN3rs211depth_frameC5ERKNS_5frameE]+0x6d): undefined reference to `rs2_is_frame_extendable_to'\r\n\r\nCMakeFiles/rs-capture.dir/rs-capture.cpp.o: In function `rs2::frameset::frameset(rs2::frame const&)':\r\n\r\nrs-capture.cpp:(.text._ZN3rs28framesetC2ERKNS_5frameE[_ZN3rs28framesetC5ERKNS_5frameE]+0x79): undefined reference to `rs2_is_frame_extendable_to'\r\n\r\nrs-capture.cpp:(.text._ZN3rs28framesetC2ERKNS_5frameE[_ZN3rs28framesetC5ERKNS_5frameE]+0xea): undefined reference to `rs2_embedded_frames_count'\r\n\r\nCMakeFiles/rs-capture.dir/rs-capture.cpp.o: In function `rs2::frame_queue::frame_queue(unsigned int)':\r\n\r\nrs-capture.cpp:(.text._ZN3rs211frame_queueC2Ej[_ZN3rs211frame_queueC5Ej]+0x4b): undefined reference to `rs2_create_frame_queue'\r\n\r\nrs-capture.cpp:(.text._ZN3rs211frame_queueC2Ej[_ZN3rs211frame_queueC5Ej]+0x57): undefined reference to `rs2_delete_frame_queue'\r\n\r\nCMakeFiles/rs-capture.dir/rs-capture.cpp.o: In function `rs2::frame_queue::enqueue(rs2::frame) const':\r\n\r\nrs-capture.cpp:(.text._ZNK3rs211frame_queue7enqueueENS_5frameE[_ZNK3rs211frame_queue7enqueueENS_5frameE]+0x2d): undefined reference to `rs2_enqueue_frame'\r\n\r\nCMakeFiles/rs-capture.dir/rs-capture.cpp.o: In function `rs2::processing_block::invoke(rs2::frame) const':\r\n\r\nrs-capture.cpp:(.text._ZNK3rs216processing_block6invokeENS_5frameE[_ZNK3rs216processing_block6invokeENS_5frameE]+0x6f): undefined reference to `rs2_process_frame'\r\n\r\nCMakeFiles/rs-capture.dir/rs-capture.cpp.o: In function `rs2::colorizer::init()':\r\n\r\nrs-capture.cpp:(.text._ZN3rs29colorizer4initEv[_ZN3rs29colorizer4initEv]+0x30): undefined reference to `rs2_create_colorizer'\r\n\r\nrs-capture.cpp:(.text._ZN3rs29colorizer4initEv[_ZN3rs29colorizer4initEv]+0x3c): undefined reference to `rs2_delete_processing_block'\r\n\r\nCMakeFiles/rs-capture.dir/rs-capture.cpp.o: In function `rs2::context::context()':\r\n\r\nrs-capture.cpp:(.text._ZN3rs27contextC2Ev[_ZN3rs27contextC5Ev]+0x3d): undefined reference to `rs2_create_context'\r\n\r\nrs-capture.cpp:(.text._ZN3rs27contextC2Ev[_ZN3rs27contextC5Ev]+0x49): undefined reference to `rs2_delete_context'\r\n\r\nCMakeFiles/rs-capture.dir/rs-capture.cpp.o: In function `rs2::pipeline::pipeline(rs2::context)':\r\n\r\nrs-capture.cpp:(.text._ZN3rs28pipelineC2ENS_7contextE[_ZN3rs28pipelineC5ENS_7contextE]+0x4e): undefined reference to `rs2_create_pipeline'\r\n\r\nrs-capture.cpp:(.text._ZN3rs28pipelineC2ENS_7contextE[_ZN3rs28pipelineC5ENS_7contextE]+0x5a): undefined reference to `rs2_delete_pipeline'\r\n\r\nCMakeFiles/rs-capture.dir/rs-capture.cpp.o: In function `rs2::pipeline::start()':\r\n\r\nrs-capture.cpp:(.text._ZN3rs28pipeline5startEv[_ZN3rs28pipeline5startEv]+0x42): undefined reference to `rs2_pipeline_start'\r\n\r\nrs-capture.cpp:(.text._ZN3rs28pipeline5startEv[_ZN3rs28pipeline5startEv]+0x4e): undefined reference to `rs2_delete_pipeline_profile'\r\n\r\nCMakeFiles/rs-capture.dir/rs-capture.cpp.o: In function `rs2::pipeline::wait_for_frames(unsigned int) const':\r\n\r\nrs-capture.cpp:(.text._ZNK3rs28pipeline15wait_for_framesEj[_ZNK3rs28pipeline15wait_for_framesEj]+0x47): undefined reference to `rs2_pipeline_wait_for_frames'\r\n\r\nCMakeFiles/rs-capture.dir/rs-capture.cpp.o: In function `rs2::log_to_console(rs2_log_severity)':\r\n\r\nrs-capture.cpp:(.text._ZN3rs214log_to_consoleE16rs2_log_severity[_ZN3rs214log_to_consoleE16rs2_log_severity]+0x2f): undefined reference to `rs2_log_to_console'\r\n\r\nCMakeFiles/rs-capture.dir/rs-capture.cpp.o: In function `draw_text(int, int, char const*)':\r\n\r\nrs-capture.cpp:(.text._Z9draw_textiiPKc[_Z9draw_textiiPKc]+0x33): undefined reference to `glEnableClientState'\r\n\r\nrs-capture.cpp:(.text._Z9draw_textiiPKc[_Z9draw_textiiPKc]+0x51): undefined reference to `glVertexPointer'\r\n\r\nrs-capture.cpp:(.text._Z9draw_textiiPKc[_Z9draw_textiiPKc]+0xa2): undefined reference to `glDrawArrays'\r\n\r\nrs-capture.cpp:(.text._Z9draw_textiiPKc[_Z9draw_textiiPKc]+0xac): undefined reference to `glDisableClientState'\r\n\r\nCMakeFiles/rs-capture.dir/rs-capture.cpp.o: In function `texture::upload(rs2::video_frame const&)':\r\n\r\nrs-capture.cpp:(.text._ZN7texture6uploadERKN3rs211video_frameE[_ZN7texture6uploadERKN3rs211video_frameE]+0x50): undefined reference to `glGenTextures'\r\n\r\nrs-capture.cpp:(.text._ZN7texture6uploadERKN3rs211video_frameE[_ZN7texture6uploadERKN3rs211video_frameE]+0x55): undefined reference to `glGetError'\r\n\r\nrs-capture.cpp:(.text._ZN7texture6uploadERKN3rs211video_frameE[_ZN7texture6uploadERKN3rs211video_frameE]+0xf6): undefined reference to `glBindTexture'\r\n\r\nrs-capture.cpp:(.text._ZN7texture6uploadERKN3rs211video_frameE[_ZN7texture6uploadERKN3rs211video_frameE]+0x15b): undefined reference to `glTexImage2D'\r\n\r\nrs-capture.cpp:(.text._ZN7texture6uploadERKN3rs211video_frameE[_ZN7texture6uploadERKN3rs211video_frameE]+0x1af): undefined reference to `glTexImage2D'\r\n\r\nrs-capture.cpp:(.text._ZN7texture6uploadERKN3rs211video_frameE[_ZN7texture6uploadERKN3rs211video_frameE]+0x200): undefined reference to `glTexImage2D'\r\n\r\nrs-capture.cpp:(.text._ZN7texture6uploadERKN3rs211video_frameE[_ZN7texture6uploadERKN3rs211video_frameE]+0x246): undefined reference to `glTexParameteri'\r\n\r\nrs-capture.cpp:(.text._ZN7texture6uploadERKN3rs211video_frameE[_ZN7texture6uploadERKN3rs211video_frameE]+0x25a): undefined reference to `glTexParameteri'\r\n\r\nrs-capture.cpp:(.text._ZN7texture6uploadERKN3rs211video_frameE[_ZN7texture6uploadERKN3rs211video_frameE]+0x26e): undefined reference to `glTexParameteri'\r\n\r\nrs-capture.cpp:(.text._ZN7texture6uploadERKN3rs211video_frameE[_ZN7texture6uploadERKN3rs211video_frameE]+0x282): undefined reference to `glTexParameteri'\r\n\r\nrs-capture.cpp:(.text._ZN7texture6uploadERKN3rs211video_frameE[_ZN7texture6uploadERKN3rs211video_frameE]+0x291): undefined reference to `glPixelStorei'\r\n\r\nrs-capture.cpp:(.text._ZN7texture6uploadERKN3rs211video_frameE[_ZN7texture6uploadERKN3rs211video_frameE]+0x2a0): undefined reference to `glBindTexture'\r\n\r\nCMakeFiles/rs-capture.dir/rs-capture.cpp.o: In function `texture::show(rect const&) const':\r\n\r\nrs-capture.cpp:(.text._ZNK7texture4showERK4rect[_ZNK7texture4showERK4rect]+0x2c): undefined reference to `glBindTexture'\r\n\r\nrs-capture.cpp:(.text._ZNK7texture4showERK4rect[_ZNK7texture4showERK4rect]+0x36): undefined reference to `glEnable'\r\n\r\nrs-capture.cpp:(.text._ZNK7texture4showERK4rect[_ZNK7texture4showERK4rect]+0x40): undefined reference to `glBegin'\r\n\r\nrs-capture.cpp:(.text._ZNK7texture4showERK4rect[_ZNK7texture4showERK4rect]+0x51): undefined reference to `glTexCoord2f'\r\n\r\nrs-capture.cpp:(.text._ZNK7texture4showERK4rect[_ZNK7texture4showERK4rect]+0x7d): undefined reference to `glVertex2f'\r\n\r\nrs-capture.cpp:(.text._ZNK7texture4showERK4rect[_ZNK7texture4showERK4rect]+0x8a): undefined reference to `glTexCoord2f'\r\n\r\nrs-capture.cpp:(.text._ZNK7texture4showERK4rect[_ZNK7texture4showERK4rect]+0xa9): undefined reference to `glVertex2f'\r\n\r\nrs-capture.cpp:(.text._ZNK7texture4showERK4rect[_ZNK7texture4showERK4rect]+0xbe): undefined reference to `glTexCoord2f'\r\n\r\nrs-capture.cpp:(.text._ZNK7texture4showERK4rect[_ZNK7texture4showERK4rect]+0xf4): undefined reference to `glVertex2f'\r\n\r\nrs-capture.cpp:(.text._ZNK7texture4showERK4rect[_ZNK7texture4showERK4rect]+0x105): undefined reference to `glTexCoord2f'\r\n\r\nrs-capture.cpp:(.text._ZNK7texture4showERK4rect[_ZNK7texture4showERK4rect]+0x12b): undefined reference to `glVertex2f'\r\n\r\nrs-capture.cpp:(.text._ZNK7texture4showERK4rect[_ZNK7texture4showERK4rect]+0x130): undefined reference to `glEnd'\r\n\r\nrs-capture.cpp:(.text._ZNK7texture4showERK4rect[_ZNK7texture4showERK4rect]+0x13a): undefined reference to `glDisable'\r\n\r\nrs-capture.cpp:(.text._ZNK7texture4showERK4rect[_ZNK7texture4showERK4rect]+0x149): undefined reference to `glBindTexture'\r\n\r\nrs-capture.cpp:(.text._ZNK7texture4showERK4rect[_ZNK7texture4showERK4rect]+0x157): undefined reference to `rs2_stream_to_string'\r\n\r\nCMakeFiles/rs-capture.dir/rs-capture.cpp.o: In function `window::window(int, int, char const*)::{lambda(GLFWwindow*, int, int, int)#1}::operator()(GLFWwindow*, int, int, int) const':\r\n\r\nrs-capture.cpp:(.text._ZZN6windowC4EiiPKcENKUlP10GLFWwindowiiiE_clES3_iii[_ZZN6windowC4EiiPKcENKUlP10GLFWwindowiiiE_clES3_iii]+0x22): undefined reference to `glfwGetWindowUserPointer'\r\n\r\nCMakeFiles/rs-capture.dir/rs-capture.cpp.o: In function `window::window(int, int, char const*)::{lambda(GLFWwindow*, double, double)#2}::operator()(GLFWwindow*, double, double) const':\r\n\r\nrs-capture.cpp:(.text._ZZN6windowC4EiiPKcENKUlP10GLFWwindowddE0_clES3_dd[_ZZN6windowC4EiiPKcENKUlP10GLFWwindowddE0_clES3_dd]+0x22): undefined reference to `glfwGetWindowUserPointer'\r\n\r\nCMakeFiles/rs-capture.dir/rs-capture.cpp.o: In function `window::window(int, int, char const*)::{lambda(GLFWwindow*, double, double)#3}::operator()(GLFWwindow*, double, double) const':\r\n\r\nrs-capture.cpp:(.text._ZZN6windowC4EiiPKcENKUlP10GLFWwindowddE1_clES3_dd[_ZZN6windowC4EiiPKcENKUlP10GLFWwindowddE1_clES3_dd]+0x22): undefined reference to `glfwGetWindowUserPointer'\r\n\r\nCMakeFiles/rs-capture.dir/rs-capture.cpp.o: In function `window::window(int, int, char const*)::{lambda(GLFWwindow*, int, int, int, int)#4}::operator()(GLFWwindow*, int, int, int, int) const':\r\n\r\nrs-capture.cpp:(.text._ZZN6windowC4EiiPKcENKUlP10GLFWwindowiiiiE2_clES3_iiii[_ZZN6windowC4EiiPKcENKUlP10GLFWwindowiiiiE2_clES3_iiii]+0x26): undefined reference to `glfwGetWindowUserPointer'\r\n\r\nCMakeFiles/rs-capture.dir/rs-capture.cpp.o: In function `window::window(int, int, char const*)':\r\n\r\nrs-capture.cpp:(.text._ZN6windowC2EiiPKc[_ZN6windowC5EiiPKc]+0xa8): undefined reference to `glfwInit'\r\n\r\nrs-capture.cpp:(.text._ZN6windowC2EiiPKc[_ZN6windowC5EiiPKc]+0xc4): undefined reference to `glfwCreateWindow'\r\n\r\nrs-capture.cpp:(.text._ZN6windowC2EiiPKc[_ZN6windowC5EiiPKc]+0x121): undefined reference to `glfwMakeContextCurrent'\r\n\r\nrs-capture.cpp:(.text._ZN6windowC2EiiPKc[_ZN6windowC5EiiPKc]+0x13b): undefined reference to `glfwSetWindowUserPointer'\r\n\r\nrs-capture.cpp:(.text._ZN6windowC2EiiPKc[_ZN6windowC5EiiPKc]+0x160): undefined reference to `glfwSetMouseButtonCallback'\r\n\r\nrs-capture.cpp:(.text._ZN6windowC2EiiPKc[_ZN6windowC5EiiPKc]+0x185): undefined reference to `glfwSetScrollCallback'\r\n\r\nrs-capture.cpp:(.text._ZN6windowC2EiiPKc[_ZN6windowC5EiiPKc]+0x1aa): undefined reference to `glfwSetCursorPosCallback'\r\n\r\nrs-capture.cpp:(.text._ZN6windowC2EiiPKc[_ZN6windowC5EiiPKc]+0x1cf): undefined reference to `glfwSetKeyCallback'\r\n\r\nCMakeFiles/rs-capture.dir/rs-capture.cpp.o: In function `window::operator bool()':\r\n\r\nrs-capture.cpp:(.text._ZN6windowcvbEv[_ZN6windowcvbEv]+0xd): undefined reference to `glPopMatrix'\r\n\r\nrs-capture.cpp:(.text._ZN6windowcvbEv[_ZN6windowcvbEv]+0x20): undefined reference to `glfwSwapBuffers'\r\n\r\nrs-capture.cpp:(.text._ZN6windowcvbEv[_ZN6windowcvbEv]+0x33): undefined reference to `glfwWindowShouldClose'\r\n\r\nrs-capture.cpp:(.text._ZN6windowcvbEv[_ZN6windowcvbEv]+0x40): undefined reference to `glfwPollEvents'\r\n\r\nrs-capture.cpp:(.text._ZN6windowcvbEv[_ZN6windowcvbEv]+0x6c): undefined reference to `glfwGetFramebufferSize'\r\n\r\nrs-capture.cpp:(.text._ZN6windowcvbEv[_ZN6windowcvbEv]+0x76): undefined reference to `glClear'\r\n\r\nrs-capture.cpp:(.text._ZN6windowcvbEv[_ZN6windowcvbEv]+0x9d): undefined reference to `glViewport'\r\n\r\nrs-capture.cpp:(.text._ZN6windowcvbEv[_ZN6windowcvbEv]+0xa2): undefined reference to `glPushMatrix'\r\n\r\nrs-capture.cpp:(.text._ZN6windowcvbEv[_ZN6windowcvbEv]+0xce): undefined reference to `glfwGetWindowSize'\r\n\r\nrs-capture.cpp:(.text._ZN6windowcvbEv[_ZN6windowcvbEv]+0x117): undefined reference to `glOrtho'\r\n\r\nCMakeFiles/rs-capture.dir/rs-capture.cpp.o: In function `window::~window()':\r\n\r\nrs-capture.cpp:(.text._ZN6windowD2Ev[_ZN6windowD5Ev]+0x1b): undefined reference to `glfwDestroyWindow'\r\n\r\nrs-capture.cpp:(.text._ZN6windowD2Ev[_ZN6windowD5Ev]+0x20): undefined reference to `glfwTerminate'\r\n\r\nCMakeFiles/rs-capture.dir/rs-capture.cpp.o: In function `void rs2::frameset::foreach<rs2::frameset::first_or_default(rs2_stream, rs2_format) const::{lambda(rs2::frame)#1}>(rs2::frameset::first_or_default(rs2_stream, rs2_format) const::{lambda(rs2::frame)#1}) const':\r\n\r\nrs-capture.cpp:(.text._ZNK3rs28frameset7foreachIZNKS0_16first_or_defaultE10rs2_stream10rs2_formatEUlNS_5frameEE_EEvT_[_ZNK3rs28frameset7foreachIZNKS0_16first_or_defaultE10rs2_stream10rs2_formatEUlNS_5frameEE_EEvT_]+0x7d): undefined reference to `rs2_extract_frame'\r\n\r\nCMakeFiles/rs-capture.dir/rs-capture.cpp.o: In function `void rs2::frameset::foreach<rs2::frameset::get_infrared_frame(unsigned long) const::{lambda(rs2::frame const&)#1}>(rs2::frameset::get_infrared_frame(unsigned long) const::{lambda(rs2::frame const&)#1}) const':\r\n\r\nrs-capture.cpp:(.text._ZNK3rs28frameset7foreachIZNKS0_18get_infrared_frameEmEUlRKNS_5frameEE_EEvT_[_ZNK3rs28frameset7foreachIZNKS0_18get_infrared_frameEmEUlRKNS_5frameEE_EEvT_]+0x7d): undefined reference to `rs2_extract_frame'\r\n\r\nCMakeFiles/rs-capture.dir/rs-capture.cpp.o: In function `std::enable_if<std::is_base_of<rs2::frame, rs2::frame>::value, bool>::type rs2::frame_queue::poll_for_frame<rs2::frame>(rs2::frame*) const':\r\n\r\nrs-capture.cpp:(.text._ZNK3rs211frame_queue14poll_for_frameINS_5frameEEENSt9enable_ifIXsrSt10is_base_ofIS2_T_E5valueEbE4typeEPS5_[_ZNK3rs211frame_queue14poll_for_frameINS_5frameEEENSt9enable_ifIXsrSt10is_base_ofIS2_T_E5valueEbE4typeEPS5_]+0x4e): undefined reference to `rs2_poll_for_frame'\r\n\r\nCMakeFiles/rs-capture.dir/rs-capture.cpp.o: In function `void rs2::processing_block::start<rs2::frame_queue>(rs2::frame_queue)':\r\n\r\nrs-capture.cpp:(.text._ZN3rs216processing_block5startINS_11frame_queueEEEvT_[_ZN3rs216processing_block5startINS_11frame_queueEEEvT_]+0x81): undefined reference to `rs2_start_processing'\r\n\r\ncollect2: error: ld returned 1 exit status\r\n\r\nCMakeFiles/rs-capture.dir/build.make:94: recipe for target 'rs-capture' failed\r\n\r\nmake[2]: *** [rs-capture] Error 1\r\n\r\nCMakeFiles/Makefile2:67: recipe for target 'CMakeFiles/rs-capture.dir/all' failed\r\n\r\nmake[1]: *** [CMakeFiles/rs-capture.dir/all] Error 2\r\n\r\nMakefile:127: recipe for target 'all' failed\r\n\r\nmake: *** [all] Error 2\r\n\r\n```\r\nAfter that I checked that I had correctly installing OpenGL, finding  :\r\nOpenGL version string: 3.0 Mesa 18.0.5\r\n\r\nFinally, I would like to know what is missing in the procedure described above in order to correctly build from source.My knowledge of cmake is limited and I think the error must be related to that but I have not been able to find it.\r\n\r\nI would appreciate references to any documentation where it is explained how to properly build from source.\r\n\r\nTHanks.\r\n\r\n\r\n"},"comment":{"url":"https://api.github.com/repos/IntelRealSense/librealsense/issues/comments/422588819","html_url":"https://github.com/IntelRealSense/librealsense/issues/2352#issuecomment-422588819","issue_url":"https://api.github.com/repos/IntelRealSense/librealsense/issues/2352","id":422588819,"node_id":"MDEyOklzc3VlQ29tbWVudDQyMjU4ODgxOQ==","user":{"login":"RealSense-Customer-Engineering","id":34384799,"node_id":"MDQ6VXNlcjM0Mzg0Nzk5","avatar_url":"https://avatars0.githubusercontent.com/u/34384799?v=4","gravatar_id":"","url":"https://api.github.com/users/RealSense-Customer-Engineering","html_url":"https://github.com/RealSense-Customer-Engineering","followers_url":"https://api.github.com/users/RealSense-Customer-Engineering/followers","following_url":"https://api.github.com/users/RealSense-Customer-Engineering/following{/other_user}","gists_url":"https://api.github.com/users/RealSense-Customer-Engineering/gists{/gist_id}","starred_url":"https://api.github.com/users/RealSense-Customer-Engineering/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/RealSense-Customer-Engineering/subscriptions","organizations_url":"https://api.github.com/users/RealSense-Customer-Engineering/orgs","repos_url":"https://api.github.com/users/RealSense-Customer-Engineering/repos","events_url":"https://api.github.com/users/RealSense-Customer-Engineering/events{/privacy}","received_events_url":"https://api.github.com/users/RealSense-Customer-Engineering/received_events","type":"User","site_admin":false},"created_at":"2018-09-18T23:10:36Z","updated_at":"2018-09-18T23:10:36Z","author_association":"COLLABORATOR","body":"[Realsense Customer Engineering Team Comment]\nHI @c3ramos,\n\nIs the issue resolved based on @ev-mp's suggestion?"}}
{"actor":{"display_login":"RealSense-Customer-Engineering"}}