Am 19.06.20 um 13:17 schrieb Basil Hussain:
> 
>> I listed the contents of the stm8-large .lib file (with sdar -t), and
>> indeed there are two entries for strcmp and strcpy.
> 
> I figured out what was wrong. When the library is built, when it invokes
> sdar to make the .lib file, it only tells it to *add/replace* files. So
> that meant the old strcmp/strcpy routines were still in it from a
> previous build, because they have slightly differing filenames between
> the C and assembly implementations (one with underscore prefix, one
> without).
> 
> When I deleted the .lib file and ran make again, all was right, because
> sdar had to recreate the file.
> 
> What was puzzling was that even doing a "make clean" didn't solve the
> problem, because for some reason that doesn't delete the end-product of
> the build, the .lib file, like one might expect it to.

AFAIR, that depends on where you run the "make clean". I think a
top-level "make clean" will delete all the .lib files, but a "make
clean" in device/lib/stm8-large only deletes the .rel files in there,
not the .lib in device/lib/build/stm8-large


_______________________________________________
Sdcc-user mailing list
Sdcc-user@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/sdcc-user

Reply via email to