Intel® Fortran Compiler
Build applications that can scale for the future with optimized code designed for Intel® Xeon® and compatible processors.
29253 Discussions

parallel option ignored as unknown option

slyc3
Beginner
1,357 Views
I am getting this while trying to compile,

what am I doing wrong?

ifort: command line warning #10006: ignoring unknown option '/parallel'
0 Kudos
5 Replies
IanH
Honored Contributor III
1,357 Views
It's /Qparallel on windows.
0 Kudos
slyc3
Beginner
1,357 Views

Thanks for your response. That resolved the central issue, however, I'm getting the following error when I use the parallelize option, which I don't get when I don't use the option. Looking at these messages, perhaps there is a not so difficult fix. Perhaps I should create a new thread (?). In any case, I'd appreciate any help with this..

libcmt.lib(crtheap.obj) : error LNK2005: _malloc_crt already defined in MSVCRT.lib(MSVCR90.dll)

libcmt.lib(crt0dat.obj) : error LNK2005: _amsg_exit already defined in MSVCRT.lib(MSVCR90.dll)

libcmt.lib(crt0dat.obj) : error LNK2005: _initterm_e already defined in MSVCRT.lib(MSVCR90.dll)

libcmt.lib(crt0init.obj) : error LNK2005: __xi_a already defined in MSVCRT.lib(cinitexe.obj)

libcmt.lib(crt0init.obj) : error LNK2005: __xi_z already defined in MSVCRT.lib(cinitexe.obj)

libcmt.lib(crt0init.obj) : error LNK2005: __xc_a already defined in MSVCRT.lib(cinitexe.obj)

libcmt.lib(crt0init.obj) : error LNK2005: __xc_z already defined in MSVCRT.lib(cinitexe.obj)

libcmt.lib(winxfltr.obj) : error LNK2005: __CppXcptFilter already defined in MSVCRT.lib(MSVCR90.dll)

libcmt.lib(tidtable.obj) : error LNK2005: _encode_pointer already defined in MSVCRT.lib(MSVCR90.dll)

libcmt.lib(tidtable.obj) : error LNK2005: _encoded_null already defined in MSVCRT.lib(MSVCR90.dll)

libcmt.lib(tidtable.obj) : error LNK2005: _decode_pointer already defined in MSVCRT.lib(MSVCR90.dll)

libcmt.lib(mlock.obj) : error LNK2005: _unlock already defined in MSVCRT.lib(MSVCR90.dll)

libcmt.lib(mlock.obj) : error LNK2005: _lock already defined in MSVCRT.lib(MSVCR90.dll)

Creating library C:\Users\x\AppData\Local\Temp\M6pGW6\templib.x and object C:\Users\x\AppData\Local\Temp\M6pGW6\templib.exp

LINK : warning LNK4098: defaultlib 'MSVCRT' conflicts with use of other libs; use /NODEFAULTLIB:library

MSVCRT.lib(cinitexe.obj) : warning LNK4098: defaultlib 'libcmt.lib' conflicts with use of other libs; use /NODEFAULTLIB:library

libifcoremd.lib(for_main.obj) : error LNK2019: unresolved external symbol MAIN__ referenced in function main

fatal error LNK1120: 1 unresolved externals

thanks,

0 Kudos
Steven_L_Intel1
Employee
1,357 Views
This suggests you are linking two projects or are linking to an object which has been built with a different setting for libraries. I don't think that jist using /Qparallel would make this difference.

If you have a mixed-language application be sure that the setting for the run-time libraries (in C++ under Code Generation, under Fortran, Libraries) is the same. Rebuild all sources.

Also, it looks as if perhaps you have Fortran code without a main program but have built it in a Console Application project type rather than Static Library.
0 Kudos
slyc3
Beginner
1,357 Views
I don't have the knowledge to follow up on some of your comments without some more work or thought.

I find that I can compile O2 with Qparallel , O1, O2, O3, (no O option), O1 with Qparallel*, (no O option) with Qparallel*, (basically everything except O3 with Qparallel).

* I read somewhere that parallelization can only be used with O2 or O3, so I'm not sure what the results will bring, but it does seem to compile without issue in these cases.

thanks
0 Kudos
Steven_L_Intel1
Employee
1,357 Views
Can you attach a ZIP of your sources and build script so that we can investigate?
0 Kudos
Reply