XCode and Intel 10.1 compiler link error

XCode and Intel 10.1 compiler link error

I have used our Intel compiler on my XCode projects before with no problem, but ran into a weird link error in my latest one. I added Intel 10.1 compiler for C++ source files, built, and got this strange error below. It previously built and linked with no problem. Any ideas?

IPO link: can not find -framework /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/AE.framework/Versions/A/AE
icpc: error #10014: problem during multi-file optimization compilation (code 1)

I have ApplicationServices.framework, Carbon.framework and CoreFoundation.framework added to the project. My framework search path is also set to recursive. I don't know why it is looking in /System/Library/Frameworks, my SDK path is to /Developer/SDKs/MacOS10.4u.sdk/System/Library/Frameworks.

Thanks.

16 posts / 0 new
Last post
For more complete information about compiler optimizations, see our Optimization Notice.

Quoting - micahsharp
I have used our Intel compiler on my XCode projects before with no problem, but ran into a weird link error in my latest one. I added Intel 10.1 compiler for C++ source files, built, and got this strange error below. It previously built and linked with no problem. Any ideas?

IPO link: can not find -framework /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/AE.framework/Versions/A/AE
icpc: error #10014: problem during multi-file optimization compilation (code 1)

I have ApplicationServices.framework, Carbon.framework and CoreFoundation.framework added to the project. My framework search path is also set to recursive. I don't know why it is looking in /System/Library/Frameworks, my SDK path is to /Developer/SDKs/MacOS10.4u.sdk/System/Library/Frameworks.

Thanks.

You may try compiler option -ipo- as quick fix.

Quoting - Om Sachan (Intel)

You may try compiler option -ipo- as quick fix.

Thank you for the response. I checked the "Enable Interprocedural Optimization for Single File Compilation", but this made no difference. Is this what you were suggesting? What does that do?

The missing framework in the error report indeed does not exist there, but does in my SDK path. I'm not sure how to force it to find the corret framework, and even more perplexed by why it wants that framework. I'm not requiring it anywhere. Is it an Intel compiler requirement?

Thanks,

Micah

Quoting - micahsharp

Thank you for the response. I checked the "Enable Interprocedural Optimization for Single File Compilation", but this made no difference. Is this what you were suggesting? What does that do?

The missing framework in the error report indeed does not exist there, but does in my SDK path. I'm not sure how to force it to find the corret framework, and even more perplexed by why it wants that framework. I'm not requiring it anywhere. Is it an Intel compiler requirement?

Thanks,

Micah

The -ipo- option will disable the interprocedural optimization. If you are still getting the error then could you try using compiler option -O0 (disable optimization). Basically we need to learn if it is problem with optimization.

Om

Quoting - Om Sachan (Intel)

The -ipo- option will disable the interprocedural optimization. If you are still getting the error then could you try using compiler option -O0 (disable optimization). Basically we need to learn if it is problem with optimization.

Om

Hi, I set the optimization to -O0 and still received the error. I can send a screen shot of my optimization settings in XCode if you think that would help. Thanks.

What OS, Xcode and intel compiler version are you using?

As a start, if you could provide the build log for compilation and linkage that would help.

http://software.intel.com/en-us/articles/performance-tools-for-software-...

Quoting - Qale (Intel)

What OS, Xcode and intel compiler version are you using?

As a start, if you could provide the build log for compilation and linkage that would help.

http://software.intel.com/en-us/articles/performance-tools-for-software-...

Hi, sorry for the slow response. OS 10.5.5 and XCode version 3.1.2. I think I have all the right versions. Here is the build log:

cd /Develop/SVNSource/trapcode/Particular/AE/osx
setenv MACOSX_DEPLOYMENT_TARGET 10.4
/usr/bin/icc-10.1-base/bin/icpc -arch i386 -bundle -isysroot /Developer/SDKs/MacOSX10.4u.sdk -L/Develop/SVNSource/trapcode/Particular/AE/osx/build -L/Develop/SVNSource/trapcode/Particular/AE/osx/../../../../lib/SerialLib -L/Develop/SVNSource/trapcode/Particular/AE/osx/../../../lib/SerialLib -L/Develop/SVNSource/trapcode/Particular/AE/osx/../../../lib/mbcc/osx -L/Develop/SVNSource/trapcode/Particular/AE/osx/../../../../lib/SerialLib -L/Develop/SVNSource/trapcode/Particular/AE/osx/../../../../lib/RegLib/osx -F/Develop/SVNSource/trapcode/Particular/AE/osx/build -F/Developer/SDKs/MacOSX10.4u.sdk/System/Library/Frameworks -F/Developer/SDKs/MacOSX10.4u.sdk/System/Library/Frameworks/ApplicationServices.framework/Frameworks -filelist /Develop/SVNSource/trapcode/Particular/AE/osx/build/Particular_AE.build/Release/Particular.build/Objects-normal/i386/Particular.LinkFileList -mmacosx-version-min=10.4 -framework Carbon -dev-usr-root=/Developer/usr "" "" -lSerialCheckXCode -framework Carbon -framework ApplicationServices -framework CoreFoundation -framework IOKit -lLibRegDialog -o /Develop/SVNSource/trapcode/Particular/AE/osx/build/Particular_AE.build/Release/Particular.build/Objects-normal/i386/Particular
IPO link: can not find -framework /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/AE.framework/Versions/A/AE
icpc: error #10014: problem during multi-file optimization compilation (code 1)
IPO link: can not find -framework /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/AE.framework/Versions/A/AE
icpc: error #10014: problem during multi-file optimization compilation (code 1)
Build failed (2 errors, 449 warnings)

