Compiling error in GStreamer with ios 7+

I am using GStreamer.framework (binary 1.4.5) downloaded here

I can run the target iOS 6.0 for deployment, but when I try to run in iOS 7.0 I get a linking error.

Below are the errors I received:

Undefined symbols for architecture armv7:
  "_gst_bus_async_signal_func", referenced from:
      -[GStreamerBackend app_function] in GStreamerBackend.o
  "__gst_fraction_type", referenced from:
      -[GStreamerBackend app_function] in GStreamerBackend.o
  "__gst_debug_min", referenced from:
      -[GStreamerBackend dealloc] in GStreamerBackend.o
      -[GStreamerBackend capture] in GStreamerBackend.o
      -[GStreamerBackend getFrame:] in GStreamerBackend.o
      -[GStreamerBackend check_initialization_complete] in GStreamerBackend.o
      -[GStreamerBackend app_function] in GStreamerBackend.o
  "_gst_message_parse_state_changed", referenced from:
      _state_changed_cb in GStreamerBackend.o
  "_g_clear_error", referenced from:
      _error_cb in GStreamerBackend.o
  "_gst_message_parse_error", referenced from:
      _error_cb in GStreamerBackend.o
  "_gst_element_get_bus", referenced from:
      -[GStreamerBackend app_function] in GStreamerBackend.o
  "_g_free", referenced from:
      _error_cb in GStreamerBackend.o
      _state_changed_cb in GStreamerBackend.o
  "_gst_pipeline_new", referenced from:
      -[GStreamerBackend app_function] in GStreamerBackend.o
  "_g_logv", referenced from:
      _g_warning in GStreamerBackend.o
  "_g_main_context_push_thread_default", referenced from:
      -[GStreamerBackend app_function] in GStreamerBackend.o
  "_gst_element_factory_make", referenced from:
      -[GStreamerBackend app_function] in GStreamerBackend.o
  "_gst_element_link_many", referenced from:
      -[GStreamerBackend app_function] in GStreamerBackend.o
  "_gst_sample_get_caps", referenced from:
      -[GStreamerBackend capture] in GStreamerBackend.o
      -[GStreamerBackend getFrame:] in GStreamerBackend.o
  "_gst_bin_get_type", referenced from:
      -[GStreamerBackend app_function] in GStreamerBackend.o
  "_gst_object_unref", referenced from:
      -[GStreamerBackend dealloc] in GStreamerBackend.o
      -[GStreamerBackend app_function] in GStreamerBackend.o
  "_g_source_set_callback", referenced from:
      -[GStreamerBackend app_function] in GStreamerBackend.o
  "_g_main_loop_new", referenced from:
      -[GStreamerBackend app_function] in GStreamerBackend.o
  "_gst_video_overlay_get_type", referenced from:
      -[GStreamerBackend app_function] in GStreamerBackend.o
  "_g_source_attach", referenced from:
      -[GStreamerBackend app_function] in GStreamerBackend.o
  "_g_signal_connect_data", referenced from:
      -[GStreamerBackend app_function] in GStreamerBackend.o
  "_g_main_loop_run", referenced from:
      -[GStreamerBackend app_function] in GStreamerBackend.o
  "_g_strdup_printf", referenced from:
      _error_cb in GStreamerBackend.o
      _state_changed_cb in GStreamerBackend.o
  "_gst_bus_create_watch", referenced from:
      -[GStreamerBackend app_function] in GStreamerBackend.o
  "_gst_sample_get_buffer", referenced from:
      -[GStreamerBackend capture] in GStreamerBackend.o
      -[GStreamerBackend getFrame:] in GStreamerBackend.o
  "_g_main_context_unref", referenced from:
      -[GStreamerBackend app_function] in GStreamerBackend.o
  "_gst_buffer_map", referenced from:
      -[GStreamerBackend capture] in GStreamerBackend.o
      -[GStreamerBackend getFrame:] in GStreamerBackend.o
  "_gst_mini_object_unref", referenced from:
      _gst_sample_unref in GStreamerBackend.o
  "_g_print", referenced from:
      -[GStreamerBackend getFrame:] in GStreamerBackend.o
  "_g_type_check_instance_cast", referenced from:
      -[GStreamerBackend capture] in GStreamerBackend.o
      -[GStreamerBackend getFrame:] in GStreamerBackend.o
      -[GStreamerBackend app_function] in GStreamerBackend.o
      _state_changed_cb in GStreamerBackend.o
  "_gst_buffer_unmap", referenced from:
      -[GStreamerBackend getFrame:] in GStreamerBackend.o
  "_gst_debug_set_threshold_for_name", referenced from:
      -[GStreamerBackend init:videoView:] in GStreamerBackend.o
  "_gst_debug_set_colored", referenced from:
      -[GStreamerBackend app_function] in GStreamerBackend.o
  "_gst_element_state_get_name", referenced from:
      _state_changed_cb in GStreamerBackend.o
  "_gst_bin_add_many", referenced from:
      -[GStreamerBackend app_function] in GStreamerBackend.o
  "_g_object_get", referenced from:
      -[GStreamerBackend capture] in GStreamerBackend.o
      -[GStreamerBackend getFrame:] in GStreamerBackend.o
  "_g_main_context_new", referenced from:
      -[GStreamerBackend app_function] in GStreamerBackend.o
  "_gst_object_get_type", referenced from:
      _state_changed_cb in GStreamerBackend.o
  "_gst_structure_get_int", referenced from:
      -[GStreamerBackend capture] in GStreamerBackend.o
      -[GStreamerBackend getFrame:] in GStreamerBackend.o
  "_gst_element_set_state", referenced from:
      -[GStreamerBackend dealloc] in GStreamerBackend.o
      -[GStreamerBackend play] in GStreamerBackend.o
      -[GStreamerBackend pause] in GStreamerBackend.o
      -[GStreamerBackend app_function] in GStreamerBackend.o
      _error_cb in GStreamerBackend.o
  "_gst_video_overlay_set_window_handle", referenced from:
      -[GStreamerBackend app_function] in GStreamerBackend.o
  "_gst_debug_log", referenced from:
      -[GStreamerBackend dealloc] in GStreamerBackend.o
      -[GStreamerBackend capture] in GStreamerBackend.o
      -[GStreamerBackend getFrame:] in GStreamerBackend.o
      -[GStreamerBackend check_initialization_complete] in GStreamerBackend.o
      -[GStreamerBackend app_function] in GStreamerBackend.o
  "_gst_bin_get_by_interface", referenced from:
      -[GStreamerBackend app_function] in GStreamerBackend.o
  "_gst_caps_get_structure", referenced from:
      -[GStreamerBackend capture] in GStreamerBackend.o
      -[GStreamerBackend getFrame:] in GStreamerBackend.o
  "_gst_caps_to_string", referenced from:
      -[GStreamerBackend capture] in GStreamerBackend.o
      -[GStreamerBackend getFrame:] in GStreamerBackend.o
  "_gst_video_convert_sample", referenced from:
      -[GStreamerBackend capture] in GStreamerBackend.o
      -[GStreamerBackend getFrame:] in GStreamerBackend.o
  "_g_object_set", referenced from:
      -[GStreamerBackend app_function] in GStreamerBackend.o
  "_gst_caps_new_simple", referenced from:
      -[GStreamerBackend capture] in GStreamerBackend.o
      -[GStreamerBackend getFrame:] in GStreamerBackend.o
      -[GStreamerBackend app_function] in GStreamerBackend.o
  "__gst_debug_category_new", referenced from:
      -[GStreamerBackend init:videoView:] in GStreamerBackend.o
  "_g_main_loop_unref", referenced from:
      -[GStreamerBackend app_function] in GStreamerBackend.o
  "_g_main_context_pop_thread_default", referenced from:
      -[GStreamerBackend app_function] in GStreamerBackend.o
  "_g_source_unref", referenced from:
      -[GStreamerBackend app_function] in GStreamerBackend.o
ld: symbol(s) not found for architecture armv7
clang: error: linker command failed with exit code 1 (use -v to see invocation)

      

How can I remove this error. I want to run this one GStreamer

in iOS 7+.

ADDITIONAL INFORMATION:

Linked libraries:

  • GStreamer.framework (location:

~ / Library / Developer / GStreamer / iPhone.sdk /)

  1. UIKit
  2. Fund
  3. CoreGraphics
  4. GLKit
  5. OpenGLES
  6. VideoToolbox
  7. libiconv.dylib

Here are my architecture settings: enter image description here

Here are my binding flags: enter image description here

Here are my frames and header paths: enter image description here

+3


source to share


1 answer


Library version problem.

Added libiconv2.4.0.dylib

instead libiconv.dylib


and added libstdc++6.0.9.dylib

insteadlibstdc++.dylib



Now it works fine in ios7 +

Thanks Happy Streaming :)

+1


source







All Articles