Quantcast
Viewing all articles
Browse latest Browse all 40524

Problem with compilation of project generator and examples on Ubuntu 14?

Hi all,

I'm using this:

$ lsb_release -a
Distributor ID:    Ubuntu
Description:    Ubuntu 14.04.3 LTS
Release:    14.04
Codename:    trusty

$ uname -a
Linux mypc 3.19.0-26-generic #28~14.04.1-Ubuntu SMP Wed Aug 12 14:12:35 UTC 2015 i686 i686 i686 GNU/Linux

I got openFrameworks via github; I don't use CodeBlocks etc, so I thought I'd be able to compile the examples directly from the command line. My procedure was approx like this:

$ git submodule add https://github.com/openframeworks/openFrameworks.git # instead of git clone 
$ cd openFrameworks/
$ git submodule init # Submodule 'apps/projectGenerator'
$ git submodule update

The currently checked out versions are:

openFrameworks$ git log -1
commit bb4ab7804681d7dd5952561b233f24e39a7166c4
openFrameworks$ cd apps/projectGenerator
projectGenerator$ git log -1
commit cf3ec11932b2c3d91ac7b082391d16764ae03fd6

Then I did:

$ cd /.../openFrameworks/scripts/linux/ubuntu
$ ./install_dependencies.sh
$ cd /.../openFrameworks/scripts/linux/
$ ./compileOF.sh
$ ./compilePG.sh    # to compile the project generator

This compilation process apparently finished OK, because I got:

GUI project generator was correctly installed in /.../openFrameworks/projectGenerator
Command line project generator was correctly installed and will work once the
terminal is restarted. To get more help run projectGenerator --help

Now, when I call this particular executable, I get an error:

$ /.../openFrameworks/projectGenerator/projectGenerator
[ error ] ofAppGLFWWindow: 65544: GLX: Failed to create context: GLXBadFBConfig
[ error ] ofAppGLFWWindow: couldn't create GLFW window
Segmentation fault (core dumped)

... however, there is a projectGenerator in /usr/local/bin/projectGenerator, and when I call that executable, it works ??!

So first question - what is the difference between /usr/local/bin/projectGenerator and /.../openFrameworks/projectGenerator/projectGenerator? All I can notice so far are different file sizes:

$ ls -la /.../openFrameworks/projectGenerator/projectGenerator /usr/local/bin/projectGenerator 
-rwxrwxr-x 1 user user 6135629 Sep  7 10:16 /.../openFrameworks/projectGenerator/projectGenerator
-rwxr-xr-x 1 root root 5786530 Sep  7 10:25 /usr/local/bin/projectGenerator

Then, as per http://forum.openframeworks.cc/t/build-all-examples-on-debian/13959 :

the version in github doesn't have the makefiles you can create them using the project generator or copying them from the template in scripts/linux/template
you'll need both the Makefile and the config.make file

... I did the following bash one-liner:

openFrameworks$ for ix in $(find examples -name 'src'); do ixx=$(dirname $ix); echo $ix $ixx; projectGenerator -o".../openFrameworks" $ixx; done

... which utilized the /usr/local/bin/projectGenerator, and as such (apparently) passed.

Then I did this:

$ cd openFrameworks/scripts/linux/
$ ./buildAllExamples.sh

... and it generally compiled, except for this error:

/.../openFrameworks/libs/openFrameworks/app/ofAppEGLWindow.h:63:21: fatal error: EGL/egl.h: No such file or directory

... which happened apparently for examples/gles/customEGLWindowSettings. So I looked a bit, found that this header file should be in libegl1-mesa-dev (libegl1-mesa-dev-lts-trusty) which I sudo apt-get installed, after which the compile error was gone - but there appeared a linker error:

obj/linux/Debug/src/main.o: In function `void ofMainLoop::addWindow<ofAppEGLWindow>(std::shared_ptr<ofAppEGLWindow>)':
/.../openFrameworks/libs/openFrameworks/app/ofMainLoop.h:21: undefined reference to `ofAppEGLWindow::pollEvents()'
collect2: error: ld returned 1 exit status

So, I commented the exits in the buildAllExamples.sh to allow it to compile the rest, and the process seemingly completed. But now, if I try to run any of the examples, I get the same error as for the /.../openFrameworks/projectGenerator/projectGenerator:

openFrameworks$ examples/3d/3DPrimitivesExample/bin/3DPrimitivesExample
[ error ] ofAppGLFWWindow: 65544: GLX: Failed to create context: GLXBadFBConfig
[ error ] ofAppGLFWWindow: couldn't create GLFW window

openFrameworks$ examples/empty/emptyExample/bin/emptyExample
[ error ] ofAppGLFWWindow: 65544: GLX: Failed to create context: GLXBadFBConfig
[ error ] ofAppGLFWWindow: couldn't create GLFW window
Segmentation fault (core dumped)

