Just outright stunninly confusing

John Reimer terminal.node at gmail.com
Wed Feb 13 18:27:42 PST 2008

Ty Tower wrote:
> John Reimer Wrote:
> Thanks John . Trying to be constructive in my criticism to give a clear indication as to how a new user finds it 
>> I'm not sure I'm following all that's going on here.  Have you tried 
>> adding "-I../dwt-linux" to your dsss command line?  If dwt-linux is 
>> installed using dsss, then this addition is not necessary.  But if not, 
>> you will need to provide the path to dsss like so:
>> dsss build -I../dwt-linux
> I built dwt-linux sucessfully I think with "dsss build" from the dwt-linux directory
> It built all the object files and reported no errors.
> I then tried the same with "dwt-samples-8d49c4eb4800" which is how it downloaded .
> Here I have got stuck with it compiling quite a lot of object files(mostly Tango stuff-47 in all) and then getting stuck looking for "-lXdamage"-below is the tail of the output.
> d/lib -Xlinker -L/usr/bin/../lib -ltango-user-dmd -ltangobos -Xlinker -L/usr/bin/../lib -ltango-user-dmd -ltangobos -ltango-base-dmd -lpthread -lm
> /usr/lib/gcc/i586-mandriva-linux-gnu/4.1.2/../../../libphobos.a(linux.o):(.data+0x0): multiple definition of `MAP_FAILED'
> dsss_objs/D/tango.stdc.posix.sys.mman.o:(.data+0x1c): first defined here
> /usr/lib/gcc/i586-mandriva-linux-gnu/4.1.2/../../../libphobos.a(linux.o):(.data+0x4): multiple definition of `FD_SETSIZE'
> dsss_objs/D/tango.stdc.posix.sys.select.o:(.data+0x4): first defined here
> /usr/lib/gcc/i586-mandriva-linux-gnu/4.1.2/../../../libphobos.a(linux.o):(.data+0xc): multiple definition of `RTLD_NOW'
> dsss_objs/D/tango.stdc.posix.dlfcn.o:(.data+0x4): first defined here
> /usr/lib/gcc/i586-mandriva-linux-gnu/4.1.2/../../../libphobos.a(linux.o):(.data+0x10): multiple definition of `_SIGSET_NWORDS'
> dsss_objs/D/tango.stdc.posix.signal.o:(.data+0x40): first defined here
> /usr/bin/ld: cannot find -lXdamage
> collect2: ld returned 1 exit status
> --- errorlevel 1
> Command /usr/bin/rebuild returned with code 65280, aborting.
> Error: Command failed, aborting.
> So the build won't compile.

Firstly, it does look like your installation is looking at an extraneous 
libphobos.a.  When you install Tango, you may have to make sure that all 
old phobos libraries are removed from your system.

On my linux system, I do not install my compilers or libraries at the 
system level (/usr/bin, /usr/lib, or /etc). I regard doing so as 
"polluting" the system (unless these libraries and binaries are in an 
official distribution package).  I much prefer installing the binaries 
and libraries "per user" in /home/<username>/bin and 
/home/<username>/lib etc.  This keeps all problems local, and this, for 
me at least, is much easier to troubleshoot. If you are interested, I 
can try to outline for you how my system is setup so you can try the same?

Secondly, make sure that your tango installation is working correctly 
before you try to compile the dwt examples.  Merely building the dwt.lib 
will not verify correct tango installation because doing so does not 
enter the link phase.  Please make sure Tango is correctly installed by 
first testing that the Tango examples build and link (see tango/example 
directory).  If they do not, then this is a Tango issue for you, and you 
should ask for support in the Tango forums to get this fixed before 
experimenting with dwt.

I know you prefer not to use IRC, but I remind you again that you will 
probably find lots of troubleshooting help in real time there 
(especially for Tango).  However, I'm willing to try to fix the DWT side 
of things in this newsgroup, if you prefer, but I encourage you to tap 
any troubleshooting resource available to you to get your problems 
resolved.  My time is limited, and I can only check this newsgroup 


More information about the Digitalmars-d-dwt mailing list