Tell me more ×
Stack Overflow is a question and answer site for professional and enthusiast programmers. It's 100% free, no registration required.

I downloaded and installed Gstreamer iOS library from their site. I copied the tutorial to my own folder and tried to build the project in Xcode. I got the following linker error.

I'm geting no clues about this. The Gstreamer.framework is linked against all targets.

Undefined symbols for architecture armv7:
  "_iconv_open", referenced from:
      __nl_find_msg in GStreamer(libintl_a_armv7_-dcigettext.o)
     (maybe you meant: _g_iconv_open)
  "_iconv", referenced from:
      __nl_find_msg in GStreamer(libintl_a_armv7_-dcigettext.o)
     (maybe you meant: _iconv_canonicalize, _g_iconv_close , _g_convert_with_iconv , _g_iconv , _g_iconv_open )
ld: symbol(s) not found for architecture armv7
clang: error: linker command failed with exit code 1 (use -v to see invocation)

What OBVIOUS thing am I missing here?

share|improve this question

1 Answer

What you need to do is drag the library project into your project. Then in your project settings, goto Build Phases and under Target Dependencies add the library project as dependency. Then under Link Binary With Libraries (still in Build Phases), add the library's product (a .a file). Then rebuild.

In recent versions of Xcode, you don't even need to add it as a target dependency. It automatically detects dependencies between projects in the same workspace. You just need to add the .a file under Link Binary With Libraries.

share|improve this answer
but there is no "library project". From the installer page - The SDK library is installed to ~/Library/Developer/GStreamer/iPhone.sdk. Inside this directory there is the GStreamer.framework that contains the libs, headers and resources. – Tushar Koul 7 mins ago

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.