Missing external - __beginthreadex

Missing external - __beginthreadex

isn-removed200637's picture

I have recently installed 6.6Pro and have started playing with one of my old QuickWin projects. I opened the workspace after letting Fortran convert it from the previous format and then tried to rebuild the project.
The link step failed with unsatisfied external as shown below, where I have listed the project library settings.

Linking... DFQWIN.LIB(qwkentry.obj) : error LNK2001: unresolved external symbol __beginthreadex DFQWIN.LIB(qwgwnd.obj) : error LNK2001: unresolved external symbol __beginthreadex Release/SPLINEIGS.exe : fatal error LNK1120: 1 unresolved externals Error executing link.exe. SPLINEIGS.exe - 3 error(s), 0 warning(s) LINK STEP LIBRARIES: kernel32.lib DFQWIN.LIB DFQW_MDI.LIB COMDLG32.LIB IGNORE LIBRARIES: DFCONSOL.LIB


I tried a modification to the link libraries as shown below, but got a different set of unsatisfied externals.

Linking... dfor.lib(for_m_qqs.obj) : error LNK2001: unresolved external symbol _errno dfor.lib(for_m_diskdir.obj) : error LNK2001: unresolved external symbol _errno dfor.lib(for_portlib.obj) : error LNK2001: unresolved external symbol _errno dfor.lib(for_init.obj) : error LNK2001: unresolved external symbol __pxcptinfoptrs Release/SPLINEIGS.exe : fatal error LNK1120: 2 unresolved externals Error executing link.exe. SPLINEIGS.exe - 5 error(s), 0 warning(s) LINK STEP LIBRARIES: kernel32.lib LIBCMT.LIB DFQWIN.LIB DFQW_MDI.LIB COMDLG32.LIB IGNORE LIBRARIES: LIBC.LIB,DFCONSOL.LIB


Can Anyone advise on a library search/ignore set that should work and
satisfy the externals without duplicating symbols? (I find that using LIBCMT.LIB and LIBC.LIB gives me duplicates of other object files, so the link step still fails)

5 posts / 0 new
Last post
For more complete information about compiler optimizations, see our Optimization Notice.
Steve Lionel (Intel)'s picture

You shouldn't have to play with explicitly specifying libraries and ignore-libraries.

How about trying this: create a new QuickWin project, add your sources, and build. What happens? If you still have problems, send a ZIP archive of your workspace to vf-support@compaq.com

Steve

Steve
isn-removed200637's picture

Thanks for your advice, but I think I found the solution to the problem. I looked at Project..Settings...Fortran tab..Category 'Libraries' and found that 'Single threaded' was selected into the Run-time-libraries box. I changed this to multithreaded and went back to the first library search list that was carried over with the project when it was converted
to be compatible with the latest vrsion of Fortran 6.6 pro.:

LINK STEP LIBRARIES: kernel32.lib DFQWIN.LIB DFQW_MDI.LIB COMDLG32.LIB IGNORE LIBRARIES: DFCONSOL.LIB


The executable built ok with no errors.

Regards
Tony Richards

Steve Lionel (Intel)'s picture

How did it get set that way in the first place? Do you have library subprojects?

Steve

Steve
isn-removed200637's picture

As I said, I upgraded to 6.6 Pro from 5.0D and opened the old project. The work-space format was recognised as an old one and Visual Studio offered to convert it, which I accepted and the project opened ok. I can only suppose that it was during this stage that the multithread settings were lost.

Login to leave a comment.