February 20, 2008
Ty Tower wrote:
> Nah You are missing the point here.
> dmd picks up dmd.conf in linux and the libraries are pointed to by that file 
> 
> ld picks up what it needs and they end up in the command line so the post is not right dmd /MyStuff/main.d
> dsss build /Mystuff/main.d
> 
> both do the same No?

I use windows mostly, but I can tell you emphatically that those two absolutely do *not* do the same thing on Windows.

First off, dsss build /Mysuff/main.d will just die with an error if you haven't made a dsss.conf for it.

Second, assuming you do have a dsss.conf, dsss build scans main.d for any 'import' statements, and adds those files to the list of things to compile and link with.  Likewise it adds the imports of those imports, and so on recursively.

'dmd' does none of that.  It just compiles and tries to link main.d into an executable, including a few default standard libs listed in sc.ini.

I don't know what dmd.conf is.

All this is on Windows.  And I'd be surprised if it was radically different on Linux.

--bb
February 20, 2008
Bill Baxter Wrote:
> I use windows mostly, but I can tell you emphatically that those two absolutely do *not* do the same thing on Windows.
> 
> First off, dsss build /Mysuff/main.d will just die with an error if you haven't made a dsss.conf for it.
> 
> Second, assuming you do have a dsss.conf, dsss build scans main.d for any 'import' statements, and adds those files to the list of things to compile and link with.  Likewise it adds the imports of those imports, and so on recursively.
> 
> 'dmd' does none of that.  It just compiles and tries to link main.d into an executable, including a few default standard libs listed in sc.ini.
> 
> I don't know what dmd.conf is.
> 
> All this is on Windows.  And I'd be surprised if it was radically different on Linux.
> 
> --bb


Right Bill thats what I need, On Linux dmd.conf I think is much the same as sc.ini on windows

I have a dsss.conf file for it and the output of both, I must admit, is different and maybe with that piece of info I can progress further. Bloody Tango /Phobos.  Thanks
February 20, 2008
Bill Baxter wrote:
> Ty Tower wrote:
>> Nah You are missing the point here.
>> dmd picks up dmd.conf in linux and the libraries are pointed to by that file
>> ld picks up what it needs and they end up in the command line so the post is not right dmd /MyStuff/main.d
>> dsss build /Mystuff/main.d
>>
>> both do the same No?
> 
> I use windows mostly, but I can tell you emphatically that those two absolutely do *not* do the same thing on Windows.
> 
> First off, dsss build /Mysuff/main.d will just die with an error if you haven't made a dsss.conf for it.
> 
> Second, assuming you do have a dsss.conf, dsss build scans main.d for any 'import' statements, and adds those files to the list of things to compile and link with.  Likewise it adds the imports of those imports, and so on recursively.
> 
> 'dmd' does none of that.  It just compiles and tries to link main.d into an executable, including a few default standard libs listed in sc.ini.
> 
> I don't know what dmd.conf is.
> 
> All this is on Windows.  And I'd be surprised if it was radically different on Linux.
> 
> --bb

