Xcode 4.6.3 GStreamer 1.2.0 linker error

Andoni Morales ylatuya at gmail.com
Sat Oct 26 13:55:53 CEST 2013


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
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freedesktop.org/archives/gstreamer-devel/attachments/20131026/f7ded00e/attachment.html>


More information about the gstreamer-devel mailing list