FAQFAQ   SearchSearch   MemberlistMemberlist   UsergroupsUsergroups   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 

Trying to build gtkD with DSSS and dmd 2.014 (Linux)

 
Post new topic   Reply to topic     Forum Index -> gtkD
View previous topic :: View next topic  
Author Message
walt kelly



Joined: 13 Jun 2008
Posts: 3

PostPosted: Sat Jun 14, 2008 9:12 pm    Post subject: Trying to build gtkD with DSSS and dmd 2.014 (Linux) Reply with quote

I read:
Quote:

Latest Release: Preview 8 (3/28/2008)

A new pre-release of gtkD for DMD 1.028+ is now available: gtkD-pre8.zip
Preview 8 works with both Phobos and Tango, works with both D 1.0 and D 2.0, and is now fully functional with dsss! We will be phasing out compD for those of you who still use it.


The DSSS build fails with syntax errors in the phobos library imports. What does it mean "for DMD 1.028+" vs "works with both D 1.0 and D 2.0"?

(BTW, I'm a total newbie to D, and gtkD - I'm wanting to learn by porting a (python / PyQt) program to D /gtkd. )

Code:

[parz@lobsang gtkD]$ dsss build
undemofy
Command: cd demos
Command: ./demoselect.sh disable-all
+ ./demoselect.sh disable-all

Creating imports for DD-atk

Creating imports for DD-cairo

Creating imports for DD-gdk

Creating imports for DD-gdkpixbuf

Creating imports for DD-glade

Creating imports for DD-glib

Creating imports for DD-gobject

Creating imports for DD-gthread

Creating imports for DD-gtk

Creating imports for DD-gtkc

Creating imports for DD-pango

atk => DD-atk
+ /home/parz/Download/dsss-0.75-dmd-gnuWlinux-x86/bin/rebuild -Idsss_imports/ -I. -S./ -I/home/parz/Download/dsss-0.75-dmd-gnuWlinux-x86/include/d -S/home/parz/Download/dsss-0.75-dmd-gnuWlinux-x86/lib/  -I/home/parz/Download/dsss-0.75-dmd-gnuWlinux-x86/include/d -S/home/parz/Download/dsss-0.75-dmd-gnuWlinux-x86/lib -I/home/parz/d/include/d -S/home/parz/d/lib  -oqdsss_objs/D  -explicit -lib atk/ValueAtk.d atk/Util.d atk/ObjectFactory.d atk/State.d atk/NoOpObject.d atk/Hypertext.d atk/Selection.d atk/Action.d atk/Image.d atk/Hyperlink.d atk/ObjectAtk.d atk/EditableText.d atk/GObjectAccessible.d atk/Relation.d atk/Text.d atk/Component.d atk/RelationSet.d atk/Document.d atk/Table.d atk/StateSet.d atk/Registry.d atk/NoOpObjectFactory.d atk/StreamableContent.d -oflibDD-atk.a
/home/parz/Download/dmd.2.014/dmd/bin/../src/phobos/std/stdio.d(242): enum declaration is invalid
/home/parz/Download/dmd.2.014/dmd/bin/../src/phobos/std/stdio.d(242): found '=' instead of statement
/home/parz/Download/dmd.2.014/dmd/bin/../src/phobos/std/stdio.d(247): enum declaration is invalid
/home/parz/Download/dmd.2.014/dmd/bin/../src/phobos/std/stdio.d(247): found '=' instead of statement
/home/parz/Download/dmd.2.014/dmd/bin/../src/phobos/std/stdio.d(360): enum declaration is invalid
/home/parz/Download/dmd.2.014/dmd/bin/../src/phobos/std/stdio.d(360): found '=' instead of statement
/home/parz/Download/dmd.2.014/dmd/bin/../src/phobos/std/stdio.d(367): enum declaration is invalid
/home/parz/Download/dmd.2.014/dmd/bin/../src/phobos/std/stdio.d(367): found '=' instead of statement
/home/parz/Download/dmd.2.014/dmd/bin/../src/phobos/std/stdio.d(372): enum declaration is invalid
/home/parz/Download/dmd.2.014/dmd/bin/../src/phobos/std/stdio.d(372): found '=' instead of statement
/home/parz/Download/dmd.2.014/dmd/bin/../src/phobos/std/stdio.d(812): enum declaration is invalid
/home/parz/Download/dmd.2.014/dmd/bin/../src/phobos/std/stdio.d(1040): enum declaration is invalid
/home/parz/Download/dmd.2.014/dmd/bin/../src/phobos/std/stdio.d(1079): enum declaration is invalid
/home/parz/Download/dmd.2.014/dmd/bin/../src/phobos/std/stdio.d(1079): found '=' instead of statement
/home/parz/Download/dmd.2.014/dmd/bin/../src/phobos/std/c/stdio.d(23): enum member expected
/home/parz/Download/dmd.2.014/dmd/bin/../src/phobos/std/c/stdio.d(24): enum member expected
/home/parz/Download/dmd.2.014/dmd/bin/../src/phobos/std/c/stdio.d(25): enum member expected
/home/parz/Download/dmd.2.014/dmd/bin/../src/phobos/std/c/stdio.d(26): enum member expected
/home/parz/Download/dmd.2.014/dmd/bin/../src/phobos/std/c/stdio.d(27): enum member expected
/home/parz/Download/dmd.2.014/dmd/bin/../src/phobos/std/c/stdio.d(28): enum member expected
/home/parz/Download/dmd.2.014/dmd/bin/../src/phobos/std/c/stdio.d(29): enum member expected
Command /home/parz/Download/dsss-0.75-dmd-gnuWlinux-x86/bin/rebuild returned with code 256, aborting.
Error: Command failed, aborting.
[parz@lobsang gtkD]$
Back to top
View user's profile Send private message
Mike Wey



