Page 1 of 1

"Undefined symbols for architecture armv7"

Posted: 12 Dec 2014 02:54
by nimingzhe2008
I do as https://wiki.videolan.org/VLCKit/#Build ... rk_for_iOS said, and I drag the libMobileVLCKit.a and header files from VLCKit/build/Release-iphoneos to Xcode. But when I build the official sample project "SimplePlayback", Xcode log

Code: Select all

Undefined symbols for architecture armv7: "_libvlc_media_list_count", referenced from: -[VLCMediaList(LibVLCBridging) initWithLibVLCMediaList:] in libMobileVLCKit.a(VLCMediaList.o) "_libvlc_media_list_is_readonly", referenced from: -[VLCMediaList isReadOnly] in libMobileVLCKit.a(VLCMediaList.o) "_libvlc_media_list_index_of_item", referenced from: -[VLCMediaList indexOfMedia:] in libMobileVLCKit.a(VLCMediaList.o) "_libvlc_media_list_remove_index", referenced from: -[VLCMediaList removeMediaAtIndex:] in libMobileVLCKit.a(VLCMediaList.o) "_libvlc_media_list_event_manager", referenced from: -[VLCMediaList dealloc] in libMobileVLCKit.a(VLCMediaList.o) -[VLCMediaList(Private) initInternalMediaList] in libMobileVLCKit.a(VLCMediaList.o) "_libvlc_media_list_new", referenced from: -[VLCMediaList init] in libMobileVLCKit.a(VLCMediaList.o) "_libvlc_get_changeset", referenced from: -[VLCLibrary changeset] in libMobileVLCKit.a(VLCLibrary.o) "_libvlc_media_list_insert_media", referenced from: -[VLCMediaList insertMedia:atIndex:] in libMobileVLCKit.a(VLCMediaList.o) "_libvlc_media_list_lock", referenced from: -[VLCMediaList lock] in libMobileVLCKit.a(VLCMediaList.o) -[VLCMediaList(LibVLCBridging) initWithLibVLCMediaList:] in libMobileVLCKit.a(VLCMediaList.o) "_libvlc_get_compiler", referenced from: -[VLCLibrary compiler] in libMobileVLCKit.a(VLCLibrary.o) "_libvlc_media_list_retain", referenced from: -[VLCMediaList(LibVLCBridging) initWithLibVLCMediaList:] in libMobileVLCKit.a(VLCMediaList.o) "_libvlc_get_version", referenced from: -[VLCLibrary version] in libMobileVLCKit.a(VLCLibrary.o) "_libvlc_media_list_item_at_index", referenced from: -[VLCMediaList(LibVLCBridging) initWithLibVLCMediaList:] in libMobileVLCKit.a(VLCMediaList.o) "_libvlc_new", referenced from: -[VLCLibrary prepareInstanceWithOptions:] in libMobileVLCKit.a(VLCLibrary.o) "_libvlc_audio_get_volume", referenced from: -[VLCAudio volume] in libMobileVLCKit.a(VLCAudio.o) "_libvlc_media_player_retain", referenced from: -[VLCMediaPlayer(Private) initWithDrawable:options:] in libMobileVLCKit.a(VLCMediaPlayer.o) -[VLCAudio initWithMediaPlayer:] in libMobileVLCKit.a(VLCAudio.o) "_libvlc_media_player_can_pause", referenced from: -[VLCMediaPlayer canPause] in libMobileVLCKit.a(VLCMediaPlayer.o) "_libvlc_media_player_will_play", referenced from: -[VLCMediaPlayer willPlay] in libMobileVLCKit.a(VLCMediaPlayer.o) "_libvlc_media_player_is_playing", referenced from: -[VLCMediaPlayer isPlaying] in libMobileVLCKit.a(VLCMediaPlayer.o) "_libvlc_media_player_next_frame", referenced from: -[VLCMediaPlayer gotoNextFrame] in libMobileVLCKit.a(VLCMediaPlayer.o) "_libvlc_video_set_textrenderer_string", referenced from: -[VLCMediaPlayer setTextRendererFont:] in libMobileVLCKit.a(VLCMediaPlayer.o) "_libvlc_media_player_set_media", referenced from: -[VLCMediaPlayer setMedia:] in libMobileVLCKit.a(VLCMediaPlayer.o) "_libvlc_audio_equalizer_set_amp_at_index", referenced from: -[VLCMediaPlayer setAmplification:forBand:] in libMobileVLCKit.a(VLCMediaPlayer.o) "_libvlc_audio_equalizer_get_band_count", referenced from: -[VLCMediaPlayer numberOfBands] in libMobileVLCKit.a(VLCMediaPlayer.o) "_libvlc_audio_equalizer_set_preamp", referenced from: -[VLCMediaPlayer setPreAmplification:] in libMobileVLCKit.a(VLCMediaPlayer.o) "_libvlc_audio_equalizer_new_from_preset", referenced from: -[VLCMediaPlayer resetEqualizerFromProfile:] in libMobileVLCKit.a(VLCMediaPlayer.o) "_libvlc_media_player_set_nsobject", referenced from: -[VLCMediaPlayer dealloc] in libMobileVLCKit.a(VLCMediaPlayer.o) -[VLCMediaPlayer setDrawable:] in libMobileVLCKit.a(VLCMediaPlayer.o) "_libvlc_audio_equalizer_get_preset_name", referenced from: -[VLCMediaPlayer equalizerProfiles] in libMobileVLCKit.a(VLCMediaPlayer.o) "_libvlc_media_new_location", referenced from: -[VLCMedia initWithURL:] in libMobileVLCKit.a(VLCMedia.o) "_libvlc_media_player_play", referenced from: -[VLCMediaPlayer play] in libMobileVLCKit.a(VLCMediaPlayer.o) .....
I don't know why.

