i have just upgraded my compiler and i get unresolved symbols to _fputs$unix2003
this code compiles fine with version 10.
can you direct my what could be the reason?
i am running OSX 10.5 and compiling a 32 bit executable.
This is not a new issue.
Please visit the following links in ISN:--
they address the same question as above.
I see that these $unix2003 symbols are present in 11.1 compilers, and not in 10.1 compilers, which you can grep the libs in lib path , using nm to find those symbols.
Which OS you are using? Is it Tiger or Snow Leopard. And the SDK (10.4 or 10.5)which you use to build your libraries should be the same as you use to build your application.
In http://software.intel.com/en-us/forums/showthread.p hp?t=69724 , its mentioned that, for building a universal binary to target Tiger, It's not possible with 11.1 compiler, since the 11.1 runtime libraries are built on Leopard, which has the $UNIX2003 symbols in them.
If that does not work, please post a small test-code that reproduces, and the compiler-linker flags to reproduce.
thank you for your reply. i have read the threads but the answer was not clear to me.
as i mentioned i am on 10.5 (leopard). i will double check which version of the SDK i am using. what is the easiest method to determine it?
do i understand correctly, that if i would like to use 11.1, i have to use the SDK for 10.5 (leopard)? do i have to specify any preprocessor flags?
If you are using command-line , have you tried providing options to the compiler.
-isysroot /Developer/SDKs/MacOSX10.5u.sdk -mmacosx-version-min=10.5
If you using Xcode, go toBuild (tab) > Deployment > Mac OS X Deployment Target to see the Project Settings.
It might be that its using the 10.4 as default, in which case, those symbols are not resolved. Change the setting mentioned above to Mac OS X 10.5 and rebuild your target, and see what happens.
try changing SDK version to use (may need to change forprojects linked as well), and see whether error goes.
The matrix of supported OS/Xcode/Intel compiler support is:
yes i was usign-mmacosx-version-min=10.4
now i use-mmacosx-version-min=10.5 and i get:
icpc: error #10106: Fatal error in /[...]/mac-32/bin/mcpcom, terminated by bus error
it is not very good, is it?
You need to provide more info. What version of the compiler are you using (icpc -V will give the info)?
ale$ icpc -mmacosx-version-min=10.5 hello.cpp
ale$ icpc -V
Intel C++ Intel 64 Compiler Professional for applications running on Intel 64, Version 11.1 Build 20100203 Package ID: m_cproc_p_11.1.084
Copyright (C) 1985-2010 Intel Corporation. All rights reserved.
ale$ cat hello.cpp
int main (void)
std::cout << "hello" << std::endl;