"Optlink is on github"? No, it's just a mean joke from Walter!

Denis Shelomovskij verylonglogin.reg at gmail.com
Wed Mar 20 10:34:16 PDT 2013


20.03.2013 12:42, Walter Bright пишет:
> On 3/20/2013 12:40 AM, Denis Shelomovskij wrote:
>> 19.03.2013 22:31, Walter Bright пишет:
>>> On 3/19/2013 7:00 AM, Denis Shelomovskij wrote:
>>>> LINK.def(0) : Error 2: File Not Found LINK.def
>>>
>>> It's there now.
>>>
>>
>> Dear Walter Bright,
>> could you please test Optlink to be buildable not only with your machine
>> configuration?
>>
>> If dummy (empty) file isn't created as os2link\OBJ\LNKX.EXE you get this:
>> ---
>> ...
>>          cd ..\OS2LINK
>>          cd OBJNT
>>          copy ..\OBJ\LNKX.EXE>nul
>> NMAKE : fatal error U1077: 'copy' : return code '0x1'
>> Stop.
>> ---
>>
>> If dummy is created you get this:
>> ---
>> ...
>>          cd ..\OS2LINK
>>          cd OBJNT
>>          copy ..\OBJ\LNKX.EXE>nul
>>          D:\D\dm\bin\linkold /SILENT /NOI /NOERROR  @..\slrNT
>
> The link line is in optdll.mak and should be:
>
> OPTLINK: $(DIRS)
>      cd ..\OS2LINK
>      $(DM)\bin\link $(OBJ)\*
> ..\appload\slrload,$(OBJ)\link.exe,$(OBJ)\link.map,..\LIBNT\
> $(LIBS)/CO/MAP/DET/XREF/NOI/EXETYPE:NT;
> # link does not work with multiple processors, so we set the affinity to 1
> # imagecfg is available here: http://www.robpol86.com/index.php/ImageCFG
> # imagecfg always has exit code 1
>      -imagecfg -a 0x1 $(OBJ)\link.exe
>
>
>
>> OPTLINK (R) for Win32  Release 8.00.5
>> Copyright (C) Digital Mars 1989-2009  All rights reserved.
>> http://www.digitalmars.com/ctg/optlink.html
>> SLRLOAD.lib
>>   Warning 2: File Not Found SLRLOAD.lib
>> ..\..\LIBNT\COMMON.lib(PASS1)
>>   Error 42: Symbol Undefined SLRLOAD_ENTRY
>> ..\..\LIBNT\COMMON.lib(PASS1)
>>   Error 42: Symbol Undefined SLRLOAD_BOX_ENTRY
>> NMAKE : fatal error U1077: 'D:\D\dm\bin\linkold.EXE' : return code '0x2'
>> Stop.
>> NMAKE : fatal error U1077: '"C:\Program Files\Microsoft Visual Studio
>> 9.0\VC\bin
>> \nmake.EXE"' : return code '0x2'
>> Stop.
>> ---
>>
>

This is not what happens when you run `build.bat` as the failing target 
is `OS2LNK` from `optdll.mak`. But running `build_optlink.bat` really 
makes `OPTLINK` target from `optdll.mak`, triggers your proposed line 
and works fine, so I'm happy now as I'm able to build the linker.

But why is there `build.bat`, what does it build and why does it fail?

-- 
Денис В. Шеломовский
Denis V. Shelomovskij


More information about the Digitalmars-d mailing list