glXCreateContextAttribsARB not found (on OpenGL 4.2 driver, GLX 1.4) - c
Strangely enough, despite the fact that I have GLX 1.4, it appears that I don't have glXCreateContextAttribsARB in my repos.
I wonder if there's any reasonable explanation for this? This can't be a common issue.
glxinfo
name of display: :0
display: :0 screen: 0
direct rendering: Yes
server glx vendor string: NVIDIA Corporation
server glx version string: 1.4
server glx extensions:
GLX_EXT_visual_info, GLX_EXT_visual_rating, GLX_SGIX_fbconfig,
GLX_SGIX_pbuffer, GLX_SGI_video_sync, GLX_SGI_swap_control,
GLX_EXT_swap_control, GLX_EXT_texture_from_pixmap, GLX_ARB_create_context,
GLX_ARB_create_context_profile, GLX_EXT_create_context_es2_profile,
GLX_ARB_create_context_robustness, GLX_ARB_multisample,
GLX_NV_float_buffer, GLX_ARB_fbconfig_float, GLX_EXT_framebuffer_sRGB
client glx vendor string: NVIDIA Corporation
client glx version string: 1.4
client glx extensions:
GLX_ARB_get_proc_address, GLX_ARB_multisample, GLX_EXT_visual_info,
GLX_EXT_visual_rating, GLX_EXT_import_context, GLX_SGI_video_sync,
GLX_NV_swap_group, GLX_NV_video_out, GLX_SGIX_fbconfig, GLX_SGIX_pbuffer,
GLX_SGI_swap_control, GLX_EXT_swap_control, GLX_ARB_create_context,
GLX_ARB_create_context_profile, GLX_NV_float_buffer,
GLX_ARB_fbconfig_float, GLX_EXT_fbconfig_packed_float,
GLX_EXT_texture_from_pixmap, GLX_EXT_framebuffer_sRGB,
GLX_NV_present_video, GLX_NV_copy_image, GLX_NV_multisample_coverage,
GLX_NV_video_capture, GLX_EXT_create_context_es2_profile,
GLX_ARB_create_context_robustness
GLX version: 1.4
GLX extensions:
GLX_EXT_visual_info, GLX_EXT_visual_rating, GLX_SGIX_fbconfig,
GLX_SGIX_pbuffer, GLX_SGI_video_sync, GLX_SGI_swap_control,
GLX_EXT_swap_control, GLX_EXT_texture_from_pixmap, GLX_ARB_create_context,
GLX_ARB_create_context_profile, GLX_EXT_create_context_es2_profile,
GLX_ARB_create_context_robustness, GLX_ARB_multisample,
GLX_NV_float_buffer, GLX_ARB_fbconfig_float, GLX_EXT_framebuffer_sRGB,
GLX_ARB_get_proc_address
OpenGL vendor string: NVIDIA Corporation
OpenGL renderer string: GeForce GTX 550 Ti/PCI/SSE2
OpenGL version string: 4.2.0 NVIDIA 290.10
OpenGL shading language version string: 4.20 NVIDIA via Cg compiler
OpenGL extensions:
GL_ARB_base_instance, GL_ARB_blend_func_extended,
GL_ARB_color_buffer_float, GL_ARB_compatibility,
GL_ARB_compressed_texture_pixel_storage, GL_ARB_conservative_depth,
GL_ARB_copy_buffer, GL_ARB_depth_buffer_float, GL_ARB_depth_clamp,
GL_ARB_depth_texture, GL_ARB_draw_buffers, GL_ARB_draw_buffers_blend,
GL_ARB_draw_indirect, GL_ARB_draw_elements_base_vertex,
GL_ARB_draw_instanced, GL_ARB_ES2_compatibility,
GL_ARB_explicit_attrib_location, GL_ARB_fragment_coord_conventions,
GL_ARB_fragment_program, GL_ARB_fragment_program_shadow,
GL_ARB_fragment_shader, GL_ARB_framebuffer_object,
GL_ARB_framebuffer_sRGB, GL_ARB_geometry_shader4,
GL_ARB_get_program_binary, GL_ARB_gpu_shader5, GL_ARB_gpu_shader_fp64,
GL_ARB_half_float_pixel, GL_ARB_half_float_vertex, GL_ARB_imaging,
GL_ARB_instanced_arrays, GL_ARB_internalformat_query,
GL_ARB_map_buffer_alignment, GL_ARB_map_buffer_range, GL_ARB_multisample,
GL_ARB_multitexture, GL_ARB_occlusion_query, GL_ARB_occlusion_query2,
GL_ARB_pixel_buffer_object, GL_ARB_point_parameters, GL_ARB_point_sprite,
GL_ARB_provoking_vertex, GL_ARB_robustness, GL_ARB_sample_shading,
GL_ARB_sampler_objects, GL_ARB_seamless_cube_map,
GL_ARB_separate_shader_objects, GL_ARB_shader_atomic_counters,
GL_ARB_shader_bit_encoding, GL_ARB_shader_image_load_store,
GL_ARB_shader_objects, GL_ARB_shader_precision, GL_ARB_shader_subroutine,
GL_ARB_shading_language_100, GL_ARB_shading_language_420pack,
GL_ARB_shading_language_include, GL_ARB_shading_language_packing,
GL_ARB_shadow, GL_ARB_sync, GL_ARB_tessellation_shader,
GL_ARB_texture_border_clamp, GL_ARB_texture_buffer_object,
GL_ARB_texture_buffer_object_rgb32, GL_ARB_texture_compression,
GL_ARB_texture_compression_bptc, GL_ARB_texture_compression_rgtc,
GL_ARB_texture_cube_map, GL_ARB_texture_cube_map_array,
GL_ARB_texture_env_add, GL_ARB_texture_env_combine,
GL_ARB_texture_env_crossbar, GL_ARB_texture_env_dot3,
GL_ARB_texture_float, GL_ARB_texture_gather,
GL_ARB_texture_mirrored_repeat, GL_ARB_texture_multisample,
GL_ARB_texture_non_power_of_two, GL_ARB_texture_query_lod,
GL_ARB_texture_rectangle, GL_ARB_texture_rg, GL_ARB_texture_rgb10_a2ui,
GL_ARB_texture_storage, GL_ARB_texture_swizzle, GL_ARB_timer_query,
GL_ARB_transform_feedback2, GL_ARB_transform_feedback3,
GL_ARB_transform_feedback_instanced, GL_ARB_transpose_matrix,
GL_ARB_uniform_buffer_object, GL_ARB_vertex_array_bgra,
GL_ARB_vertex_array_object, GL_ARB_vertex_attrib_64bit,
GL_ARB_vertex_buffer_object, GL_ARB_vertex_program, GL_ARB_vertex_shader,
GL_ARB_vertex_type_2_10_10_10_rev, GL_ARB_viewport_array,
GL_ARB_window_pos, GL_ATI_draw_buffers, GL_ATI_texture_float,
GL_ATI_texture_mirror_once, GL_S3_s3tc, GL_EXT_texture_env_add,
GL_EXT_abgr, GL_EXT_bgra, GL_EXT_bindable_uniform, 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_Cg_shader, GL_EXT_depth_bounds_test, GL_EXT_direct_state_access,
GL_EXT_draw_buffers2, GL_EXT_draw_instanced, GL_EXT_draw_range_elements,
GL_EXT_fog_coord, GL_EXT_framebuffer_blit, GL_EXT_framebuffer_multisample,
GL_EXTX_framebuffer_mixed_formats, GL_EXT_framebuffer_object,
GL_EXT_framebuffer_sRGB, GL_EXT_geometry_shader4,
GL_EXT_gpu_program_parameters, GL_EXT_gpu_shader4,
GL_EXT_multi_draw_arrays, GL_EXT_packed_depth_stencil,
GL_EXT_packed_float, GL_EXT_packed_pixels, GL_EXT_pixel_buffer_object,
GL_EXT_point_parameters, GL_EXT_provoking_vertex, GL_EXT_rescale_normal,
GL_EXT_secondary_color, GL_EXT_separate_shader_objects,
GL_EXT_separate_specular_color, GL_EXT_shader_image_load_store,
GL_EXT_shadow_funcs, GL_EXT_stencil_two_side, GL_EXT_stencil_wrap,
GL_EXT_texture3D, GL_EXT_texture_array, GL_EXT_texture_buffer_object,
GL_EXT_texture_compression_dxt1, GL_EXT_texture_compression_latc,
GL_EXT_texture_compression_rgtc, GL_EXT_texture_compression_s3tc,
GL_EXT_texture_cube_map, GL_EXT_texture_edge_clamp,
GL_EXT_texture_env_combine, GL_EXT_texture_env_dot3,
GL_EXT_texture_filter_anisotropic, GL_EXT_texture_format_BGRA8888,
GL_EXT_texture_integer, GL_EXT_texture_lod, GL_EXT_texture_lod_bias,
GL_EXT_texture_mirror_clamp, GL_EXT_texture_object,
GL_EXT_texture_shared_exponent, GL_EXT_texture_sRGB,
GL_EXT_texture_sRGB_decode, GL_EXT_texture_storage,
GL_EXT_texture_swizzle, GL_EXT_texture_type_2_10_10_10_REV,
GL_EXT_timer_query, GL_EXT_transform_feedback2, GL_EXT_vertex_array,
GL_EXT_vertex_array_bgra, GL_EXT_vertex_attrib_64bit,
GL_EXT_x11_sync_object, GL_EXT_import_sync_object, GL_IBM_rasterpos_clip,
GL_IBM_texture_mirrored_repeat, GL_KTX_buffer_region, GL_NV_alpha_test,
GL_NV_blend_minmax, GL_NV_blend_square, GL_NV_complex_primitives,
GL_NV_conditional_render, GL_NV_copy_depth_to_color, GL_NV_copy_image,
GL_NV_depth_buffer_float, GL_NV_depth_clamp, GL_NV_explicit_multisample,
GL_NV_fbo_color_attachments, GL_NV_fence, GL_NV_float_buffer,
GL_NV_fog_distance, GL_NV_fragdepth, GL_NV_fragment_program,
GL_NV_fragment_program_option, GL_NV_fragment_program2,
GL_NV_framebuffer_multisample_coverage, GL_NV_geometry_shader4,
GL_NV_gpu_program4, GL_NV_gpu_program4_1, GL_NV_gpu_program5,
GL_NV_gpu_program_fp64, GL_NV_gpu_shader5, GL_NV_half_float,
GL_NV_light_max_exponent, GL_NV_multisample_coverage,
GL_NV_multisample_filter_hint, GL_NV_occlusion_query,
GL_NV_packed_depth_stencil, GL_NV_parameter_buffer_object,
GL_NV_parameter_buffer_object2, GL_NV_path_rendering,
GL_NV_pixel_data_range, GL_NV_point_sprite, GL_NV_primitive_restart,
GL_NV_register_combiners, GL_NV_register_combiners2,
GL_NV_shader_atomic_counters, GL_NV_shader_buffer_load,
GL_NV_texgen_reflection, GL_NV_texture_barrier,
GL_NV_texture_compression_vtc, GL_NV_texture_env_combine4,
GL_NV_texture_expand_normal, GL_NV_texture_lod_clamp,
GL_NV_texture_multisample, GL_NV_texture_rectangle, GL_NV_texture_shader,
GL_NV_texture_shader2, GL_NV_texture_shader3, GL_NV_transform_feedback,
GL_NV_transform_feedback2, GL_NV_vdpau_interop, GL_NV_vertex_array_range,
GL_NV_vertex_array_range2, GL_NV_vertex_attrib_integer_64bit,
GL_NV_vertex_buffer_unified_memory, GL_NV_vertex_program,
GL_NV_vertex_program1_1, GL_NV_vertex_program2,
GL_NV_vertex_program2_option, GL_NV_vertex_program3,
GL_NVX_conditional_render, GL_NVX_gpu_memory_info, GL_OES_depth24,
GL_OES_depth32, GL_OES_depth_texture, GL_OES_element_index_uint,
GL_OES_fbo_render_mipmap, GL_OES_get_program_binary, GL_OES_mapbuffer,
GL_OES_packed_depth_stencil, GL_OES_rgb8_rgba8,
GL_OES_standard_derivatives, GL_OES_texture_3D, GL_OES_texture_float,
GL_OES_texture_float_linear, GL_OES_texture_half_float,
GL_OES_texture_half_float_linear, GL_OES_texture_npot,
GL_OES_vertex_array_object, GL_OES_vertex_half_float,
GL_SGIS_generate_mipmap, GL_SGIS_texture_lod, GL_SGIX_depth_texture,
GL_SGIX_shadow, GL_SUN_slice_accum
Obviously buffer binding, ARB, and all that other nice stuff is supported, but why not glXCreateContextAttribsARB?
Even stranger, what I do have is glXCreateContextAttribsARBPRoc, which I'm curious to know if it would serve as an alternative?
This compiles, for example:
`glXCreateContextAttribsARBProc glxccarb = 0;`
When you say "don't have", I assume you mean "if I try to call a function of this name directly, my app won't link".
That's somewhat by design. The list of functions directly exported from libGL is not growing. If it did, an app that links against a (function exported only by a) new libGL would fail to even launch against an old one. That's bad.
glXCreateContextAttribsARB, like all other extension functions, should be looked up using glXGetProcAddressARB. Better yet, use GLEW so you don't have to worry about this level of detail again.
Related
Too many functions exported in TDengine database libtaos.so/libtaos.dylib
on macOS: nm -g debug/build/lib/libtaos.1.dylib shows, that not only functions declared in taos.h are exported in dynamic library, but also internal functions, which is not elegant. I would say this operation might cause some potential security vulnerability in target machine. 0000000000384ec0 T _vnodeProcessQueryMsg 0000000000387750 T _vnodeProcessSyncMsg 0000000000381360 T _vnodeProcessWriteMsg 0000000000385b40 T _vnodeProposeCommitOnNeed 0000000000385ea0 T _vnodeProposeWriteMsg 000000000037dd60 T _vnodeQueryClose 000000000037dcf0 T _vnodeQueryOpen 000000000037dd30 T _vnodeQueryPreClose 00000000003856a0 T _vnodeRedirectRpcMsg 000000000037f320 T _vnodeResetLoad 000000000037d440 T _vnodeRollback 000000000037c3a0 T _vnodeSaveInfo 00000000003800e0 T _vnodeScheduleTask 000000000037c200 T _vnodeShouldCommit 000000000037c320 T _vnodeShouldCommitOld 000000000037d350 T _vnodeShouldRollback 0000000000389ee0 T _vnodeSnapRead 0000000000389e20 T _vnodeSnapReaderClose 0000000000389cd0 T _vnodeSnapReaderOpen 000000000038aee0 T _vnodeSnapWrite 000000000038aa80 T _vnodeSnapWriterClose 000000000038a8f0 T _vnodeSnapWriterOpen 00000000003793b0 T _vnodeStart 00000000003793d0 T _vnodeStop 00000000003885f0 T _vnodeSyncCheckTimeout 0000000000388580 T _vnodeSyncClose 000000000037d310 T _vnodeSyncCommit 0000000000387c90 T _vnodeSyncOpen 0000000000388510 T _vnodeSyncPostClose 0000000000388400 T _vnodeSyncPreClose 0000000000388320 T _vnodeSyncStart 000000000037c180 T _vnodeUpdCommitSched 00000000003855e0 T _vnodeUpdateMetaRsp 000000000037bde0 T _vnodeValidateTableHash 000000000037fcc0 T _vnode_done_commit 000000000037fca0 T _vnode_wait_commit 0000000000441c70 T _voteGrantedCreate 0000000000441d70 T _voteGrantedDestroy 0000000000441e20 T _voteGrantedMajority 00000000004420f0 T _voteGrantedReset 0000000000441da0 T _voteGrantedUpdate 0000000000441e40 T _voteGrantedVote 00000000004422e0 T _votesRespondAdd 0000000000442130 T _votesRespondCreate 00000000004421d0 T _votesRespondDestory
React Native local network permission define generating plugin
I have an app that is a few months old and at some point there was a request for permission of local network, which is not true, so I want to find a plugin that generates this or is there a way to turn off the permission request? List of my plugins: "dependencies": { "#criipto/auth-js": "^3.4.7", "#expo/config-plugins": "^5.0.2", "#expo/html-elements": "^0.2.0", "#expo/vector-icons": "^13.0.0", "#logrocket/react-native": "^1.7.3", "#react-native-async-storage/async-storage": "~1.17.3", "#react-native-community/slider": "4.2.4", "#react-native-firebase/analytics": "14.11.1", "#react-native-firebase/app": "14.11.1", "#react-native-firebase/messaging": "14.11.1", "#react-native-masked-view/masked-view": "0.2.8", "#react-native-picker/picker": "2.4.8", "#react-navigation/bottom-tabs": "^6.3.2", "#react-navigation/native": "^6.0.8", "#react-navigation/native-stack": "^6.7.0", "#reduxjs/toolkit": "^1.8.3", "#sentry/react-native": "4.2.2", "#shopify/react-native-skia": "0.1.157", "axios": "^0.27.2", "babel-plugin-module-resolver": "^4.1.0", "base-64": "^1.0.0", "expo": "^47.0.0", "expo-application": "~5.0.1", "expo-asset": "~8.6.2", "expo-auth-session": "~3.7.2", "expo-av": "~13.0.1", "expo-blur": "~12.0.1", "expo-build-properties": "~0.4.0", "expo-clipboard": "~4.0.1", "expo-constants": "~14.0.2", "expo-crypto": "~12.0.0", "expo-dev-client": "~2.0.0", "expo-device": "~5.0.0", "expo-file-system": "~15.1.1", "expo-font": "~11.0.1", "expo-gl": "~12.0.0", "expo-linear-gradient": "~12.0.1", "expo-linking": "~3.2.3", "expo-modules-autolinking": "~1.0.0", "expo-notifications": "~0.17.0", "expo-random": "~13.0.0", "expo-secure-store": "~12.0.0", "expo-sharing": "~11.0.1", "expo-splash-screen": "~0.17.5", "expo-status-bar": "~1.4.2", "expo-system-ui": "~2.0.1", "expo-three": "^2.2.1", "expo-updates": "~0.15.5", "expo-video-player": "^2.1.0", "expo-web-browser": "~12.0.0", "jwt-decode": "^3.1.2", "lodash.debounce": "^4.0.8", "moti": "^0.20.0", "native-base": "^3.4.9", "nativewind": "^2.0.10", "react": "18.1.0", "react-dom": "18.1.0", "react-native": "0.70.5", "react-native-avoid-softinput": "^3.0.1", "react-native-bouncy-checkbox": "^3.0.2", "react-native-css-gradient": "^0.4.0", "react-native-expo-viewport-units": "^0.0.8", "react-native-fast-image": "^8.6.1", "react-native-gesture-handler": "~2.8.0", "react-native-get-random-values": "~1.8.0", "react-native-keyboard-aware-scroll-view": "^0.9.5", "react-native-linear-gradient": "^2.6.2", "react-native-material-ripple": "^0.9.1", "react-native-modal": "^13.0.0", "react-native-paper": "^4.12.4", "react-native-reanimated": "^2.13.0", "react-native-redash": "^18.0.0", "react-native-render-html": "^6.1.0", "react-native-safe-area-context": "4.4.1", "react-native-screens": "~3.18.0", "react-native-share": "^7.9.0", "react-native-svg": "13.4.0", "react-native-web": "~0.18.7", "react-native-webview": "11.23.1", "react-redux": "^8.0.2", "redux-persist": "^6.0.0", "redux-persist-expo-securestore": "^2.0.0", "sentry-expo": "~5.0.0", "styled-components": "^5.3.6", "text-encoding": "^0.7.0", "three": "^0.143.0", "url": "^0.11.0" }, "devDependencies": { "#babel/core": "^7.19.3", "#expo/config-types": "^46.0.2", "#rnx-kit/dep-check": "^1.13.0", "#rtk-query/codegen-openapi": "^1.0.0", "#types/base-64": "^1.0.0", "#types/lodash.debounce": "^4.0.7", "#types/react": "~18.0.24", "#types/react-dom": "~18.0.8", "#types/react-native": "~0.70.6", "#types/react-native-material-ripple": "^0.9.2", "#types/redux-persist": "^4.3.1", "babel-plugin-root-import": "^6.6.0", "concurrently": "^7.3.0", "esbuild-runner": "^2.2.1", "postcss": "^8.4.14", "react-hook-form": "^7.35.0", "reactotron-react-native": "^5.0.3", "reactotron-redux": "^3.1.3", "tailwindcss": "^3.1.8", "ts-node": "^10.9.1", "typescript": "^4.6.3", "uri-scheme": "^1.0.120" }, I removed the plugin that was dated next to the date the problem was discovered, but it's impossible to say exactly when it appeared
Open old presumably Prolog "db"-file
I've got a binary ".db"-file which dates year 2000. I've been told it is a Prolog database. Is there any way I can view it/export the contents to text? If I open it with a text editor, several first lines are: H ] ]] ]G Ц ? 4 я я ‰e xЗЗ ] ц kdN(6 0 b$ # (######ДЗЗ$З(З/З3З:ЗIЗYЗnЗ{З€З’З З¬З»ЗЗЗТЗЫЗжЗтЗЗЗЗ$З2ЗEЗRЗ_ЗnЗЃЗ€З—ЗЄЗёЗЛЗУЗЭЗбЗцЗ ЗЗ1З;ЗGЗUЗ]ЗdЗjЗoЗuЗ~ЗЌЗRESTTEMP.DB Ќ ᥫҐл© ЇгЄв ”€Ћ ЄҐв Ї®« ж-вм ¬Ґб⮠஦¤ҐЁп ¬Ґб⮦ЁвҐ«мбвў® б Є Є®Ј® Ј®¤ ў Ї®б. Ј®¤ ஦¤ҐЁп ¬Ґбв® а Ў®вл ¤®«¦®бвм бЇҐжЁ «м®бвм ®Ўа §®ў ЁҐ ж-вм бгЇа㣠த®© п§лЄ ў®бЇЁв ЁҐ ”€Ћ ®вж த®¬ ®вҐж ж-вм ®вж த®© п§лЄ ®вж п§лЄЁ ®вж ”€Ћ ¬ вҐаЁ த®¬ ¬ вм ж-вм ¬ вҐаЁ த®© п§лЄ ¬ вҐаЁ п§лЄЁ ¬ вҐаЁ п§лЄ ¤Ґвбвў п§лЄ з.иЄ®«л п§лЄ б।Ґ© иЄ®«л а Ў®в ж-вм б®бҐ¤Ґ© ®ЎйҐЁҐ б б®бҐ¤п¬Ё ж-вм ¤а㧥© ®ЎйҐЁҐ б ¤аг§мп¬Ё ¬ Ј §Ё ᥫмб®ўҐв ”ЂЏ ®ЎйҐЁҐ б தЁвҐ«п¬Ё ®ЎйҐЁҐ б бгЇагЈ®¬ ®ЎйҐЁҐ
I've never heard of a standard "Prolog database" binary format. Try file command. It knows a lot of file signatures and may recognize your file.
Thanks for telling me it is not presumably a Prolog Database. I've consulted the guys, and it's finally turned out it's a Borland Paradox database, so I've used a free program to export it to csv.
How do I initialize the CMCalibratedMagneticField property so that it does not return zero?
This question has been asked before CMCalibratedMagneticField doesn't update but it wasn't really answered. I am very lost on this one. I'm using a simple formulation, but field.field.x, y, z are always zero. if (motionManager.deviceMotionAvailable) { [motionManager startDeviceMotionUpdatesToQueue:[NSOperationQueue currentQueue] withHandler: ^(CMDeviceMotion *motionData, NSError *error) { CMCalibratedMagneticField field = motionData.magneticField; NSLog(#"x: %f y:%f z:%f", field.field.x , field.field.y , field.field.z); }]; } Sample output is 2013-07-14 22:18:27.865 TestApp[6678:907] x: 0.000000 y:0.000000 z:0.000000 2013-07-14 22:18:27.869 TestApp[6678:907] x: 0.000000 y:0.000000 z:0.000000 2013-07-14 22:18:27.879 TestApp[6678:907] x: 0.000000 y:0.000000 z:0.000000 I am pretty certain the issue is not the phone as the preceding answer suggested: I am coding for a fairly modern 4S. I have the CoreMotion, CoreLocation, and CoreData frameworks in place -- maybe there is a header file I don't know about that I need to import in the implementation? currently I only seem to need #import <tgmath.h> but that is for other stuff. Any help would be appreciated! Tim Redfield
Try this instead: - (void)startDeviceMotionUpdatesUsingReferenceFrame:(CMAttitudeReferenceFrame)referenceFrame toQueue:(NSOperationQueue *)queue withHandler:(CMDeviceMotionHandler)handler with any of: CMAttitudeReferenceFrameXArbitraryCorrectedZVertical CMAttitudeReferenceFrameXMagneticNorthZVertical CMAttitudeReferenceFrameXTrueNorthZVertical but not: CMAttitudeReferenceFrameXArbitraryZVertical (another SO question you missed:CoreMotion - magneticField is always 0) if you want too much information on magnetometer data, see my answer to this question:In iOS, what is the difference between the Magnetic Field values from the Core Location and Core Motion frameworks?
Visual Studio 2005 always relinks the project when the project is generated with CMake
I have a project in Visual 2005 generated using CMake, and everytime I press F5 the linker relinks the objects, even if no modification was done. I have read other questions with similar problems, but the solution for them was: The time of the windows was wrong. It was making the executable to be created with the time in the future. Or The PDB created by the linker and by the compiler had the same name. I've checked that and I don't have that problem. Also, I have another solution for the project (that was not generated by CMake) and it works fine. I've checked the properties of each project and they are similar. This is the output generated in the BuildLog.htm: Build Log Build started: Project: remote4, Configuration: TTecDebug|Win32 Command Lines Creating temporary file "c:\advtec9\trunk\bin_sem_unittest\remote4\remote4.dir\TTecDebug\RSP00008649325832.rsp" with contents [ /OUT:"c:\T\bin\smartclient\TTecDebug..\TSmartClient.exe" /VERSION:0.0 /LIBPATH:"C:\Qt4\lib\TTecDebug" /LIBPATH:"C:\Qt4\lib" /LIBPATH:"C:\Qt4\plugins\imageformats\TTecDebug" /LIBPATH:"C:\Qt4\plugins\imageformats" /LIBPATH:"C:\Qt4\plugins\accessible\TTecDebug" /LIBPATH:"C:\Qt4\plugins\accessible" /LIBPATH:"C:\kdchart4\lib\TTecDebug" /LIBPATH:"C:\kdchart4\lib" /MANIFEST:NO /NODEFAULTLIB:"LIBCMT" /DEBUG /PDB:"c:\T\bin\smartclient\TTecDebug/../TSmartClient.pdb" /SUBSYSTEM:WINDOWS /IMPLIB:"c:\T\bin\smartclient\TTecDebug..\TSmartClient.lib" /machine:X86 /ignore:4217 /ignore:4049 /debug /LIBPATH:C:/advtec9/trunk/openssl/debug kdchartd.lib qtmaind.lib QtCored.lib QtGuid.lib Qt3Supportd.lib QtXmld.lib qtsvgd.lib QtNetworkd.lib QAxServerd.lib QAxContainerd.lib qgifd.lib qjpegd.lib qtaccessiblecompatwidgetsd.lib qtaccessiblewidgetsd.lib C:/advtec9/trunk/senhap/splogin4d.lib kernel32.lib user32.lib gdi32.lib winspool.lib shell32.lib ole32.lib oleaut32.lib uuid.lib comdlg32.lib advapi32.lib ssleay32.lib libeay32.lib mpr.lib imm32.lib winmm.lib ws2_32.lib msimg32.lib odbc32.lib odbccp32.lib ..\lib_comm\TTecDebug\lib_comm.lib ..\lib_getsys\TTecDebug\lib_getsys.lib c:\T\bin\smartclient\TTecDebug..\singlesign.lib ..\lib_graphicprint\TTecDebug\lib_graphicprint.lib ..\lib\TTecDebug\lib.lib ..\lib_base\TTecDebug\lib_base.lib ..\lib_gzip\TTecDebug\lib_gzip.lib ..\web\TTecDebug\web.lib ..\third_libraries\engine_pkcs11\TTecDebug\engine_pkcs11.lib ..\third_libraries\libp11\TTecDebug\libp11.lib dbghelp.lib ".\remote4.dir\TTecDebug\main.obj" ".\remote4.dir\TTecDebug\apcombase.obj" ".\remote4.dir\TTecDebug\apexcel.obj" ".\remote4.dir\TTecDebug\approject.obj" ".\remote4.dir\TTecDebug\apword.obj" ".\remote4.dir\TTecDebug\calc.obj" ".\remote4.dir\TTecDebug\calend4.obj" ".\remote4.dir\TTecDebug\config_client.obj" ".\remote4.dir\TTecDebug\execinclient.obj" ".\remote4.dir\TTecDebug\fjs_comps_base.obj" ".\remote4.dir\TTecDebug\t4jsaction.obj" ".\remote4.dir\TTecDebug\t4jsapplication.obj" ".\remote4.dir\TTecDebug\t4jsbitmap.obj" ".\remote4.dir\TTecDebug\t4jsdisplay.obj" ".\remote4.dir\TTecDebug\t4jsdisplayarray.obj" ".\remote4.dir\TTecDebug\t4jsexpandedinput.obj" ".\remote4.dir\TTecDebug\t4jsform.obj" ".\remote4.dir\TTecDebug\t4jshelpwindow.obj" ".\remote4.dir\TTecDebug\t4jsinput.obj" ".\remote4.dir\TTecDebug\t4jsinputarray.obj" ".\remote4.dir\TTecDebug\t4jsinputcheck.obj" ".\remote4.dir\TTecDebug\t4jsinputfieldbmp.obj" ".\remote4.dir\TTecDebug\t4jsinputimage.obj" ".\remote4.dir\TTecDebug\t4jsinputradio.obj" ".\remote4.dir\TTecDebug\t4jsinputtext.obj" ".\remote4.dir\TTecDebug\t4jsmainwindow.obj" ".\remote4.dir\TTecDebug\t4jsmenu.obj" ".\remote4.dir\TTecDebug\t4jsmessagebox.obj" ".\remote4.dir\TTecDebug\t4jsmultilineinputtext.obj" ".\remote4.dir\TTecDebug\t4jspromptinput.obj" ".\remote4.dir\TTecDebug\t4jstoolbar.obj" ".\remote4.dir\TTecDebug\t4jswaitwindow.obj" ".\remote4.dir\TTecDebug\t4jswindow.obj" ".\remote4.dir\TTecDebug\qtcolortriangle.obj" ".\remote4.dir\TTecDebug\qtsingleapplication.obj" ".\remote4.dir\TTecDebug\remote_utils.obj" ".\remote4.dir\TTecDebug\rmtcli.obj" ".\remote4.dir\TTecDebug\signfunctions.obj" ".\remote4.dir\TTecDebug\talignlayout.obj" ".\remote4.dir\TTecDebug\tapplication.obj" ".\remote4.dir\TTecDebug\tbitmap.obj" ".\remote4.dir\TTecDebug\tbrowsebutton.obj" ".\remote4.dir\TTecDebug\tbtnbmp.obj" ".\remote4.dir\TTecDebug\tbutton.obj" ".\remote4.dir\TTecDebug\crazychrs.obj" ".\remote4.dir\TTecDebug\parserext.obj" ".\remote4.dir\TTecDebug\Tprinter.obj" ".\remote4.dir\TTecDebug\Tprinterfonts.obj" ".\remote4.dir\TTecDebug\ttpviewer.obj" ".\remote4.dir\TTecDebug\tcbrowse.obj" ".\remote4.dir\TTecDebug\tchartwin.obj" ".\remote4.dir\TTecDebug\tcheckbox.obj" ".\remote4.dir\TTecDebug\tcombobox.obj" ".\remote4.dir\TTecDebug\tcomponentfactory.obj" ".\remote4.dir\TTecDebug\tconnection.obj" ".\remote4.dir\TTecDebug\tconnectionsocket.obj" ".\remote4.dir\TTecDebug\tcontrol.obj" ".\remote4.dir\TTecDebug\tcorretor.obj" ".\remote4.dir\TTecDebug\tcreateinifiledialog.obj" ".\remote4.dir\TTecDebug\tdgcanvas.obj" ".\remote4.dir\TTecDebug\tdgcanvasitem.obj" ".\remote4.dir\TTecDebug\tdgcanvasview.obj" ".\remote4.dir\TTecDebug\tdgconnectorabs.obj" ".\remote4.dir\TTecDebug\tdgconnectorline.obj" ".\remote4.dir\TTecDebug\tdgconnectorpoly.obj" ".\remote4.dir\TTecDebug\tdgdocument.obj" ".\remote4.dir\TTecDebug\tdgeditor.obj" ".\remote4.dir\TTecDebug\tdgrule.obj" ".\remote4.dir\TTecDebug\tdgselectionbox.obj" ".\remote4.dir\TTecDebug\tdgshape.obj" ".\remote4.dir\TTecDebug\tdgshapeabs.obj" ".\remote4.dir\TTecDebug\tdgshapebox.obj" ".\remote4.dir\TTecDebug\tdgshapeicon.obj" ".\remote4.dir\TTecDebug\tdgundolog.obj" ".\remote4.dir\TTecDebug\tdgviewer.obj" ".\remote4.dir\TTecDebug\tdialog.obj" ".\remote4.dir\TTecDebug\teventbuffer.obj" ".\remote4.dir\TTecDebug\tfileman.obj" ".\remote4.dir\TTecDebug\tfolder.obj" ".\remote4.dir\TTecDebug\tget.obj" ".\remote4.dir\TTecDebug\tgetdados.obj" ".\remote4.dir\TTecDebug\tgraphicprint_client.obj" ".\remote4.dir\TTecDebug\tgroupbox.obj" ".\remote4.dir\TTecDebug\tguicommand.obj" ".\remote4.dir\TTecDebug\thelpbaloon.obj" ".\remote4.dir\TTecDebug\thelpdialog.obj" ".\remote4.dir\TTecDebug\thotkeys.obj" ".\remote4.dir\TTecDebug\tibrowser.obj" ".\remote4.dir\TTecDebug\tinifile_client.obj" ".\remote4.dir\TTecDebug\tlibmanager.obj" ".\remote4.dir\TTecDebug\tlistbox.obj" ".\remote4.dir\TTecDebug\tlocallog.obj" ".\remote4.dir\TTecDebug\tmenu.obj" ".\remote4.dir\TTecDebug\tmenubar.obj" ".\remote4.dir\TTecDebug\tmenupopup.obj" ".\remote4.dir\TTecDebug\tmessage.obj" ".\remote4.dir\TTecDebug\tmessagebar.obj" ".\remote4.dir\TTecDebug\tmessagebox.obj" ".\remote4.dir\TTecDebug\tmessagehook.obj" ".\remote4.dir\TTecDebug\tmeter.obj" ".\remote4.dir\TTecDebug\tmodaldialog.obj" ".\remote4.dir\TTecDebug\tmscalendar.obj" ".\remote4.dir\TTecDebug\tmscalendgrid.obj" ".\remote4.dir\TTecDebug\tmsgrun.obj" ".\remote4.dir\TTecDebug\tmsselbr.obj" ".\remote4.dir\TTecDebug\tmultiget.obj" ".\remote4.dir\TTecDebug\tnanfor.obj" ".\remote4.dir\TTecDebug\tobjecthook.obj" ".\remote4.dir\TTecDebug\tolecontainer.obj" ".\remote4.dir\TTecDebug\tpageview.obj" ".\remote4.dir\TTecDebug\tpanel.obj" ".\remote4.dir\TTecDebug\tparametersform.obj" ".\remote4.dir\TTecDebug\tprinterhook.obj" ".\remote4.dir\TTecDebug\tprinterspool.obj" ".\remote4.dir\TTecDebug\tradiobutton.obj" ".\remote4.dir\TTecDebug\trashook.obj" ".\remote4.dir\TTecDebug\tremoteopensave.obj" ".\remote4.dir\TTecDebug\treportprinter.obj" ".\remote4.dir\TTecDebug\tresourcemanager.obj" ".\remote4.dir\TTecDebug\tsay.obj" ".\remote4.dir\TTecDebug\tsbutton.obj" ".\remote4.dir\TTecDebug\tscrollbox.obj" ".\remote4.dir\TTecDebug\tsplash.obj" ".\remote4.dir\TTecDebug\ttab.obj" ".\remote4.dir\TTecDebug\tterminal.obj" ".\remote4.dir\TTecDebug\tterminalupd.obj" ".\remote4.dir\TTecDebug\ttimer.obj" ".\remote4.dir\TTecDebug\ttoolbar.obj" ".\remote4.dir\TTecDebug\ttree.obj" ".\remote4.dir\TTecDebug\tvalue.obj" ".\remote4.dir\TTecDebug\tverticalscrollbar.obj" ".\remote4.dir\TTecDebug\twindow.obj" ".\remote4.dir\TTecDebug\tworkspace.obj" ".\remote4.dir\TTecDebug\tworkspacefolder.obj" ".\remote4.dir\TTecDebug\tworktime.obj" ".\remote4.dir\TTecDebug\waitrun.obj" ".\remote4.dir\TTecDebug\tgrid.obj" ".\remote4.dir\TTecDebug\httpclient.obj" ".\remote4.dir\TTecDebug\tpaintpanel.obj" ".\remote4.dir\TTecDebug\ttimerhook.obj" ".\remote4.dir\TTecDebug\qtsingleapplication_win.obj" ".\remote4.dir\TTecDebug\rational_robot.obj" ".\remote4.dir\TTecDebug\remote41.res" ".\remote4.dir\TTecDebug\qrc_remote4.obj" ".\remote4.dir\TTecDebug\moc_calc.obj" ".\remote4.dir\TTecDebug\moc_calend4.obj" ".\remote4.dir\TTecDebug\moc_t4jsaction.obj" ".\remote4.dir\TTecDebug\moc_t4jsapplication.obj" ".\remote4.dir\TTecDebug\moc_t4jsdisplayarray.obj" ".\remote4.dir\TTecDebug\moc_t4jsexpandedinput.obj" ".\remote4.dir\TTecDebug\moc_t4jsform.obj" ".\remote4.dir\TTecDebug\moc_t4jshelpwindow.obj" ".\remote4.dir\TTecDebug\moc_t4jsinput.obj" ".\remote4.dir\TTecDebug\moc_t4jsinputarray.obj" ".\remote4.dir\TTecDebug\moc_t4jsinputcheck.obj" ".\remote4.dir\TTecDebug\moc_t4jsinputfieldbmp.obj" ".\remote4.dir\TTecDebug\moc_t4jsinputimage.obj" ".\remote4.dir\TTecDebug\moc_t4jsinputradio.obj" ".\remote4.dir\TTecDebug\moc_t4jsinputtext.obj" ".\remote4.dir\TTecDebug\moc_t4jsmainwindow.obj" ".\remote4.dir\TTecDebug\moc_t4jsmenu.obj" ".\remote4.dir\TTecDebug\moc_t4jsmessagebox.obj" ".\remote4.dir\TTecDebug\moc_t4jsmultilineinputtext.obj" ".\remote4.dir\TTecDebug\moc_t4jspromptinput.obj" ".\remote4.dir\TTecDebug\moc_t4jstoolbar.obj" ".\remote4.dir\TTecDebug\moc_t4jswindow.obj" ".\remote4.dir\TTecDebug\moc_qtcolortriangle.obj" ".\remote4.dir\TTecDebug\moc_qtsingleapplication.obj" ".\remote4.dir\TTecDebug\moc_talignlayout.obj" ".\remote4.dir\TTecDebug\moc_tapplication.obj" ".\remote4.dir\TTecDebug\moc_tbitmap.obj" ".\remote4.dir\TTecDebug\moc_tbtnbmp.obj" ".\remote4.dir\TTecDebug\moc_tbutton.obj" ".\remote4.dir\TTecDebug\moc_Tprinter.obj" ".\remote4.dir\TTecDebug\moc_tcbrowse.obj" ".\remote4.dir\TTecDebug\moc_tchartwin.obj" ".\remote4.dir\TTecDebug\moc_tcheckbox.obj" ".\remote4.dir\TTecDebug\moc_tcombobox.obj" ".\remote4.dir\TTecDebug\moc_tcontrol.obj" ".\remote4.dir\TTecDebug\moc_tcorretor.obj" ".\remote4.dir\TTecDebug\moc_tcreateinifiledialog.obj" ".\remote4.dir\TTecDebug\moc_tdgcanvasview.obj" ".\remote4.dir\TTecDebug\moc_tdgconnectorline.obj" ".\remote4.dir\TTecDebug\moc_tdgdocument.obj" ".\remote4.dir\TTecDebug\moc_tdgeditor.obj" ".\remote4.dir\TTecDebug\moc_tdgrule.obj" ".\remote4.dir\TTecDebug\moc_tdgshape.obj" ".\remote4.dir\TTecDebug\moc_tdgshapebox.obj" ".\remote4.dir\TTecDebug\moc_tdgshapeicon.obj" ".\remote4.dir\TTecDebug\moc_tdgviewer.obj" ".\remote4.dir\TTecDebug\moc_tdialog.obj" ".\remote4.dir\TTecDebug\moc_tfolder.obj" ".\remote4.dir\TTecDebug\moc_tget.obj" ".\remote4.dir\TTecDebug\moc_tgetdados.obj" ".\remote4.dir\TTecDebug\moc_tguicommand.obj" ".\remote4.dir\TTecDebug\moc_thelpbaloon.obj" ".\remote4.dir\TTecDebug\moc_thelpdialog.obj" ".\remote4.dir\TTecDebug\moc_tlistbox.obj" ".\remote4.dir\TTecDebug\moc_tmenu.obj" ".\remote4.dir\TTecDebug\moc_tmenupopup.obj" ".\remote4.dir\TTecDebug\moc_tmessagebar.obj" ".\remote4.dir\TTecDebug\moc_tmessagebox.obj" ".\remote4.dir\TTecDebug\moc_tmodaldialog.obj" ".\remote4.dir\TTecDebug\moc_tmscalendar.obj" ".\remote4.dir\TTecDebug\moc_tmscalendgrid.obj" ".\remote4.dir\TTecDebug\moc_tmsselbr.obj" ".\remote4.dir\TTecDebug\moc_tmultiget.obj" ".\remote4.dir\TTecDebug\moc_tobjecthook.obj" ".\remote4.dir\TTecDebug\moc_tolecontainer.obj" ".\remote4.dir\TTecDebug\moc_tpageview.obj" ".\remote4.dir\TTecDebug\moc_tpanel.obj" ".\remote4.dir\TTecDebug\moc_tparametersform.obj" ".\remote4.dir\TTecDebug\moc_tprinterhook.obj" ".\remote4.dir\TTecDebug\moc_tprinterspool.obj" ".\remote4.dir\TTecDebug\moc_tradiobutton.obj" ".\remote4.dir\TTecDebug\moc_tremoteopensave.obj" ".\remote4.dir\TTecDebug\moc_treportprinter.obj" ".\remote4.dir\TTecDebug\moc_tresourcemanager.obj" ".\remote4.dir\TTecDebug\moc_tsay.obj" ".\remote4.dir\TTecDebug\moc_tscrollbox.obj" ".\remote4.dir\TTecDebug\moc_ttab.obj" ".\remote4.dir\TTecDebug\moc_tterminal.obj" ".\remote4.dir\TTecDebug\moc_ttoolbar.obj" ".\remote4.dir\TTecDebug\moc_ttree.obj" ".\remote4.dir\TTecDebug\moc_tverticalscrollbar.obj" ".\remote4.dir\TTecDebug\moc_twindow.obj" ".\remote4.dir\TTecDebug\moc_tworkspace.obj" ".\remote4.dir\TTecDebug\moc_tworkspacefolder.obj" ".\remote4.dir\TTecDebug\moc_tworktime.obj" ".\remote4.dir\TTecDebug\moc_tgrid.obj" ".\remote4.dir\TTecDebug\moc_httpclient.obj" ".\remote4.dir\TTecDebug\moc_tpaintpanel.obj" ".\remote4.dir\TTecDebug\moc_ttimerhook.obj" ".\remote4.dir\TTecDebug\moc_splogin.obj" ] Creating command line "link.exe #c:\advtec9\trunk\bin_sem_unittest\remote4\remote4.dir\TTecDebug\RSP00008649325832.rsp /NOLOGO /ERRORREPORT:PROMPT" Output Window Linking... Results Build log was saved at "file://c:\advtec9\trunk\bin_sem_unittest\remote4\remote4.dir\TTecDebug\BuildLog.htm" remote4 - 0 error(s), 0 warning(s)
I've (finally!) found out what my problem was. I have a project with some sub-directories. In the CMakeLists.txt of each subdirectory, I was defining a project name (with the command project() ). This was causing visual studio to behave like that. When I removed the project() of the sub_directories the problem was solved.