Re: "Undefined symbols for architecture armv7"

Posted: 12 Dec 2014 15:38
by laring
Check for nightly builds.
http://nightlies.videolan.org/build/ios/
Last one is 700k size
and 2014-12-08 build is 180 Mb.

So just take the full build and wait for a fix...

Re: "Undefined symbols for architecture armv7"

Posted: 15 Dec 2014 15:28
by trongdth
The problem is still exist in the lasted build. It seems only happen when building with real device. Here is my logs:

Undefined symbols for architecture armv7:
"_celt_pitch_xcorr_neon", referenced from:
__celt_autocorr in libMobileVLCKit.a(celt_lpc.o)
_pitch_search in libMobileVLCKit.a(pitch.o)

Re: "Undefined symbols for architecture armv7"

Posted: 15 Dec 2014 19:56
by fkuehne
Can you still reproduce the issue with this morning's build?

Re: "Undefined symbols for architecture armv7"

Posted: 16 Dec 2014 09:12
by trongdth
Hi Felix,

Do you mean MobileVLCKit-UniversalBinary-20141215-0620.zip 2014-12-15 06:25 186M, right?. If so, the problem is still there

Re: "Undefined symbols for architecture armv7"

Posted: 16 Dec 2014 12:33
by fkuehne
OK, I'll try to reproduce this tonight. I'll follow-up with you later.

Re: "Undefined symbols for architecture armv7"

Posted: 17 Dec 2014 02:31
by trongdth
The bug happens on master branch from commit: 4ef02b6b899890135569dd65a41acbea9c8f03dd (MVK: drop 7 patches, adapt to new build script, update libvlc hash)

Re: "Undefined symbols for architecture armv7"

Posted: 17 Dec 2014 12:32
by fkuehne
Yep, we enabled ARM assembly code in libopus and for some reason, it fails to include a symbol for that in the static library. I'm working with the OPUS team right now to solve this issue.

Re: "Undefined symbols for architecture armv7"

Posted: 20 Dec 2014 02:59
by trongdth
Hi Felix, hope you don't forget this one ;) is there any update for this?

Re: "Undefined symbols for architecture armv7"

Posted: 20 Dec 2014 15:19
by fkuehne
Yes, I pushed the fix about a minute ago and triggered the build bot to create an updated binary for you to test.

Re: "Undefined symbols for architecture armv7"

Posted: 20 Dec 2014 15:26
by fkuehne
Ok, due to a server issue, we cannot provide new builds of MobileVLCKit at this time. We hope to have those issues solved early next week.

Re: "Undefined symbols for architecture armv7"

Posted: 25 Dec 2014 05:56
by trongdth
Mery xMas :) Is the build available for testing ;)

Re: "Undefined symbols for architecture armv7"

Posted: 25 Dec 2014 14:35
by fkuehne
I just fixed the hopefully last remaining issue and dispatched a build. Let's see if it succeeds.

Happy Christmas to you, too!

Re: "Undefined symbols for architecture armv7"

Posted: 27 Dec 2014 03:52
by trongdth
it works like a charm. Thanks Felix