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

Compilation on Win32

 
Post new topic   Reply to topic     Forum Index -> Rae
View previous topic :: View next topic  
Author Message
sgifgan67



Joined: 08 Oct 2009
Posts: 4

PostPosted: Thu Oct 08, 2009 10:38 pm    Post subject: Compilation on Win32 Reply with quote

Hello,

looking at your blog showed an impressive demo.

So I read your "Testing RAE" page and tried to build it on Windows.

I used the last EasyD version
installed GTK then GTKD 1.2, build it. The sample works ok (cairo clock for instance)

Then I took the rae trunk

Like you indicated I went directly into the example folder and compiler the helloworld sample.
The library was constructed correctly but at the link stage I got a lot of error messages, saying that some symbols were already defined, the mangled names show exclusively symbols coming from Tango.

Possibly the version of Tango inside easyD is not happy with rae.

Any thought about this ?

Anyway keep up the great work.
Back to top
View user's profile Send private message
sgifgan67



Joined: 08 Oct 2009
Posts: 4

PostPosted: Fri Oct 09, 2009 2:07 am    Post subject: Reply with quote

I checked some more things like if I was really using dmd Version 1 (as EasyD can install both 1 and 2). It was the case (it is dmd 1.030)

The output of the example helloworld build is:

Code:
helloworld.d => helloworld
+ C:\dmd\dsss\bin\rebuild.exe -Idsss_imports\ -I. -S.\ -IC:\dmd\dsss\include\d -SC:\dmd\dsss\lib\  -IC:\dmd\dsss\include\d -SC:\dmd\dsss\lib  -oqdsss_objs\D -I../ -I../../ -I../../dependencies/ -version=gtk -unittest -version=pangocairo -version=zoomGL -g -version=noLodePng -lladvapi32 -llopengl32 -llglu32 -debug=logging helloworld.d -ofhelloworld

OPTLINK (R) for Win32  Release 8.00.1
Copyright (C) Digital Mars 1989-2004  All rights reserved.
dsss_objs\D\rae-Rae.obj(rae-Rae)  Offset 1A60EH Record Type 0091
 Error 1: Previous Definition Different : _D5tango4core6Signal11__T6SignalZ6Signal3Add6__initZ
dsss_objs\D\rae-core-globals.obj(rae-core-globals)  Offset 00D1BH Record Type 0091
 Error 1: Previous Definition Different : _D5tango4core6Signal11__T6SignalZ6Signal3Add6__initZ
dsss_objs\D\rae-core-IRaeMain.obj(rae-core-IRaeMain)  Offset 00C14H Record Type 0091
 Error 1: Previous Definition Different : _D5tango4core6Signal11__T6SignalZ6Signal3Add6__initZ
dsss_objs\D\rae-core-Theme.obj(rae-core-Theme)  Offset 018A3H Record Type 0091
 Error 1: Previous Definition Different : _D5tango4core6Signal11__T6SignalZ6Signal3Add6__initZ
dsss_objs\D\rae-canvas-Image.obj(rae-canvas-Image)  Offset 0235EH Record Type 0091
 Error 1: Previous Definition Different : _D5tango4core6Signal11__T6SignalZ6Signal3Add6__initZ
dsss_objs\D\rae-canvas-Draw.obj(rae-canvas-Draw)  Offset 05BFCH Record Type 0091
 Error 1: Previous Definition Different : _D5tango4core6Signal11__T6SignalZ6Signal3Add6__initZ
dsss_objs\D\rae-canvas-Rectangle.obj(rae-canvas-Rectangle)  Offset 101CBH Record Type 0091
 Error 1: Previous Definition Different : _D5tango4core6Signal11__T6SignalZ6Signal3Add6__initZ
dsss_objs\D\rae-canvas-ICanvasItem.obj(rae-canvas-ICanvasItem)  Offset 00C23H Record Type 0091
 Error 1: Previous Definition Different : _D5tango4core6Signal11__T6SignalZ6Signal3Add6__initZ