So, my question is - what am I doing wrong, and how to I get the examples and the projectGenerator to run?

This apparently is related to OpenGL problems, and I'm not really sure what to provide here, so for starters here's the output for glxinfo (also, glxgears works fine on my computer):

$ glxinfo
name of display: :0.0
display: :0  screen: 0
direct rendering: Yes
server glx vendor string: SGI
server glx version string: 1.4
server glx extensions:
    GLX_ARB_create_context, GLX_ARB_create_context_profile, 
    GLX_ARB_fbconfig_float, GLX_ARB_framebuffer_sRGB, GLX_ARB_multisample, 
    GLX_EXT_create_context_es2_profile, GLX_EXT_framebuffer_sRGB, 
    GLX_EXT_import_context, GLX_EXT_texture_from_pixmap, GLX_EXT_visual_info, 
    GLX_EXT_visual_rating, GLX_INTEL_swap_event, GLX_MESA_copy_sub_buffer, 
    GLX_OML_swap_method, GLX_SGIS_multisample, GLX_SGIX_fbconfig, 
    GLX_SGIX_pbuffer, GLX_SGIX_visual_select_group, GLX_SGI_swap_control
client glx vendor string: Mesa Project and SGI
client glx version string: 1.4
client glx extensions:
    GLX_ARB_create_context, GLX_ARB_create_context_profile, 
    GLX_ARB_create_context_robustness, GLX_ARB_fbconfig_float, 
    GLX_ARB_framebuffer_sRGB, GLX_ARB_get_proc_address, GLX_ARB_multisample, 
    GLX_EXT_buffer_age, GLX_EXT_create_context_es2_profile, 
    GLX_EXT_fbconfig_packed_float, GLX_EXT_framebuffer_sRGB, 
    GLX_EXT_import_context, GLX_EXT_texture_from_pixmap, GLX_EXT_visual_info, 
    GLX_EXT_visual_rating, GLX_INTEL_swap_event, GLX_MESA_copy_sub_buffer, 
    GLX_MESA_multithread_makecurrent, GLX_MESA_query_renderer, 
    GLX_MESA_swap_control, GLX_OML_swap_method, GLX_OML_sync_control, 
    GLX_SGIS_multisample, GLX_SGIX_fbconfig, GLX_SGIX_pbuffer, 
    GLX_SGIX_visual_select_group, GLX_SGI_make_current_read, 
    GLX_SGI_swap_control, GLX_SGI_video_sync
GLX version: 1.4
GLX extensions:
    GLX_ARB_create_context, GLX_ARB_create_context_profile, 
    GLX_ARB_fbconfig_float, GLX_ARB_framebuffer_sRGB, 
    GLX_ARB_get_proc_address, GLX_ARB_multisample, 
    GLX_EXT_create_context_es2_profile, GLX_EXT_framebuffer_sRGB, 
    GLX_EXT_import_context, GLX_EXT_texture_from_pixmap, GLX_EXT_visual_info, 
    GLX_EXT_visual_rating, GLX_INTEL_swap_event, GLX_MESA_copy_sub_buffer, 
    GLX_MESA_multithread_makecurrent, GLX_MESA_query_renderer, 
    GLX_MESA_swap_control, GLX_OML_swap_method, GLX_OML_sync_control, 
    GLX_SGIS_multisample, GLX_SGIX_fbconfig, GLX_SGIX_pbuffer, 
    GLX_SGIX_visual_select_group, GLX_SGI_make_current_read, 
    GLX_SGI_swap_control, GLX_SGI_video_sync
