View previous topic :: View next topic |
Author |
Message |
Nox / Lux
Joined: 07 Jun 2006 Posts: 18
|
Posted: Tue Nov 07, 2006 11:24 am Post subject: Symbol Undefined |
|
|
I get the following errors when I try to "build build\ddl\utils" as per the tutorial:
Quote: | C:\D\dmd\src\phobos>build -exec build\ddl\utils
OPTLINK (R) for Win32 Release 7.50B1
Copyright (C) Digital Mars 1989 - 2001 All Rights Reserved
build\ddl\utils.obj(utils)
Error 42: Symbol Undefined _D5utils6Script3zipFAaAAaXv
build\ddl\utils.obj(utils)
Error 42: Symbol Undefined __Class_5utils9ArgParser9ArgParser
build\ddl\utils.obj(utils)
Error 42: Symbol Undefined _D5utils9ArgParser9ArgParser5_ctorFZC5utils9ArgParser9ArgParser
build\ddl\utils.obj(utils)
Error 42: Symbol Undefined _D5utils6Script5buildFAaAaZv
build\ddl\utils.obj(utils)
Error 42: Symbol Undefined _D5utils6Script10removeFileFAaZv
build\ddl\utils.obj(utils)
Error 42: Symbol Undefined _D5utils6Script7exeFileFAaZAa |
Also, when trying the "quick example" of DDL, I run into the following errors:
Quote: | D:\proj\DDL>build quick.d
OPTLINK (R) for Win32 Release 7.50B1
Copyright (C) Digital Mars 1989 - 2001 All Rights Reserved
quick.obj(quick)
Error 42: Symbol Undefined __Class_3ddl6Linker6Linker
quick.obj(quick)
Error 42: Symbol Undefined __Class_3ddl15DefaultRegistry15DefaultRegistry
quick.obj(quick)
Error 42: Symbol Undefined _D3ddl15DefaultRegistry15DefaultRegistry5_ctorFZC3ddl15DefaultRegistry15DefaultRegi
quick.obj(quick)
Error 42: Symbol Undefined _D3ddl6Linker6Linker5_ctorFC3ddl14LoaderRegistry14LoaderRegistryZC3ddl6Linker6Linke
quick.obj(quick)
Error 42: Symbol Undefined _D5mango2io6Stdout6StdoutC5mango2io11FlushWriter11FlushWriter
quick.obj(quick)
Error 42: Symbol Undefined _D5mango2io6Writer2CRC5mango2io6Writer13NewlineWriter |
There are obviously some linking problems going on here but I don't really know how to proceed. Any help would be most appreciated. |
|
Back to top |
|
|
pragma
Joined: 28 May 2004 Posts: 607 Location: Washington, DC
|
Posted: Tue Nov 07, 2006 11:38 am Post subject: |
|
|
Hrm.. are you working with the download or did you extract everything from SVN?
As far as I can tell, it looks like a good old-fashioned linking problem, proably due to not having utils/ and ddl/ on your include path. The tutorials assume that you're working in DDL's trunk/, which is why they're not explicitly mentioned in the tutorial. Sorry about that. _________________ -- !Eric.t.Anderton at gmail |
|
Back to top |
|
|
Nox / Lux
Joined: 07 Jun 2006 Posts: 18
|
Posted: Tue Nov 07, 2006 11:53 am Post subject: |
|
|
Hmm... You are right. By placing the ddl and mango directory directly in the project directory the linking problems disappears. Adding the dmd/src folder to path does not seem to work, though.
However, now I get the following error:
Quote: | D:\proj\DDL>build quick.d
ddl\omf\OMFBinary.d(181): cannot implicitly convert expression Code: | (*((& pub+12)) + cast(uint)cast(int)(baseFrame)) | of type uint to VWord |
Edit: Oh, and I got DDL from the download provided in the beginning of the tutorial, not from SVN.
Edit II: Oh, and thanks for the fast reply |
|
Back to top |
|
|
pragma
Joined: 28 May 2004 Posts: 607 Location: Washington, DC
|
Posted: Tue Nov 07, 2006 12:49 pm Post subject: |
|
|
Nox / Lux wrote: | Hmm... You are right. By placing the ddl and mango directory directly in the project directory the linking problems disappears. Adding the dmd/src folder to path does not seem to work, though.
However, now I get the following error:
Quote: | D:\proj\DDL>build quick.d
ddl\omf\OMFBinary.d(181): cannot implicitly convert expression Code: | (*((& pub+12)) + cast(uint)cast(int)(baseFrame)) | of type uint to VWord |
Edit: Oh, and I got DDL from the download provided in the beginning of the tutorial, not from SVN.
Edit II: Oh, and thanks for the fast reply |
Yea, Walter tightened up a few implicit conversion rules a few DMD versions ago. You might want to grab the latest OMFBinary from SVN to fix that particular problem.
I'm presently working on the next revision that gets everything up to speed with DMD 0.173 and solves a few other linking bugs.
Sorry for the bloody-cutting-edge mess. _________________ -- !Eric.t.Anderton at gmail |
|
Back to top |
|
|
Nox / Lux
Joined: 07 Jun 2006 Posts: 18
|
Posted: Tue Nov 07, 2006 1:36 pm Post subject: |
|
|
Aha, that explains it... Well, DDL is a bloody good idea anyway and just what I need, so keep up the good work
quick.d did compile after I downloaded said file from SVN (yay), but unfortunately the following occurs:
Quote: | D:\proj\DDL>dmd -c plugin
D:\proj\DDL>build quick.d
D:\proj\DDL>quick
Error: Access Violation |
|
|
Back to top |
|
|
pragma
Joined: 28 May 2004 Posts: 607 Location: Washington, DC
|
Posted: Tue Nov 07, 2006 1:42 pm Post subject: |
|
|
Yes, that is correct (sort of).
The current design attempts to reconcile weak symbols in a manner that is presently buggy. To be technical, the previous version wasn't 100? correct either, and had a hard time coping with templates - but it did work under general circumstances. While I don't like to commit dirty code, I am collaborating with other testers via SVN, so this was needed.
You're probably going to have better luck after I get this bug worked out, sorry for all the confusion. _________________ -- !Eric.t.Anderton at gmail |
|
Back to top |
|
|
|