David,

here it is my ld.exe while building ld.exe itself after substituing it with
itself :))

(E:\harbour\ld)hbmk2 -st -shared ld.prg
hbmk2: Processing environment options: -mt -compiler=gcc
hbmk2: Processing configuration: E:\HARBOUR\BIN\hbmk.cfg
Harbour 2.1.0dev (Rev. 13913)
Copyright (c) 1999-2010, http://www.harbour-project.org/
Compiling 'ld.prg'...
Lines 8, Functions/Procedures 1
Generating C source output to 'E:\TMP\ld.c'... Done.

------------8<--------------------
-o ld.exe E:/SVILUPPO/GCC/V3.3.5/USR/lib/crt0.o -Le:\harbour\lib -LE:/Sviluppo/g
cc/v3.3.5/usr/lib/gcc-lib/i386-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:/SVI
LUPPO/GCC/V3.3.5/USR/lib/tcpipv4 -LE:/SVILUPPO/GCC/V3.3.5/USR/lib -LE:/harbour/l
d -LE:/SVILUPPO/GCC/V3.3.5/USR/lib/gcc-lib/i386-pc-os2-emx/3.3.5 -LE:/Sviluppo/g
cc/v3.3.5/usr/i386-pc-os2-emx/lib -LE:/SVILUPPO/GCC/V3.3.5/USR/i386-pc-os2-emx/l
ib -LE:/Sviluppo/gcc/v3.3.5/usr/lib E:\TMP\ld.o E:\TMP\hbmk_prvkqn.o -lhbmainstd
 -lhbcplr -lhbdebug -lharbour -lc_alias -lc_dll -los2 -lgcc_so_d -lc_alias -lc_d
ll -los2 -lgcc_so_d -lc_alias -lc_dll -los2 -lgcc_so_d -lc_alias -lc_dll -los2 -
lgcc_so_d -lc_alias -lc_dll -los2
------------>8--------------------

my ld.exe is a simple

function main( ... )
  ? ...
return 0

So, we can see that it points to a lot of libs, now let's see what happens
when it is called in building harbour.dll

Maurilio.