You don't need a dsss.conf file you you run dsss with the command "dsss build target", you need a dsss.conf file if you run dsss with the command "dsss build"
February 20, 2008
Ty Tower wrote:
> Jesse Phillips Wrote:
> [tytower@linuxbox dwt-linux]$ dmd main.d gcc main.o -o main -m32 -Xlinker
> -L/usr/bin/../lib -ltango-user-dmd -ltango-base-dmd -lpthread -lm
> main.o.data+0x38): undefined reference to
> `_D3dwt7widgets7Display12__ModuleInfoZ' main.o.data+0x3c): undefined
> reference to `_D3dwt7widgets5Shell12__ModuleInfoZ' main.o: In function
> `_Dmain':
> main.d.text._Dmain+0x8): undefined reference to
> `_D3dwt7widgets7Display7Display7__ClassZ' main.d.text._Dmain+0x13):
> undefined reference to
> `_D3dwt7widgets7Display7Display5_ctorMFZC3dwt7widgets7Display7Display'
> main.d.text._Dmain+0x1b): undefined reference to
> `_D3dwt7widgets5Shell5Shell7__ClassZ' main.d.text._Dmain+0x29):
> undefined reference to
> `_D3dwt7widgets5Shell5Shell5_ctorMFC3dwt7widgets7Display7DisplayZC3dwt7widgets5Shell5Shell'
> collect2: ld returned 1 exit status
> 
> Could not find reference to needed libraries, you used dmd instead of
> dsss or rebuild, so the proper -l flags were not added.
> 
> Just in passing I do not agree with this .There is no reason dmd would not add the correct libraries
> Prove it .
> 
> 

Why do you keep insisting on using only dmd and not dsss? DSSS is a great tool that will help you a lot when you compile D code. You can also download, build and install D related applications and libraries with just one command, like ruby gems if you are familiar with that. I see no reason not to use it.
February 20, 2008
Jacob Carlborg wrote:
> Bill Baxter wrote:
>> Ty Tower wrote:
>>> Nah You are missing the point here.
>>> dmd picks up dmd.conf in linux and the libraries are pointed to by that file
>>> ld picks up what it needs and they end up in the command line so the post is not right dmd /MyStuff/main.d
>>> dsss build /Mystuff/main.d
>>>
>>> both do the same No?
>>
>> I use windows mostly, but I can tell you emphatically that those two absolutely do *not* do the same thing on Windows.
>>
>> First off, dsss build /Mysuff/main.d will just die with an error if you haven't made a dsss.conf for it.
>>
>> Second, assuming you do have a dsss.conf, dsss build scans main.d for any 'import' statements, and adds those files to the list of things to compile and link with.  Likewise it adds the imports of those imports, and so on recursively.
>>
>> 'dmd' does none of that.  It just compiles and tries to link main.d into an executable, including a few default standard libs listed in sc.ini.
>>
>> I don't know what dmd.conf is.
>>
>> All this is on Windows.  And I'd be surprised if it was radically different on Linux.
>>
>> --bb
> 
> You don't need a dsss.conf file you you run dsss with the command "dsss build target", you need a dsss.conf file if you run dsss with the command "dsss build"

Is that so?  I don't think that used to be the case...

Oh, I see.  For that to work you have to include the ".d" in the name.
So "dsss build target.d".  Otherwise you get "target is not described in the configuration file."  You don't need the .d if the target is in a dsss.conf, so I don't usually type it.

Good to know.

--bb
February 20, 2008
Derek Parnell wrote:
> On Tue, 19 Feb 2008 21:18:01 -0800, John Reimer wrote:
> 
>>> Or Bud :-)
>>>
>> You mentioned in another post that you are still working on bud, but you haven't updated svn.  Is there a more recent build of bud that we can get a hold of?  I wouldn't mind giving it a try again.
>>
>> -JJR
> 
> I'm a lucky guy :-) 
> 
> After saying I'd work on it last night, I get a call from a customer saying
> that they have a big problem and thus now so do I. It positively absolutely
> has to be fixed RIGHT NOW! So I work at it and sometime around 11:30pm I
> finish. It's now the next day and I'm waiting for them to say everything's
> alright. I haven't heard from all day them so I'm guessing things can't be
> too bad ... maybe I should call anyways.
> 
> Also, Walter has now delivered DMD 2.011 so I have to recompile and fix up
> the 'gotchas' again. Maybe tonight ... or maybe I'll just hide away and
> play some CoD4 online :LOL:
> 


He he... Yeah, I tend to get a lot of interruptions from "real life" too.  Nothing like having to readjust a schedule repeatedly... and then trying to find just a bit of time to relax from it all. :)

-JJR
February 20, 2008
Bill Baxter wrote:
> Jacob Carlborg wrote:
>> Bill Baxter wrote:
>>> Ty Tower wrote:
>>>> Nah You are missing the point here.
>>>> dmd picks up dmd.conf in linux and the libraries are pointed to by that file
>>>> ld picks up what it needs and they end up in the command line so the post is not right dmd /MyStuff/main.d
>>>> dsss build /Mystuff/main.d
>>>>
>>>> both do the same No?
>>>
>>> I use windows mostly, but I can tell you emphatically that those two absolutely do *not* do the same thing on Windows.
>>>
>>> First off, dsss build /Mysuff/main.d will just die with an error if you haven't made a dsss.conf for it.
>>>
>>> Second, assuming you do have a dsss.conf, dsss build scans main.d for any 'import' statements, and adds those files to the list of things to compile and link with.  Likewise it adds the imports of those imports, and so on recursively.
>>>
>>> 'dmd' does none of that.  It just compiles and tries to link main.d into an executable, including a few default standard libs listed in sc.ini.
>>>
>>> I don't know what dmd.conf is.
>>>
>>> All this is on Windows.  And I'd be surprised if it was radically different on Linux.
>>>
>>> --bb
>>
>> You don't need a dsss.conf file you you run dsss with the command "dsss build target", you need a dsss.conf file if you run dsss with the command "dsss build"
> 
> Is that so?  I don't think that used to be the case...
> 
> Oh, I see.  For that to work you have to include the ".d" in the name.
> So "dsss build target.d".  Otherwise you get "target is not described in the configuration file."  You don't need the .d if the target is in a dsss.conf, so I don't usually type it.
> 
> Good to know.
> 
> --bb

I wrote "target" and not "target.d" because you can have a directory as target and I assume that it also works without a dsss.conf file
February 20, 2008
Bill Baxter wrote:
> Jacob Carlborg wrote:
>> You don't need a dsss.conf file you you run dsss with the command "dsss build target", you need a dsss.conf file if you run dsss with the command "dsss build"
> 
> Is that so?  I don't think that used to be the case...
> 
> Oh, I see.  For that to work you have to include the ".d" in the name.
> So "dsss build target.d".  Otherwise you get "target is not described in the configuration file."  You don't need the .d if the target is in a dsss.conf, so I don't usually type it.
> 
> Good to know.
> 
> --bb

I was wondering about this too, so I just tested it.  Seems that you don't need a dsss.conf to build stuff.  But if there is one in the current dir, you can't build anything not listed in it.  So it's one or the other.
February 21, 2008
Heh Heh Heh
Well I nearly got all the examples built and I especially like the Addressbook .
I'll do a separate post to cover the Mandrake issue because it looks like you don't have a Mandrake user or they would have hit the same problems.

Next up ..but first I would like to get the control example compiled and I have hit another snag so I must ask in case someone sees something stupid and tells me . In the mean time I'll keep looking

These two lines come up after the usual, now all the libraries are there and all the versions are the latest (last two weeks) except dmd is 1.whatever

/usr/lib/gcc/i586-mandriva-linux-gnu/4.1.2/../../../libDD-dwt.a(dwt.widgets.Link.o):(.rodata+0x890): multiple definition of `_D5tango4text4Text11__T4TextTaZ4Text4Span6__initZ'
/usr/lib/gcc/i586-mandriva-linux-gnu/4.1.2/../../../libDD-dwt.a(dwt.widgets.FileDialog.o):(.rodata+0x100): first defined here

Can anybody help with this ...all of dwt is compiled and running

February 21, 2008
Ty Tower wrote:
>  ...all of dwt is compiled and running 

Nice to see that you are making progress and managed to compile and run dwt
1 2 3
Next ›   Last »