April 06, 2006
You can pick up the latest version of Build from

  http://www.dsource.org/projects/build/wiki

If you use this, please do not overwrite the earlier version until you have tested this one out on your system. There is a big change with how it calls the linker and I'm not sure I've got the Linux code correct as I haven't tested it in that environment.


The main changes are ...

** FIX: The default Build Response File invoked when just placing '@' on the command line is now correctly named "build.brf"

** ENH: For Windows environments, command line files can now use either "/" or "\" as path separator characters.

** ENH: The linker program is now used directly rather than being invoked via DMD.
 ((I've only tested this with Windows and I'm not sure it will work yet in Linux))

** ENH: You can now specify the default linker switches in the Build Configuration File.

** ENH: Using the new switch -PP , you can now specify additional paths to search for files.

** ENH: Support for Ddoc files.

** CHG: The files are now compiled and linked in the same order that they are scanned in. Previously the order depended on the hashing algorithm of D's associative array implementation and the names of the directories containing the source files.

** CHG: The "-run" switch renamed to "-exec" to avoid clashing with dmd.


-- 
Derek Parnell
Melbourne, Australia
April 15, 2006
There seems to be a problem linking Windows code which contains a resource file.

The problem is with linker .ksp file which is created. The resource file is not specified in the right place for the linker.

The new version of build creates the .ksp file like so
foo.obj + foo.res
foo.exe
foo.map
gdi32.lib
foo.def
/noi/map

According to the OPTLINK docs the .ksp file should look like this
foo.obj
foo.exe
foo.map
gdi32.lib
foo.def
foo.res
/noi/map


A 2nd problem, which I haven't investigated further as yet is that all the additional libraries specified in the source code using pragma statements do not appear in the .ksp, so the linker complains about undefined symbols.

dick
(also Melbourne - FL)


Derek Parnell wrote:
> You can pick up the latest version of Build from
> 
>   http://www.dsource.org/projects/build/wiki
> 
> If you use this, please do not overwrite the earlier version until you have tested this one out on your system. There is a big change with how it calls the linker and I'm not sure I've got the Linux code correct as I haven't tested it in that environment.
> 
> 
> The main changes are ...
> 
> ** FIX: The default Build Response File invoked when just placing '@' on the command line is now correctly named "build.brf"
> 
> ** ENH: For Windows environments, command line files can now use either "/" or "\" as path separator characters.
> 
> ** ENH: The linker program is now used directly rather than being invoked via DMD.
>  ((I've only tested this with Windows and I'm not sure it will work yet in Linux))
> 
> ** ENH: You can now specify the default linker switches in the Build Configuration File.
> 
> ** ENH: Using the new switch -PP , you can now specify additional paths to search for files.
> 
> ** ENH: Support for Ddoc files.
> 
> ** CHG: The files are now compiled and linked in the same order that they are scanned in. Previously the order depended on the hashing algorithm of D's associative array implementation and the names of the directories containing the source files.
> 
> ** CHG: The "-run" switch renamed to "-exec" to avoid clashing with dmd.
> 
> 
> --Derek Parnell
> Melbourne, Australia
April 15, 2006
On Sun, 16 Apr 2006 01:02:44 +1000, dickl <dick221z@yahoo.com> wrote:

> There seems to be a problem linking Windows code which contains a resource file.

Thanks. I'm on to them now. Be back soon.

-- 
Derek Parnell
Melbourne, Australia
Top | Discussion index | About this forum | D home