dsss_objs\D\rae-ui-Animator.obj(rae-ui-Animator)  Offset 01103H Record Type 0091
 Error 1: Previous Definition Different : _D5tango4core6Signal11__T6SignalZ6Signal3Add6__initZ
dsss_objs\D\rae-core-Idle.obj(rae-core-Idle)  Offset 00E9EH Record Type 0091
 Error 1: Previous Definition Different : _D5tango4core6Signal11__T6SignalZ6Signal3Add6__initZ
dsss_objs\D\rae-canvas-rtree-Node.obj(rae-canvas-rtree-Node)  Offset 00C18H Record Type 0091
 Error 1: Previous Definition Different : _D5tango4core6Signal11__T6SignalZ6Signal3Add6__initZ
dsss_objs\D\rae-canvas-rtree-RTree.obj(rae-canvas-rtree-RTree)  Offset 020CAH Record Type 0091
 Error 1: Previous Definition Different : _D5tango4core6Signal11__T6SignalZ6Signal3Add6__initZ
dsss_objs\D\rae-canvas-PlainRectangle.obj(rae-canvas-PlainRectangle)  Offset 04C35H Record Type 0091
 Error 1: Previous Definition Different : _D5tango4core6Signal11__T6SignalZ6Signal3Add6__initZ
dsss_objs\D\rae-canvas-IShape.obj(rae-canvas-IShape)  Offset 00C12H Record Type 0091
 Error 1: Previous Definition Different : _D5tango4core6Signal11__T6SignalZ6Signal3Add6__initZ
dsss_objs\D\rae-canvas-ShapeRectangle.obj(rae-canvas-ShapeRectangle)  Offset 017C3H Record Type 0091
 Error 1: Previous Definition Different : _D5tango4core6Signal11__T6SignalZ6Signal3Add6__initZ
dsss_objs\D\rae-canvas-ShapeRoundRectangle.obj(rae-canvas-ShapeRoundRectangle)  Offset 00E90H Record Type 0091
 Error 1: Previous Definition Different : _D5tango4core6Signal11__T6SignalZ6Signal3Add6__initZ
dsss_objs\D\rae-canvas-ShapeShadow.obj(rae-canvas-ShapeShadow)  Offset 00F65H Record Type 0091
 Error 1: Previous Definition Different : _D5tango4core6Signal11__T6SignalZ6Signal3Add6__initZ
dsss_objs\D\rae-ui-InputState.obj(rae-ui-InputState)  Offset 00FBBH Record Type 0091
 Error 1: Previous Definition Different : _D5tango4core6Signal11__T6SignalZ6Signal3Add6__initZ
dsss_objs\D\rae-canvas-IRootWindow.obj(rae-canvas-IRootWindow)  Offset 00C23H Record Type 0091
 Error 1: Previous Definition Different : _D5tango4core6Signal11__T6SignalZ6Signal3Add6__initZ
dsss_objs\D\rae-canvas-rtree-AbstractNode.obj(rae-canvas-rtree-AbstractNode)  Offset 017BBH Record Type 0091
 Error 1: Previous Definition Different : _D5tango4core6Signal11__T6SignalZ6Signal3Add6__initZ
dsss_objs\D\rae-canvas-rtree-Index.obj(rae-canvas-rtree-Index)  Offset 011DDH Record Type 0091
 Error 1: Previous Definition Different : _D5tango4core6Signal11__T6SignalZ6Signal3Add6__initZ
dsss_objs\D\rae-canvas-rtree-Leaf.obj(rae-canvas-rtree-Leaf)  Offset 0111EH Record Type 0091
 Error 1: Previous Definition Different : _D5tango4core6Signal11__T6SignalZ6Signal3Add6__initZ
dsss_objs\D\rae-canvas-rtree-Data.obj(rae-canvas-rtree-Data)  Offset 00CDFH Record Type 0091
 Error 1: Previous Definition Different : _D5tango4core6Signal11__T6SignalZ6Signal3Add6__initZ
