Przemyslaw, Viktor, yes it works as expected, ld.exe gets called with @__dyn__.tmp as expected!!
See here gcc -shared -L../../../../../lib/os2/gcc -o ../../../../../bin/os2/gcc/harbour .dll -Wl,@__dyn__.tmp __dyn__.def -lsocket -s ------------8<-------------------- -Zdll -o ../../../../../bin/os2/gcc/harbour.dll -s E:/SVILUPPO/GCC/V3.3.5/USR/li b/dll0.o -L../../../../../lib/os2/gcc -LE:/Sviluppo/gcc/v3.3.5/usr/lib/gcc-lib/i 386-pc-os2-emx/3.3.5 -LE:/Sviluppo/gcc/v3.3.5/usr/lib/gcc-lib -LE:/SVILUPPO/GCC/ V3.3.5/USR/lib/gcc-lib/i386-pc-os2-emx/3.3.5 -LE:/SVILUPPO/GCC/V3.3.5/USR/lib -L E:/REPOSITORY/HARBOUR/src/dynlib/obj/os2/gcc -LE:/SVILUPPO/GCC/V3.3.5/USR/lib/gc c-lib/i386-pc-os2-emx/3.3.5 -LE:/Sviluppo/gcc/v3.3.5/usr/i386-pc-os2-emx/lib -LE :/SVILUPPO/GCC/V3.3.5/USR/i386-pc-os2-emx/lib -LE:/Sviluppo/gcc/v3.3.5/usr/lib @ __dyn__.tmp __dyn__.def -lsocket -lc_alias -lc_dll -los2 -lgcc_so_d -lc_alias -l c_dll -los2 -lgcc_so_d -lc_alias -lc_dll -los2 -lgcc_so_d -lc_alias -lc_dll -los 2 -lgcc_so_d -lc_alias -lc_dll -los2 ------------>8--------------------emximp -o ../../../../../lib/os2/gcc/harbour.a ../../../../../bin/os2/gcc/harbour.dll emximp: Cannot open input file `../../../../../bin/os2/gcc/harbour.dll' make[2]: *** [harbour.dll] Error 2 make[1]: *** [descend] Error 2 make: *** [dynlib] Error 2 The error come from the fact that my ld.exe does not build harbour.dll So, this should close the issue for ever :) Thanks so much, guys! Maurilio. Przemysław Czerpak wrote: > On Mon, 22 Feb 2010, Szak�ts Viktor wrote: > > Hi, > >>>> 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. >> The file list is already separate, so to try this solution out, >> only '-Wl,' needs to be added right in front of '@__dyn__.tmp': >> --- [gcc.mk] >> $(DY) $(DFLAGS) $(HB_USER_DFLAGS) $(DY_OUT)$(DYN_DIR)/$@ -Wl,@__dyn__.tmp >> __dyn__.def $(DLIBS) $(DYSTRIP) >> --- >> This assumes vanilla 2.0.0 gcc.mk, not the hacked ones currently >> on SVN. > > Looks OK for me. > If OS2 GCC port does not need at least one .o/.obj file (in my Linux box > it doesn't) then it should work and resolve the problem without direct > call to LD. > > Maurilio or David, Can you check it? > > best regards, > Przemek > _______________________________________________ > Harbour mailing list (attachment size limit: 40KB) > [email protected] > http://lists.harbour-project.org/mailman/listinfo/harbour > -- __________ | | | |__| Maurilio Longo |_|_|_|____| farmaconsult s.r.l. _______________________________________________ Harbour mailing list (attachment size limit: 40KB) [email protected] http://lists.harbour-project.org/mailman/listinfo/harbour