Joined: 07 May 2007
Posts: 428

PostPosted: Sun Jun 15, 2008 8:39 am    Post subject: Reply with quote

Quote:
The DSSS build fails with syntax errors in the phobos library imports.


DSSS does not yet support the new enum introduced in dmd 2.009. i think support for it is in the dsss svn.

Quote:
What does it mean "for DMD 1.028+"


I think this is a leftover from the time when the D1 branch was fairly unstable and a new version could break a number of things. and added new features with every relese, since then the D1 branch became stable, ie: bug fixes only, and D2 became the new development branch. so now D2 can break the code on a new release.

Quote:
"works with both D 1.0 and D 2.0"?


GtkD should work with both the D1 (stable) and the D2 (alpha) versions of the D Language. Last time i tested GtkD with D2 was with dmd 2.013.
Back to top
View user's profile Send private message
walt kelly



Joined: 13 Jun 2008
Posts: 3

PostPosted: Sun Jun 15, 2008 10:50 pm    Post subject: Reply with quote

Quote:
GtkD should work with both the D1 (stable) and the D2 (alpha) versions of the D Language. Last time i tested GtkD with D2 was with dmd 2.013.


How did you build gtkD for D2?
Back to top
View user's profile Send private message
Mike Wey



Joined: 07 May 2007
Posts: 428

PostPosted: Mon Jun 16, 2008 2:02 pm    Post subject: Reply with quote

You can use the compd scripts.

or a script like this:
Code:
#!/bin/bash

# Build libGtkD.a
cd src
rm -rf obj
mkdir obj

for file in *; do
   if [ -d $file ] && [ $file != "build" ] && [ $file != "obj" ]; then
      dmd $file/*.d -c
      for i in *.o; do mv "$i" "obj/$file.$i"; done
   fi
done

ar rc ../libGtkD.a obj/*
cd ..

# Build libGtkDgl.a
cd srcgl
rm -rf obj
mkdir obj

for file in *; do
   if [ -d $file ] && [ $file != "obj" ]; then
      dmd $file/*.d -I../src -c
      for i in *.o; do mv "$i" "obj/$file.$i"; done
   fi
done

ar rc ../libGtkDgl.a obj/*
cd ..

# Build libGtkDsv.a
cd srcsv
rm -rf obj
mkdir obj

for file in *; do
   if [ -d $file ] && [ $file != "obj" ]; then
      dmd $file/*.d -I../src -c
      for i in *.o; do mv "$i" "obj/$file.$i"; done
   fi
done

ar rc ../libGtkDsv.a obj/*
Back to top
View user's profile Send private message
walt kelly



Joined: 13 Jun 2008
Posts: 3

PostPosted: Wed Jun 18, 2008 9:20 am    Post subject: Reply with quote

Wonderful! 10 seconds later, it is built. Thanks.

Why not distribute this way? No ever expanding nest of problems installing tools which need tools which have problems which require questions on forums which reveal they wont work with other other things which are needed by yet other things...
Back to top
View user's profile Send private message
Display posts from previous:   
Post new topic   Reply to topic     Forum Index -> gtkD All times are GMT - 6 Hours
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum


Powered by phpBB © 2001, 2005 phpBB Group