Intel® C++ Compiler
Community support and assistance for creating C++ code that runs on platforms based on Intel® processors.

linker error (xilink)

abhijeet_thatte
Beginner
371 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
371 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.

0 Kudos
TimP
Honored Contributor III
371 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.

0 Kudos
mecej4
Honored Contributor III
371 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]

0 Kudos
Reply