Thanks,

Micah

>>> -F/Developer/SDKs/MacOSX10.4u.sdk/System/Library/Frameworks/ApplicationServices.framework/Frameworks

>>> -framework ApplicationServices

>>> IPO link: can not find ->>>
>>> framework /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/AE.framework/Versions/A/AE

Looking at your build log. You have included ApplicationServices twice, one from the SDK and one from the system frameworks directory.

Try removing "-framework ApplicationServices" from your build, since that is the one that is looking in the system framework directory.

Quoting - Qale (Intel)

>>> -F/Developer/SDKs/MacOSX10.4u.sdk/System/Library/Frameworks/ApplicationServices.framework/Frameworks

>>> -framework ApplicationServices

>>> IPO link: can not find ->>>
>>> framework /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/AE.framework/Versions/A/AE

Looking at your build log. You have included ApplicationServices twice, one from the SDK and one from the system frameworks directory.

Try removing "-framework ApplicationServices" from your build, since that is the one that is looking in the system framework directory.

Hi, thanks for your reply. I did as you suggested, and remove "-framework ApplicationServices". For some reason, the build is still looking for it however, not sure why:

cd /Develop/SVNSource/trapcode/Particular/AE/osx
setenv MACOSX_DEPLOYMENT_TARGET 10.4
/usr/bin/icc-10.1-base/bin/icpc -arch i386 -bundle -isysroot /Developer/SDKs/MacOSX10.4u.sdk -L/Develop/SVNSource/trapcode/Particular/AE/osx/build -L/Develop/SVNSource/trapcode/Particular/AE/osx/../../../../lib/SerialLib -L/Develop/SVNSource/trapcode/Particular/AE/osx/../../../lib/SerialLib -L/Develop/SVNSource/trapcode/Particular/AE/osx/../../../lib/mbcc/osx -L/Develop/SVNSource/trapcode/Particular/AE/osx/../../../../lib/SerialLib -L/Develop/SVNSource/trapcode/Particular/AE/osx/../../../../lib/RegLib/osx -F/Develop/SVNSource/trapcode/Particular/AE/osx/build -F/Developer/SDKs/MacOSX10.4u.sdk/System/Library/Frameworks -filelist /Develop/SVNSource/trapcode/Particular/AE/osx/build/Particular_AE.build/Release/Particular.build/Objects-normal/i386/Particular.LinkFileList -mmacosx-version-min=10.4 -framework Carbon -dev-usr-root=/Developer/usr "" "" -lSerialCheckXCode -lLibRegDialog -framework IOKit -o /Develop/SVNSource/trapcode/Particular/AE/osx/build/Particular_AE.build/Release/Particular.build/Objects-normal/i386/Particular
ld: file not found: /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/AE.framework/Versions/A/AE

Thanks.

Intel compiler does not link in ApplicationServices framework by default. Just create a hello world test project and you will see that.

Make sure that you do a clean and rebuild.

Doesthe failurehappen when using gcc? If it does, I suspect it's an issue with your build environment. If the failure does not happen when using gcc, and only happens when using icc, then compare the build log for gcc and icc to see what is different.

BTW, what version of 10.1 are you using? icc -V will give you the information. You might want to try the latest 10.1 update, however, I don't think this is the issue.

Quoting - Qale (Intel)

BTW, what version of 10.1 are you using? icc -V will give you the information. You might want to try the latest 10.1 update, however, I don't think this is the issue.

Hi- to answer the first question, yes gcc works fine, only when I switched to Intel did it start acting up.

BTW- despite the title for this issue, your idea to check the version was a good one. I'm using version 11.0 of the Intel compiler, I completely forgot I updated. Sorry about that.

Does that help at all?

Thanks,

Micah

Quoting - micahsharp

Hi- to answer the first question, yes gcc works fine, only when I switched to Intel did it start acting up.

BTW- despite the title for this issue, your idea to check the version was a good one. I'm using version 11.0 of the Intel compiler, I completely forgot I updated. Sorry about that.

Does that help at all?

Thanks,

Micah

