> On 25 Jun 2016, at 10:58, Alex Zavatone <z...@mac.com> wrote:
> 
> 
> On Jun 24, 2016, at 9:13 PM, Roland King wrote:
> 
>> Go find the log lines which actually compile the files in the lib project to 
>> object files and the lines which then link it into a static library. 
> 
> To the bast of my knowledge, I already pasted them in to the email thread.  

I’m not seeing them - I see linker lines, I see libtool lines, I don’t see 
anything which takes a .c file and turns it into a .o file, but I don’t know if 
I have the whole thread. The lines you have in the rest of this mail are linker 
and libtool lines again. The version information is in the .o file which means 
it was put in there at compile time. But I’m going to remove all that and put 
this one line


ld: warning: object file 
(/Users/zav/Library/Developer/Xcode/DerivedData/DirectFramework-enjpwwddxjevztftswnqliwzwrjf/Build/Products/Debug-iphoneos/libpjsip-ios.a(log.o))
 was built for newer iOS version (8.3) than being linked (8.0)

That’s the line which tells you what matters .. actually let me paste a few 
more from the old mails

ld: warning: object file 
(/Users/zav/Developer/SWNDirectFramework/DXI-PjSIP/build/Debug-iphoneos/libpjsip-ios.a(pjsua_acc.o))
 was built for newer iOS version (8.3) than being linked (8.0)
ld: warning: object file 
(/Users/zav/Developer/SWNDirectFramework/DXI-PjSIP/build/Debug-iphoneos/libpjsip-ios.a(pjsua_core.o))
 was built for newer iOS version (8.3) than being linked (8.0)
ld: warning: object file 
(/Users/zav/Developer/SWNDirectFramework/DXI-PjSIP/build/Debug-iphoneos/libpjsip-ios.a(pjsua_call.o))
 was built for newer iOS version (8.3) than being linked (8.0)
ld: warning: object file 
(/Users/zav/Developer/SWNDirectFramework/DXI-PjSIP/build/Debug-iphoneos/libpjsip-ios.a(pjsua_aud.o))
 was built for newer iOS version (8.3) than being linked (8.0)
ld: warning: object file 
(/Users/zav/Developer/SWNDirectFramework/DXI-PjSIP/build/Debug-iphoneos/libpjsip-ios.a(sock_bsd.o))
 was built for newer iOS version (8.3) than being linked (8.0)
ld: warning: object file 
(/Users/zav/Developer/SWNDirectFramework/DXI-PjSIP/build/Debug-iphoneos/libpjsip-ios.a(activesock.o))
 was built for newer iOS version (8.3) than being linked (8.0)

So activesock.o which resides in the library libpjsip-ios.a, which is just a 
collection of .o files all jammed together into a library format with an index, 
was built for 8.3. Somewhere is a compile line which in the olden days would 
have looked like 

    cc -o activesock.o -c activesock.c

but is now probably somewhat longer. The same is true for log.o, pjsua_acc-o, 
pjsua_core.0, pjsua_call.o, pjsua_aud.o and all the other object files 
referenced. That’s the line you’re looking for, that’s the build command you 
have to find, that’s the thing which is missing a minimum deployment target or 
has an incorrect minimum deployment target on it. 

So where are they coming from - well from the link line in your library they 
are either coming from a list of files you built, which is this list

        -filelist 
/Users/zav/Library/Developer/Xcode/DerivedData/DirectFramework-enjpwwddxjevztftswnqliwzwrjf/Build/Intermediates/pjsip-ios.build/Debug-iphoneos/pjsip-ios.build/Objects-normal/arm64/pjsip-ios.LinkFileList
 

or they are coming from one of the following libraries you’re linking with

        -lg7221codec-arm-apple-darwin9 
        -lgsmcodec-arm-apple-darwin9 
        -lilbccodec-arm-apple-darwin9 
        -lmilenage-arm-apple-darwin9 
        -lmilenage-i686-apple-darwin9 
        -lpj-arm-apple-darwin9 
        -lpjlib-util-arm-apple-darwin9 
        -lpjmedia-arm-apple-darwin9 
        -lpjmedia-audiodev-arm-apple-darwin9 
        -lpjmedia-codec-arm-apple-darwin9 
        -lpjmedia-videodev-arm-apple-darwin9 
        -lpjnath-arm-apple-darwin9 
        -lpjsdp-arm-apple-darwin9 
        -lpjsip-arm-apple-darwin9 
        -lpjsip-simple-arm-apple-darwin9 
        -lpjsip-ua-arm-apple-darwin9 
        -lpjsua-arm-apple-darwin9 
        -lpjsua2-arm-apple-darwin9 
        -lresample-arm-apple-darwin9 
        -lspeex-arm-apple-darwin9 
        -lsrtp-arm-apple-darwin9

and it doesn’t matter 2 hoots whether the library is built for min deployment 
8.0 if the object files contained inside it aren’t. When you do the actual link 
of the actual object code, that’s when the linker checks the versioning. 






 _______________________________________________
Do not post admin requests to the list. They will be ignored.
Xcode-users mailing list      (Xcode-users@lists.apple.com)
Help/Unsubscribe/Update your Subscription:
https://lists.apple.com/mailman/options/xcode-users/archive%40mail-archive.com

This email sent to arch...@mail-archive.com

Reply via email to