I have written a parser to extract the amake dependencies from the final output file. I then use it with nmake to build the same source presumably in the same order since the same .lnp file is passed to the linker in the make file as is generated by the ide. The makefile build works but the target output file is different. Are there any optimizations or other issues which may be bypassed when the IDE is not used for the build?
Read-Only
Author Doug Moore
Posted 19-Jan-2005 23:16 GMT
Toolset C166
RE: Makefile and IDE build produce different target
Doug Moore
I've traced it down to the fact that c166 alters the behavior somehow depending on whether the path specified for the input module is relative or absolute. I renamed ad.c to be sure the make was accessing the same file independent of the absolute and relative path, and it was. I also used an inline file like c166 @cflags.tmp to see if it might be caused by a lack of space in the environment for the longer paths but it made no difference.
This command line produces the code sizes as shown in the listing below:
RE: Makefile and IDE build produce different target
Doug Moore
Well, after some inspection and talking to someone else, it occurs to me that some of the modules use the __FILE__ predefined macro, so the whole path is probably being stored in the const section in one case, and the relative path in the other case. Doh.
Read-Only
Author Andrew Neil
Posted 20-Jan-2005 00:03 GMT
Toolset C166
RE: Makefile and IDE build produce different target
Andrew Neil
and, if you also use the __LINE__ predefined macro, you will find that making changes to just your comments can affect the generated executable for exactly the same reason...!
This site uses cookies to store information on your computer. By continuing to use our site, you consent to our cookies.
ARM websites use two types of cookie: (1) those that enable the site to function and perform as required; and (2) analytical cookies which anonymously track visitors only while using the site. If you are not happy with this use of these cookies please review our Privacy Policy to learn how they can be disabled. By disabling cookies some features of the site will not work.