Xcode 4.6.3 GStreamer 1.2.0 linker error

Michael McNamara mmcnamara at control4.com
Tue Oct 29 04:07:56 CET 2013


Hello Andoni,

This is great news.  Thank you very much for all of your hard work! 

Cheers,


Mike

On Oct 28, 2013, at 6:34 PM, Andoni Morales <ylatuya at gmail.com> wrote:

> 
> 
> 
> 2013/10/28 Michael McNamara <mmcnamara at control4.com>
> Hi Andoni,
> 
> Thanks for your assistance.  I have pulled the latest, and I can confirm that your fix:
> 
> http://cgit.freedesktop.org/gstreamer/sdk/cerbero/commit/?id=373a5c7f015350d4658983f86c620a7f8ae33ce0
> 
> is working.  I can get glib to build now with no problems.  I'm now having issues with compiling pixman:
> 
> libtool: compile:  llvm-gcc-4.2 -DHAVE_CONFIG_H -I. -I.. -arch armv7 -mcpu=cortex-a8 -pipe -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS6.1.sdk -arch armv7 -mcpu=cortex-a8 -pipe -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS6.1.sdk -miphoneos-version-min=5.1 -Wall -g -Os -Wall -fno-strict-aliasing -fvisibility=hidden -MT pixman-implementation.lo -MD -MP -MF .deps/pixman-implementation.Tpo -c pixman-implementation.c  -fno-common -DPIC -o .libs/pixman-implementation.o
> {standard input}:819:Rest of line ignored. 1st junk character valued 40 (().
> {standard input}:823:Rest of line ignored. 1st junk character valued 40 (().
> {standard input}:827:Rest of line ignored. 1st junk character valued 40 (().
> make[2]: *** [pixman-implementation.lo] Error 1
> make[1]: *** [all-recursive] Error 1
> make: *** [all] Error 2
> ***** Error running 'buildone' command:
> Recipe 'pixman' failed at the build step 'compile'
> 
> This appears to be an ARM related issue.  I can buildone for x86 with no issues:
> 
> $ ./cerbero-uninstalled -c config/cross-ios-x86.cbc buildone pixman
> 
> Hi Michael,
> 
> Today I have been building everything from scratch for OS X and iOS to fix all the issues in the builds after the last upgrades in the recipes. This one if now fixed upstream but you will probably hit others (I am now fixing one in nettle for instance). So expect to get everything building again in the next days.
> 
> Cheers,
> Andoni
>  
> 
> Thanks.
> 
> From: Andoni Morales <ylatuya at gmail.com>
> Reply-To: Discussion of the development of and with GStreamer <gstreamer-devel at lists.freedesktop.org>
> Date: Saturday, October 26, 2013 5:55 AM
> To: Discussion of the development of and with GStreamer <gstreamer-devel at lists.freedesktop.org>
> Subject: Re: Xcode 4.6.3 GStreamer 1.2.0 linker error
> 
> 
> 
> 
> 2013/10/26 Andoni Morales <ylatuya at gmail.com>
> 
> 
> 
> 2013/10/26 Andoni Morales <ylatuya at gmail.com>
> 
> 
> 
> 2013/10/24 Michael McNamara <mmcnamara at control4.com>
> I believe that the linker issues described in my original message must stem from the 1.2.0 iOS package being built with Xcode 5 against the iOS 7 SDK.  As such they don't appear to be backward compatible for use with Xcode 4.6.3.  This being the case, I've been trying to build 1.2.0 myself using Xcode 4.6.3.  The repo that I'm building from:
> 
> git://anongit.freedesktop.org/gstreamer/sdk/cerbero
> 
> I can bootstrap with no issues:
> 
> $ ./cerbero-uninstalled bootstrap
> 
> I then edit config/cross-ios* to set the SDK to 6_1 and start the build process:
> 
> $ ./cerbero-uninstalled -c config/cross-ios-universal.cbc package gstreamer-1.0
> 
> I'm currently dying when building glib:
> 
>> checking for i386-apple-darwin10-gcc... llvm-gcc-4.2
> checking whether the C compiler works... no
> configure: error: in `/Users/mike/cerbero/sources/ios_universal/x86/glib-2.38.0':
> configure: error: C compiler cannot create executables
> See `config.log' for more details
> ***** Error running 'package' command:
> Recipe 'glib' failed at the build step 'configure'
> 
> Somewhat confusingly I can do a buildone for both x86 and arm on glib with no issues?
> 
> $ ./cerbero-uninstalled -c config/cross-ios-x86.cbc buildone glib
> 
> $ ./cerbero-uninstalled -c config/cross-ios-arm7.cbc buildone glib
> 
> Suggestions on where to poke around would be welcome.
> Hi,
> 
> I have launched a clean rebuild here trying to reproduce it. The error should be logged in  /Users/mike/cerbero/sources/
> ios_universal/x86/glib-2.38.0/config.log, could you paste it here?
> 
> Hi,
> 
> For some reason in the universal build it's using the incorrect sysroot for the x86 build. I will try to fix it today.
> 
> Hi,
> 
> This has been fixed in:
> http://cgit.freedesktop.org/gstreamer/sdk/cerbero/commit/?id=373a5c7f015350d4658983f86c620a7f8ae33ce0
> 
> Andoni 
> 
> 
> 128 configure:4113: llvm-gcc-4.2  -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS6.1.sdk -miphoneos-version-min=5.2 -Wall -g -Os -DNVALGRIND    =1  -DHAVE_STRNDUP -DGST_SDK_IOS=1  -arch i386  -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator6.1.sdk -L/Users/fluendo/ce    rbero/dist/ios_universal/lib  -arch i386  -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator6.1.sdk  -Wl,-iphoneos_version_mi    n,5.2 -Wl,-undefined,error -Wl,-headerpad_max_install_names conftest.c  >&5
> 129 ld: in '/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS6.1.sdk/usr/lib/system/libdispatch.dylib', missing required architecture i386 in file /Appl    ications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS6.1.sdk/usr/lib/system/libdispatch.dylib (2 slices) for architecture i386
> 130 collect2: ld returned 1 exit status 
> 
> Andoni
> 
> Andoni
> 
> Thanks!
> 
> 
> Subject: Xcode 4.6.3 GStreamer 1.2.0 linker error
> 
> Hi All,
> 
> I'm attempting to build a project for iOS / iOS Simulator with Xcode 4.6.3 using GStreamer 1.2.0:
> 
> http://gstreamer.freedesktop.org/data/pkg/ios/
> 
> and am dying with the following linker error:
> 
> ~/Library/Developer/GStreamer/iPhone.sdk/GStreamer.framework/GStreamer(libcairo_a_i386_-cairo.o), archive member 'libcairo_a_i386_-cairo.o' with length 37376 is not mach-o or llvm bitcode for architecture i386
> 
> I thought perhaps a mis-lipo'd version of this lib had made it into the above distribution based on the error, so I decided to check into it.  I did a lipo –thin on both architectures (i386 and armv7) and then used ar to extract the respective archives.  Checking with otool on the libcairo object files, both seem to be correct:
> 
> $ otool -hv libcairo_a_i386_-cairo.o 
> libcairo_a_i386_-cairo.o: is an LLVM bit-code file
> 
> $ otool -hv libcairo_a_armv7_-cairo.o 
> libcairo_a_armv7_-cairo.o: is an LLVM bit-code file
> 
> Which flies in the face of the linker error above.  I'm totally stumped.  I tried Xcode 5 on the same project and don't seem to have any issues.  To answer the obvious question, I'm not currently in a spot where I cannot use Xcode 5 unfortunately.  
> 
> Does anyone have any idea why this would be the case?  Any advice or guidance would be most appreciated!
> 
> 
> _______________________________________________
> gstreamer-devel mailing list
> gstreamer-devel at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
> 
> 
> 
> 
> -- 
> Andoni Morales Alastruey
> 
> LongoMatch:The Digital Coach
> http://www.longomatch.ylatuya.es
> 
> 
> 
> -- 
> Andoni Morales Alastruey
> 
> LongoMatch:The Digital Coach
> http://www.longomatch.ylatuya.es
> 
> 
> 
> -- 
> Andoni Morales Alastruey
> 
> LongoMatch:The Digital Coach
> http://www.longomatch.ylatuya.es
> 
> _______________________________________________
> gstreamer-devel mailing list
> gstreamer-devel at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
> 
> 
> 
> 
> -- 
> Andoni Morales Alastruey
> 
> LongoMatch:The Digital Coach
> http://www.longomatch.ylatuya.es
> _______________________________________________
> gstreamer-devel mailing list
> gstreamer-devel at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/gstreamer-devel




More information about the gstreamer-devel mailing list