Modules

if HAVE_DARWIN1
libscreen_plugin_la_SOURCES += screen/mac.c
libscreen_plugin_la_LDFLAGS = $(AM_LDFLAGS)
libscreen_plugin_la_LDFLAGS += "-Wl,-framework,OpenGL,-framework,ApplicationServices"
libvlc_LTLIBRARIES += libscreen_plugin.la

endif


First, add --disable-screen as I wrote in my comment above.

Then, in the file ios/buildMobileVLC.sh, change line 50 from:

CODE:  SELECT ALL
local extra="ARCHS="

to:
CODE:  SELECT ALL
local extra="ARCHS=armv7"


Otherwise it might compile the front end as armv7s and expect the vlc files to be under /armv7s. However, vlc itself is compiled under armv7 and the files are in /armv7. If one were to attempt to compile vlc for armv7s it fails. I have yet to dig into that.

Then there's the other bigger problem. In the file  ios/ImportedSources/vlc/modules/access/Modules.am  there is a logic problem regarding the lib screen plugin. Here's the offending code, line 184:

CODE:  SELECT ALL
if HAVE_DARWIN
libscreen_plugin_la_SOURCES += screen/mac.c
libscreen_plugin_la_LDFLAGS = $(AM_LDFLAGS)
libscreen_plugin_la_LDFLAGS += "-Wl,-framework,OpenGL,-framework,ApplicationServices"
libvlc_LTLIBRARIES += libscreen_plugin.la
endif


The problem is that under iOS HAVE_DARWIN is true, and libscreen will always compile regardless of your --disable-screen setting. Incidentally, the previous piece of code that compiles for HAVE_WIN32 has the same problem. --disable-screen doesn't stop libscreen from compiling.
And since there is no specific HAVE_* check for screen, just disable all those lines between the HAVE_DARWIN test.
This will get the iOS build to compile and function correctly.

你可能感兴趣的:(Modules)