dsss_objs\D\rae-canvas-rtree-Comparator.obj(rae-canvas-rtree-Comparator)  Offset 00D00H Record Type 0091
 Error 1: Previous Definition Different : _D5tango4core6Signal11__T6SignalZ6Signal3Add6__initZ
dsss_objs\D\rae-canvas-rtree-AblNode.obj(rae-canvas-rtree-AblNode)  Offset 00D09H Record Type 0091
 Error 1: Previous Definition Different : _D5tango4core6Signal11__T6SignalZ6Signal3Add6__initZ
dsss_objs\D\rae-canvas-rtree-PageFile.obj(rae-canvas-rtree-PageFile)  Offset 00E2DH Record Type 0091
 Error 1: Previous Definition Different : _D5tango4core6Signal11__T6SignalZ6Signal3Add6__initZ
dsss_objs\D\rae-canvas-rtree-MemoryPageFile.obj(rae-canvas-rtree-MemoryPageFile)  Offset 04E81H Record Type 0091
 Error 1: Previous Definition Different : _D5tango4core6Signal11__T6SignalZ6Signal3Add6__initZ
dsss_objs\D\rae-canvas-rtree-Sort.obj(rae-canvas-rtree-Sort)  Offset 00E49H Record Type 0091
 Error 1: Previous Definition Different : _D5tango4core6Signal11__T6SignalZ6Signal3Add6__initZ
dsss_objs\D\rae-ui-Scrollbar.obj(rae-ui-Scrollbar)  Offset 01AFBH Record Type 0091
 Error 1: Previous Definition Different : _D5tango4core6Signal11__T6SignalZ6Signal3Add6__initZ
dsss_objs\D\rae-ui-Widget.obj(rae-ui-Widget)  Offset 00BD9H Record Type 0091
 Error 1: Previous Definition Different : _D5tango4core6Signal11__T6SignalZ6Signal3Add6__initZ
dsss_objs\D\rae-canvas-RoundedRectangle.obj(rae-canvas-RoundedRectangle)  Offset 01591H Record Type 0091
 Error 1: Previous Definition Different : _D5tango4core6Signal11__T6SignalZ6Signal3Add6__initZ
dsss_objs\D\rae-ui-Label.obj(rae-ui-Label)  Offset 00F76H Record Type 0091
 Error 1: Previous Definition Different : _D5tango4core6Signal11__T6SignalZ6Signal3Add6__initZ
dsss_objs\D\rae-ui-Button.obj(rae-ui-Button)  Offset 0101DH Record Type 0091
 Error 1: Previous Definition Different : _D5tango4core6Signal11__T6SignalZ6Signal3Add6__initZ
dsss_objs\D\rae-ui-Window.obj(rae-ui-Window)  Offset 03064H Record Type 0091
 Error 1: Previous Definition Different : _D5tango4core6Signal11__T6SignalZ6Signal3Add6__initZ
dsss_objs\D\rae-ui-SubWindow.obj(rae-ui-SubWindow)  Offset 02B1DH Record Type 0091
 Error 1: Previous Definition Different : _D5tango4core6Signal11__T6SignalZ6Signal3Add6__initZ
dsss_objs\D\rae-ui-Menu.obj(rae-ui-Menu)  Offset 017BBH Record Type 0091
 Error 1: Previous Definition Different : _D5tango4core6Signal11__T6SignalZ6Signal3Add6__initZ
dsss_objs\D\rae-ui-Box.obj(rae-ui-Box)  Offset 00E0FH Record Type 0091
 Error 1: Previous Definition Different : _D5tango4core6Signal11__T6SignalZ6Signal3Add6__initZ
dsss_objs\D\rae-ui-Paned.obj(rae-ui-Paned)  Offset 06119H Record Type 0091
 Error 1: Previous Definition Different : _D5tango4core6Signal11__T6SignalZ6Signal3Add6__initZ
dsss_objs\D\rae-ui-ProgressBar.obj(rae-ui-ProgressBar)  Offset 01036H Record Type 0091
 Error 1: Previous Definition Different : _D5tango4core6Signal11__T6SignalZ6Signal3Add6__initZ