OpenGL vendor string: Intel Open Source Technology Center
OpenGL renderer string: Mesa DRI Intel(R) IGD x86/MMX/SSE2
OpenGL version string: 1.4 Mesa 10.5.9
OpenGL extensions:
    GL_3DFX_texture_compression_FXT1, GL_AMD_shader_trinary_minmax, 
    GL_ANGLE_texture_compression_dxt3, GL_ANGLE_texture_compression_dxt5, 
    GL_APPLE_object_purgeable, GL_APPLE_packed_pixels, 
    GL_APPLE_vertex_array_object, GL_ARB_ES2_compatibility, 
    GL_ARB_clear_buffer_object, GL_ARB_compressed_texture_pixel_storage, 
    GL_ARB_copy_buffer, GL_ARB_debug_output, GL_ARB_depth_texture, 
    GL_ARB_draw_buffers, GL_ARB_draw_elements_base_vertex, 
    GL_ARB_explicit_attrib_location, GL_ARB_explicit_uniform_location, 
    GL_ARB_fragment_program, GL_ARB_fragment_shader, 
    GL_ARB_framebuffer_object, GL_ARB_get_program_binary, 
    GL_ARB_half_float_pixel, GL_ARB_internalformat_query, 
    GL_ARB_invalidate_subdata, GL_ARB_map_buffer_alignment, 
    GL_ARB_map_buffer_range, GL_ARB_multi_bind, GL_ARB_multisample, 
    GL_ARB_multitexture, GL_ARB_pixel_buffer_object, GL_ARB_point_parameters, 
    GL_ARB_point_sprite, GL_ARB_provoking_vertex, GL_ARB_robustness, 
    GL_ARB_sampler_objects, GL_ARB_separate_shader_objects, 
    GL_ARB_shader_objects, GL_ARB_shading_language_100, GL_ARB_shadow, 
    GL_ARB_sync, GL_ARB_texture_border_clamp, GL_ARB_texture_compression, 
    GL_ARB_texture_cube_map, GL_ARB_texture_env_add, 
    GL_ARB_texture_env_combine, GL_ARB_texture_env_crossbar, 
    GL_ARB_texture_env_dot3, GL_ARB_texture_mirrored_repeat, 
    GL_ARB_texture_non_power_of_two, GL_ARB_texture_rectangle, 
    GL_ARB_texture_storage, GL_ARB_transpose_matrix, 
    GL_ARB_vertex_array_object, GL_ARB_vertex_attrib_binding, 
    GL_ARB_vertex_buffer_object, GL_ARB_vertex_program, GL_ARB_vertex_shader, 
    GL_ARB_window_pos, GL_ATI_blend_equation_separate, GL_ATI_draw_buffers, 
    GL_ATI_separate_stencil, GL_ATI_texture_env_combine3, GL_EXT_abgr, 
    GL_EXT_bgra, GL_EXT_blend_color, GL_EXT_blend_equation_separate, 
    GL_EXT_blend_func_separate, GL_EXT_blend_minmax, GL_EXT_blend_subtract, 
    GL_EXT_compiled_vertex_array, GL_EXT_copy_texture, 
    GL_EXT_draw_range_elements, GL_EXT_fog_coord, GL_EXT_framebuffer_blit, 
    GL_EXT_framebuffer_object, GL_EXT_gpu_program_parameters, 
    GL_EXT_multi_draw_arrays, GL_EXT_packed_depth_stencil, 
    GL_EXT_packed_pixels, GL_EXT_pixel_buffer_object, GL_EXT_point_parameters, 
    GL_EXT_polygon_offset, GL_EXT_provoking_vertex, GL_EXT_rescale_normal, 
    GL_EXT_secondary_color, GL_EXT_separate_specular_color, 
    GL_EXT_shadow_funcs, GL_EXT_stencil_two_side, GL_EXT_stencil_wrap, 
    GL_EXT_subtexture, GL_EXT_texture, GL_EXT_texture3D, 
    GL_EXT_texture_compression_dxt1, GL_EXT_texture_compression_s3tc, 
    GL_EXT_texture_cube_map, GL_EXT_texture_edge_clamp, 
    GL_EXT_texture_env_add, GL_EXT_texture_env_combine, 
    GL_EXT_texture_env_dot3, GL_EXT_texture_filter_anisotropic, 
    GL_EXT_texture_lod_bias, GL_EXT_texture_object, GL_EXT_texture_rectangle, 
    GL_EXT_texture_sRGB, GL_EXT_texture_sRGB_decode, GL_EXT_vertex_array, 
    GL_IBM_multimode_draw_arrays, GL_IBM_rasterpos_clip, 
    GL_IBM_texture_mirrored_repeat, GL_INGR_blend_func_separate, 
    GL_KHR_context_flush_control, GL_KHR_debug, GL_MESA_pack_invert, 
    GL_MESA_window_pos, GL_MESA_ycbcr_texture, GL_NV_blend_square, 
    GL_NV_light_max_exponent, GL_NV_packed_depth_stencil, 
    GL_NV_texgen_reflection, GL_NV_texture_env_combine4, 
    GL_NV_texture_rectangle, GL_OES_EGL_image, GL_OES_read_format, 
    GL_S3_s3tc, GL_SGIS_generate_mipmap, GL_SGIS_texture_border_clamp, 
    GL_SGIS_texture_edge_clamp, GL_SGIS_texture_lod, GL_SUN_multi_draw_arrays

12 GLX Visuals
    visual  x   bf lv rg d st  colorbuffer  sr ax dp st accumbuffer  ms  cav
  id dep cl sp  sz l  ci b ro  r  g  b  a F gb bf th cl  r  g  b  a ns b eat
...
24 GLXFBConfigs:
    visual  x   bf lv rg d st  colorbuffer  sr ax dp st accumbuffer  ms  cav
  id dep cl sp  sz l  ci b ro  r  g  b  a F gb bf th cl  r  g  b  a ns b eat

Thanks in advance for any help,
Cheers!


Viewing all articles
Browse latest Browse all 40524

Trending Articles