BTW- I just looked in my XCode rules however and I do select the 10.1 compiler for C++ source files. Below are my two build logs (gcc not to exciting except the 1200 warnings, almost all QD.framework deprecated Quickdraw function use related). The only difference between the two is for icc I set C++ source files to use 10.1 Intel compiler. That is it.

gcc build log

Build succeeded (1271 warnings)

icc build log

cd /Develop/SVNSource/trapcode/Particular/AE/osx
setenv MACOSX_DEPLOYMENT_TARGET 10.4
/usr/bin/icc-10.1-base/bin/icpc -arch i386 -bundle -isysroot /Developer/SDKs/MacOSX10.4u.sdk -L/Develop/SVNSource/trapcode/Particular/AE/osx/build -L/Develop/SVNSource/trapcode/Particular/AE/osx/../../../../lib/SerialLib -L/Develop/SVNSource/trapcode/Particular/AE/osx/../../../lib/SerialLib -L/Develop/SVNSource/trapcode/Particular/AE/osx/../../../lib/mbcc/osx -L/Develop/SVNSource/trapcode/Particular/AE/osx/../../../../lib/SerialLib -L/Develop/SVNSource/trapcode/Particular/AE/osx/../../../../lib/RegLib/osx -F/Develop/SVNSource/trapcode/Particular/AE/osx/build -F/Developer/SDKs/MacOSX10.4u.sdk/System/Library/Frameworks -filelist /Develop/SVNSource/trapcode/Particular/AE/osx/build/Particular_AE.build/Release/Particular.build/Objects-normal/i386/Particular.LinkFileList -mmacosx-version-min=10.4 -framework Carbon -dev-usr-root=/Developer/usr "" "" -lSerialCheckXCode -lLibRegDialog -framework IOKit -o /Develop/SVNSource/trapcode/Particular/AE/osx/build/Particular_AE.build/Release/Particular.build/Objects-normal/i386/Particular
ld: file not found: /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/AE.framework/Versions/A/AE

Thanks.

Quoting - micahsharp

BTW- I just looked in my XCode rules however and I do select the 10.1 compiler for C++ source files. Below are my two build logs (gcc not to exciting except the 1200 warnings, almost all QD.framework deprecated Quickdraw function use related). The only difference between the two is for icc I set C++ source files to use 10.1 Intel compiler. That is it.

gcc build log

Build succeeded (1271 warnings)

icc build log

cd /Develop/SVNSource/trapcode/Particular/AE/osx
setenv MACOSX_DEPLOYMENT_TARGET 10.4
/usr/bin/icc-10.1-base/bin/icpc -arch i386 -bundle -isysroot /Developer/SDKs/MacOSX10.4u.sdk -L/Develop/SVNSource/trapcode/Particular/AE/osx/build -L/Develop/SVNSource/trapcode/Particular/AE/osx/../../../../lib/SerialLib -L/Develop/SVNSource/trapcode/Particular/AE/osx/../../../lib/SerialLib -L/Develop/SVNSource/trapcode/Particular/AE/osx/../../../lib/mbcc/osx -L/Develop/SVNSource/trapcode/Particular/AE/osx/../../../../lib/SerialLib -L/Develop/SVNSource/trapcode/Particular/AE/osx/../../../../lib/RegLib/osx -F/Develop/SVNSource/trapcode/Particular/AE/osx/build -F/Developer/SDKs/MacOSX10.4u.sdk/System/Library/Frameworks -filelist /Develop/SVNSource/trapcode/Particular/AE/osx/build/Particular_AE.build/Release/Particular.build/Objects-normal/i386/Particular.LinkFileList -mmacosx-version-min=10.4 -framework Carbon -dev-usr-root=/Developer/usr "" "" -lSerialCheckXCode -lLibRegDialog -framework IOKit -o /Develop/SVNSource/trapcode/Particular/AE/osx/build/Particular_AE.build/Release/Particular.build/Objects-normal/i386/Particular
ld: file not found: /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/AE.framework/Versions/A/AE

Thanks.

I just realized the QuickDraw stuff is in ApplicationServices (QD.framework). Is that relevant? Does icc not like the deprecated functions?

Thanks.

Unfortunately, I am not familiar with Quickdraw and how it's used in your project.That might be one place to look.

Make a copy of your Xcode project and remove all source. Then just add a "helloworld.cpp" to the project and see if you can reproduce the problem. Once you are able to do that, attached the zipped project here, and I'll take a look.

Quoting - Qale (Intel)

Unfortunately, I am not familiar with Quickdraw and how it's used in your project.That might be one place to look.

Make a copy of your Xcode project and remove all source. Then just add a "helloworld.cpp" to the project and see if you can reproduce the problem. Once you are able to do that, attached the zipped project here, and I'll take a look.

Thanks Qale, I did as you suggested and the error went away. Something in one of our libraries or source I guess. I'll keep looking at this one my own, maybe removing files one at a time looking for the culprit. Thanks for all the suggestions and help.

Leave a Comment

Please sign in to add a comment. Not a member? Join today