--- errorlevel 39
Command C:\dmd\dsss\bin\rebuild.exe returned with code -1, aborting.


Now i'm stuck I don't see what I should check now.
Back to top
View user's profile Send private message
sgifgan67



Joined: 08 Oct 2009
Posts: 4

PostPosted: Fri Oct 09, 2009 3:30 am    Post subject: Reply with quote

I downloaded the tango 0.99.8 bundle (with dmd 1.041) and overwrite the items installed by EasyD.

rebuilt and installed GTKD

then rebuild rae helloword

SUCCESS. The executable exists.

I can launch it, it starts very slowly (almost 15 seconds to have the window).

the console output is the following.
Code:
Rae helloworld
applicationDir before:
applicationDir after: C:/Users/red/rae/examples/helloworld/
workingDir: C:/Users/red/rae/examples/helloworld/
homeDir: C:/
scrHei to: 1024
Unable to turn VSync on.
Checking OpenGL extensions:
GL_ARB_fragment_program found.
GL_ARB_vertex_program found.
GL_EXT_framebuffer_object found.
GL_ARB_texture_rectangle found.
GL_EXT_texture_filter_anisotropic found.
GL_EXT_packed_pixels found.
Maximum texture size: 8192
Unable to turn VSync on.
menu created.
added to menu creating sub.
added 1 sub.
added 2 sub.
add menu.
add buttons.

(helloworld.exe:3296): Gtk-CRITICAL **: gtk_window_resize: assertion `height > 0
' failed
Clicked a button.
Clicked a button.
Clicked a button.


It shows a menu and 3 buttons, but it is not interactive. if I click on a button the console shows 'button clicked', but no visual cue is made. if I touch the menu nothing happens and the program becomes 'Not responding'.
Back to top
View user's profile Send private message
sgifgan67



Joined: 08 Oct 2009
Posts: 4

PostPosted: Fri Oct 09, 2009 7:07 am    Post subject: Reply with quote



by tweeking my NVIDIA openGL settings it became a bit more reactive (about 0.5 fps...)

So it works but not like in your video...

I also checked the White theme which is very nice also (launch "helloworld --theme White")
Back to top
View user's profile Send private message
kaarna



Joined: 03 Apr 2006
Posts: 92
Location: Finland

PostPosted: Fri Oct 09, 2009 9:57 am    Post subject: Reply with quote

Thanks for trying it out. And great that you got it compiling. I don't remember when was the last time I tested on Windows. But it was fast at that point. On some old integrated GPU it was much faster than on my laptop.

I'll have to check how it does on my other Windows install which has an nvidia.
Back to top
View user's profile Send private message AIM Address MSN Messenger
kaarna



Joined: 03 Apr 2006
Posts: 92
Location: Finland

PostPosted: Sun Oct 11, 2009 5:54 pm    Post subject: Reply with quote

tested it. did the same as you. the new tango and dmd bundle. it is really slow.
some kind of compiler regression. or something to do with easy d being overwritten. But propably something compiler related. I tried old version of it, and with the old compiler it is fast, and with the new one it's slow.

I also added a new example called paned_app, which is quite like the one showed on the video (without the external video library dependencies). The speed is very fast on OS X, and ok on Linux. Some animation glitches due to garbage collection I guess.

If somebody could try Rae on Windows with other versions of DMD, and possibly if those don't work, then with tango trunk or something. I'd like to know if it's fast on any DMD version. (GDC seems to work fine.)
Back to top
View user's profile Send private message AIM Address MSN Messenger
kaarna



Joined: 03 Apr 2006
Posts: 92
Location: Finland

PostPosted: Wed May 25, 2011 8:08 am    Post subject: Windows build should work now with Tango 0.99.9 Reply with quote

It should now work with Windows.

Some quick notes on how to do it... I'm not sure... You might need my custom GtkD, or maybe not...
http://www.dsource.org/projects/rae/wiki/windows
Back to top
View user's profile Send private message AIM Address MSN Messenger
Display posts from previous:   
Post new topic   Reply to topic     Forum Index -> Rae 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