Maurilio Longo wrote:
> David,
> 
> it seems it does not find os2.a and rtl c library.
> 
> I was going to create a ld.exe which simply spits out what it received from
> gcc so we can see what it needs :)
> 
> Maurilio.
> 
> David Arturo Macias Corona wrote:
>> Viktor:
>>
>>>> Harbour need shorter intermediate file size
>>> I also need a bigger house ;) It's not an option
>>> unfortunately, at least I don't know of any. But
>>> the source is there so anyone can try to enhance
>>> it.
>> Perhaps you will get your bigger house before we can get a shorter
>> intermediate file  :-)
>>
>>> IMO rather someone should fix this OS/2 GCC
>>> toolchain bug.
>> Yes I hope someone can modify this toolchain, but is not a bug, is a
>> consequence of design
>>
>>> ??
>>> I'd think it's rather my change here:
>>>   2010-02-21 15:03 UTC+0100 Viktor Szakats
>>> You say thank you in a rather unique way.
>> ???
>>
>>> Ops, this was 13946.
>>> Anyways.
>> I am doing one step in each time, so I stated
>> - "13945"
>> - "recent libraries changes"
>> to avoid confutions. It was not enough
>>
>>> 2010-02-21 15:03 UTC+0100 Viktor Szakats (harbour.01 syenar.hu)
>>>  * config/os2/gcc.mk
>>>    * Changed to use 'ld' tools directly when creating
>>>      Harbour dynamic libraries.
>>>    ; Please test, it's possible that some option have to be
>>>      deleted, changed, or some system/compiler libs added
>>>      manually to make it work.
>> And now here we are in next step
>>
>> Using os2gcc442:
>>
>>  * $Id: ChangeLog 13951 2010-02-21 21:02:05Z vszakats $
>>  2010-02-21 22:01 UTC+0100 Viktor Szakats (harbour.01 syenar.hu)
>> -----------------------
>> make[3]: Entering directory
>> `E:/harbour102/harbour/src/dynlib/obj/os2/gccomf'
>> emxomfld  -shared -L../../../../../lib/os2/gccomf -Zomf  -o
>> ../../../../../bin/os2/gccomf/harbour.dll @__dyn__.tmp __dyn__.def -lsocket
>> emxomfld: invalid option (-shared)
>> make[3]: *** [harbour.dll] Error 1
>> make[3]: Leaving directory
>> `E:/harbour102/harbour/src/dynlib/obj/os2/gccomf'
>> make[2]: *** [descend] Error 2
>> make[2]: Leaving directory `E:/harbour102/harbour/src/dynlib'
>> make[1]: *** [dynlib] Error 2
>> -----------------------
>>
>> and trying manually:
>>
>> [E:\harbour102\harbour\src\dynlib\obj\os2\gccomf]emxomfld  -shared
>> -L../../../../../lib/os2/gccomf -Zomf  -o
>> ../../../../../bin/os2/gccomf/harbour.dll @__dyn__.
>> tmp __dyn__.def -lsocket
>> emxomfld: invalid option (-shared)
>>
>> Removing -shared:
>>
>> [E:\harbour102\harbour\src\dynlib\obj\os2\gccomf]emxomfld
>> -L../../../../../lib/os2/gccomf -Zomf  -o
>> ../../../../../bin/os2/gccomf/harbour.dll @__dyn__.tmp __dy
>> n__.def -lsocket
>> emxomfld: invalid option (-Zomf)
>>
>> Removing -Zomf:
>>
>> [E:\harbour102\harbour\src\dynlib\obj\os2\gccomf]emxomfld
>> -L../../../../../lib/os2/gccomf -o
>> ../../../../../bin/os2/gccomf/harbour.dll @__dyn__.tmp __dyn__.def
>>  -lsocket
>> weakld: cannot open library file
>> '..\..\..\..\..\lib\os2\gccomf\socket_s.a'.
>> emxomfld: weak prelinker failed. (rc=8)
>>
>> Removing -lsocket:
>>
>> 1108 lines of errors
>> Some segments are:
>>
>> weakld: error: Unresolved symbol (UNDEF) 'DosScanEnv'.
>> weakld: info: The symbol is referenced by:
>>     E:\harbour102\harbour\src\common\obj\os2\gccomf\hbgete.o
>> weakld: error: Unresolved symbol (UNDEF) 'recv'.
>> weakld: info: The symbol is referenced by:
>>     E:\harbour102\harbour\src\rtl\obj\os2\gccomf\hbsocket.o
>> weakld: error: Unresolved symbol (UNDEF) '_memcmp'.
>> weakld: info: The symbol is referenced by:
>>     E:\harbour102\harbour\src\rtl\obj\os2\gccomf\hbi18n1.o
>>     E:\harbour102\harbour\src\macro\obj\os2\gccomf\macrolex.o
>> [...]
>> Error! E2028: _strcmp is an undefined reference
>> Error! E2028: ___moddi3 is an undefined reference
>> Error! E2028: ___divdi3 is an undefined reference
>> Error! E2028: _pow is an undefined reference
>> Error! E2028: _fmod is an undefined reference
>> Error! E2028: _ldexp is an undefined reference
>> [...]
>> Error! E2028: ___main is an undefined reference
>> file
>> E:\harbour102\harbour\src\common\obj\os2\gccomf\expropt1.o(expropt1.o):
>> undefined symbol _strcmp
>> file
>> E:\harbour102\harbour\src\common\obj\os2\gccomf\expropt2.o(expropt2.o):
>> undefined symbol ___moddi3
>> file
>> E:\harbour102\harbour\src\common\obj\os2\gccomf\expropt2.o(expropt2.o):
>> undefined symbol ___divdi3
>> file
>> E:\harbour102\harbour\src\common\obj\os2\gccomf\expropt2.o(expropt2.o):
>> undefined symbol _pow
>> file
>> E:\harbour102\harbour\src\common\obj\os2\gccomf\expropt2.o(expropt2.o):
>> undefined symbol _fmod
>> file E:\harbour102\harbour\src\common\obj\os2\gccomf\hbarch.o(hbarch.o):
>> undefined symbol _ldexp
>> file E:\harbour102\harbour\src\common\obj\os2\gccomf\hbarch.o(hbarch.o):
>> undefined symbol _frexp
>> file E:\harbour102\harbour\src\common\obj\os2\gccomf\hbarch.o(hbarch.o):
>> undefined symbol ___fixunsdfdi
>> file E:\harbour102\harbour\src\common\obj\os2\gccomf\hbdate.o(hbdate.o):
>> undefined symbol ___divdi3
>> file E:\harbour102\harbour\src\common\obj\os2\gccomf\hbdate.o(hbdate.o):
>> undefined symbol ___moddi3
>>
>> [...]
>>
>> file E:\harbour102\harbour\src\vm\obj\os2\gccomf\hvmall.o(hvmall.o):
>> undefined symbol _fmod
>> file E:\harbour102\harbour\src\vm\obj\os2\gccomf\mainstd.o(mainstd.o):
>> undefined symbol ___main
>> file E:\harbour102\harbour\src\vm\obj\os2\gccomf\procaddr.o(procaddr.o):
>> undefined symbol _strcmp
>> file E:\harbour102\harbour\src\vm\obj\os2\gccomf\runner.o(runner.o):
>> undefined symbol _strcmp
>>
>> David Macias
>>
>> _______________________________________________
>> Harbour mailing list (attachment size limit: 40KB)
>> Harbour@harbour-project.org
>> http://lists.harbour-project.org/mailman/listinfo/harbour
>>
> 

-- 
 __________
|  |  | |__| Maurilio Longo
|_|_|_|____| farmaconsult s.r.l.


_______________________________________________
Harbour mailing list (attachment size limit: 40KB)
Harbour@harbour-project.org
http://lists.harbour-project.org/mailman/listinfo/harbour

Reply via email to