Subj : Re: Unresolved reference __turboFloat To : borland.public.cpp.borlandcpp From : Ed Mulroy [TeamB] Date : Sat Dec 04 2004 02:06 pm > I did look up the list of groups available under > newsgroups.borland.com and I don't see any > newsgroup with the word "cppbuilder" in the name. Click C++ Builder on this page: http://info.borland.com/newsgroups/ Or right click the newsgroups.borland.com line in the left window of Outlook Express, select newgroups and type cppbuilder into the search edit control. If none are found then the list is 7 or more years out of date so select Reset List. > This is what I am using: > > E:\Borland\BCC55\Bin\bcc32 -c -ff -o%1.obj %1.c The "-o%1.obj" and "-ff" are redundant. What they specifiy is what would be done were they to not be given. > E:\Borland\BCC55\Bin\ilink32 -aa -c -x -Gn > -ltWC %1.obj > > If I do this instead, it links fine: > > E:\Borland\BCC55\Bin\bcc32 -tWC -ff -o%1.obj %1.c > That is missing the target type, the startup code. and the name of the executable. The "it links fine" example is to build a console mode program but the /aa on the ilink32 line specifies a GUI mode executable. /ap is used to specify console mode. Commas are missing so the libraries are listed as if they were object files (although that is probably a typo from what was actually used). Putting each comma separated field on its own line to defend against news reader wrapping a better command might be that shown below. The command should all be on one line. -------------- ilink32 /Tpe/ap/c/x/Gn c0x32 %1 , %1 , , import32 cw32 -------------- For a GUI program c0w32.obj is the startup code and for a console mode program c0x32.obj is the startup code. Either of / or - can be used for an option but / allows them to be strung together without an intervening space. /Tpe specifies that an executable is to be created. Import32.lib is an import library for what Windows provides and cw32.lib is the single-threaded runtime library. The linker assumes the file extensions for any that are not given in the file name, OBJ, LIB, DEF and RES for the object file, library, module definition file and resource file fields respectively. The target file name is assumed to be that of the first object file with an extension of EXE or DLL depending upon the specified target type. The map file name is assumed to be that of the target file with an extension of MAP. If A.OBJ is to be built into a console mode program named A.EXE using a user-supplied library of B.LIB then a command line to link to A.EXE would be: ilink32 /Tpe/ap/c/x/Gn c0x32 a,a,,b import32 cw32 .. Ed > It's me wrote in message > news:41b1fd8e$1@newsgroups.borland.com... > Thank you for the reply. > > I did look up the list of groups available under > newsgroups.borland.com and I don't see any newsgroup > with the word "cppbuilder" in the name. > > This is what I am using: > > E:\Borland\BCC55\Bin\bcc32 -c -ff -o%1.obj %1.c > E:\Borland\BCC55\Bin\ilink32 -aa -c -x -Gn -ltWC > %1.obj > > This produces the "Unresolved reference __turboFloat" > message. > > If I do this instead, it links fine: > > E:\Borland\BCC55\Bin\bcc32 -tWC -ff -o%1.obj %1.c > > > Thanks for helping. .