Hi, >>>>> -LE:/Sviluppo/gcc/v3.3.5/usr/lib/gcc-lib/i386-pc-os2-emx/3.3.5 >>>>> E:/SVILUPPO/GCC/V3.3.5/ is where I decided to put GCC on my system, while >>>>> the >>>>> last 3.3.5 in the path depends on GCC version and so it changes from >>>>> release >>>>> to release. >>>> Is '/gcc/3.3.5/' a mandatory element of the base dir, or >>>> local user preference? I mean, may I simple install it >>>> to 'E:/os2stuff/gcc/' instead of 'E:/Sviluppo/gcc/v3.3.5/'? >>> Sure. >> This means we can't use base path to get version >> information needed to form paths for ld.exe. >> To me it's unclear how to make this automatic or >> elegant. > > Calling LD directly usually creates more or less serious problems > because some important switches set by GCC automatically may not > be added by us.
Yes. > BTW the problem is caused by too long list of files passed > from GCC to LD because GCC does not use intermediate files. > But maybe it's possible to use small trick. DJGPP and as > I can see OS2 GNU ports expands @<filename> used in parameters. Yes. > So maybe we can simply create 2 files. One with GCC/LD options > only and with reference to second file __flst__.tmp will have > list of object files. Such reference can be stored in first file > as: '-Wl,@__flst__.tmp'. If gcc expects at least one .o file then > we can pass first object file directly as GCC parameter and not > include in __flst__.tmp. That's a good idea. Brgds, Viktor _______________________________________________ Harbour mailing list (attachment size limit: 40KB) Harbour@harbour-project.org http://lists.harbour-project.org/mailman/listinfo/harbour