Intel® C++ Compiler
Support and discussions for creating C++ code that runs on platforms based on Intel® processors.

linker error (xilink)

abhijeet_thatte
Beginner
165 Views
Hi,
I am porting a project from current VC++ dev. suite to Intel. I initialy changed VC++ compiler to ICL and things worked. Now I am trying to change VC++ linker(link) to Intel linker(xilink) but I am getting errors.
Error mesage is:
xilink: error #10104: unable to open '\\cygdrive\\c\\proj\\work\\folder\\subfolder\\\\startap\\build\\ms\\x86\\debug\\link.cmd'

I found that xilink calls link internaly. So, I assume xilink is not looking in the right place for VC++ linker(link). I have already specified the path to VC++ linker(link). Still it is not working. Please, let me know what could be the reason of this.
Thanks
Abhi
0 Kudos
3 Replies
Om_S_Intel
Employee
165 Views

You may use /Qlocation,link,dir compiler option to point to Microsoft linker. If this does not resolve then it would be niceto share small test case.

TimP
Black Belt
165 Views
Normally, when running with cygwin active, the compiler requires the /Qlocation option for linking, as the arguments passed by ICL and xilink aren't compatible with cygwin link, even when running the ia32 compiler.
For example, I have added in my copy of intel64\icl.cfg:

-Qansi-alias -Qrestrict -Qprec-div -Qprec-sqrt
-Qlocation,link,"C:\Program Files (x86)\Microsoft Visual Studio 9.0\VC\bin\amd64"

So that I don't have to remember to set all the normal default options on command line.

mecej4
Black Belt
165 Views
The pathname convention \cygdrive\c\... is not understood by native Windows programs as being equivalent to C:\.. . In fact, Cygwin itself recognizes paths containing cygdrive only if forward slashes are used:

[bash]S:LANG>ls cygdrivec
ls: cannot access cygdrivec: No such file or directory

S:LANG>ls /cygdrive/c
64c7886602a30a0e19b7f0deea drivers IO.SYS MTH
...[/bash]

Reply