January 05, 2006
=?ISO-8859-1?Q?Anders_F_Bj=F6rklund?= <afb@algonet.se> wrote:
>S. Chancellor wrote:
>
>> Awesome!  Thanks alot for your effort.  I've been waiting for somebody to do this.  Why do phobos and libstdc++ need to be linked statically btw?
>
>I don't think there is any alternative, with DMD/DMC ?
>
>For Mac OS X, C++ is static on 10.3 and dynamic on 10.4 (had forgotten that when I made the Makefile, as noted)
>
>But what I meant is that *if* they are, it becomes big. :-)
>
>
>If it's all compiled with the same C++ compiler that has
>a runtime already present in the system, it can be dynamic.
>
>Ditto for wxWidgets, as it's possible to do a "wx.framework" or otherwise link to a dynamic shared library outside the app.
>
>--anders

Okay, that makes sense :)  I hope Walter introduces a name mangling specification and vtbl format etc... so that the same problems don't befall D :)

-S.



-- 
Email works.

January 05, 2006
S. Chancellor wrote:

> Okay, that makes sense :)  I hope Walter introduces a name mangling
> specification and vtbl format etc... so that the same problems don't befall
> D :)

Too late... :-P

Already have to build two different libs: one for GDC, one for DMD.
(different ABI, different Phobos). It seems only "C" is constant*...

--anders

* 1,079,252,848.8 km/h :-)
January 05, 2006
Anders F Björklund skrev:
>> OK, hadn't tried it under Tiger yet... But you can probably get it to
>> work by either taking the -lcc_dynamic out, or changing it to -lgcc ?
>>
>> It's in "config.Darwin", BTW.
> 
> Tested with Tiger now, and taking it out was the way to go here...
> 
> (see http://www.algonet.se/~afb/d/wxWidgets-Minimal-Tiger.png)
> 
<snip>

Well, not as lucky on my part. Recompiled wxd as per instructions but get this one:

make CXX="g++ -D__GDC__" DMD="gdmd" -C Samples
make -C Controls
gdc -c -O2 -I../.. Controls.d
gdc -o ../../bin/Controls Controls.o -L../.. -lwxd -lwxc `wx-config --libs` -lstdc++
/usr/bin/ld: Undefined symbols:
typeinfo for wxThread
 ... <SNIP> ...
typeinfo for wxNumberEntryDialog
collect2: ld returned 1 exit status
make[2]: *** [../../bin/Controls] Error 1
make[1]: *** [all] Error 2
make: *** [all] Error 2


Must wxWidgets be recompiled as well?

// Fredrik Olsson
January 05, 2006
Fredrik Olsson wrote:

> Must wxWidgets be recompiled as well?

Yes, you must compile wxWidgets with the same C++ version as "wxc"
(this is because C++ can't link code from two different versions...)

You can use e.g. "g++-3.3" and "g++-4.0" as the CXX compiler names.

--anders
January 05, 2006
Anders F Björklund skrev:
> Fredrik Olsson wrote:
> 
>> Must wxWidgets be recompiled as well?
> 
> 
> Yes, you must compile wxWidgets with the same C++ version as "wxc"
> (this is because C++ can't link code from two different versions...)
> 
> You can use e.g. "g++-3.3" and "g++-4.0" as the CXX compiler names.
> 
> --anders

It is compiled with the same version. First I compiled wxWidgets, and then wxd, it failed on Tiger, so I recompiled wxd without -lcc_dynamic, and got this error.

So what I meant is if I need to recompile wxWidgets as well, as part of the "Tiger fix"?

// Fredrik Olsson
January 05, 2006
Fredrik Olsson wrote:

> It is compiled with the same version. First I compiled wxWidgets, and then wxd, it failed on Tiger, so I recompiled wxd without -lcc_dynamic, and got this error.
> 
> So what I meant is if I need to recompile wxWidgets as well, as part of the "Tiger fix"?

They're not *really* related.

The addition of libgcc.a (via the symlink libcc_dynamic.a -> /usr/lib/gcc/darwin/default/libgcc.a) was done in order to fix
the link errors "restFP" and "saveFP", when compiling on Panther.
(like this: http://nxg.me.uk/note/2004/restFP/)

What it says is that it isn't able to find the C++ typeinfo,
which I saw when I was trying to run G++-3.3 progs with G++-4.0...

Maybe it's some other error in your case ?
You could try compiling wxWidgets dynamically ?

--anders
January 11, 2006
Anders F Björklund wrote:
> BERO wrote:
> 
>> I was taken it from wx.NET,
>> it is separeted as C++ to C wrapper (wx-c) and C to C# wrapper (wx.NET)
>> wxD use wx-c , and convert C# part to D using perl script and/or modify by hand.
> 
> 
> Actually it seemed that wx-c didn't fully use SWIG either, but Perl too.
> 
> (background info: wxD version I posted is just a minor update to BERO's)
> 
>> I think you can use same way.
>> using Qt#
>> http://qtcsharp.sourceforge.net/
>>
>> it is separeted as C++ to C wrapper (qtc) and C to C# wrapper (qtsharp)
>> so "C wrappers for the C++ methods" is already exists.
> 
> 
> Seems like it (Qt#) has some problems with Windows and Mac OS X, though?
> 
> So I think I will stick with wxWidgets... It has a better license too...
> (from http://doc.trolltech.com/4.1/aboutqt.html, it's GPL or *000 euros)

I, on the other hand, am eagerly waiting for this QT-wrapper. Qt is a quality product (much better code than GTK+) and the license alternatives aren't that bad for home users and bigger enterprises.

Jari-Matti
January 16, 2006
Does wxD have cross-platform OpenGL support?  If not, when?

-Craig


January 16, 2006
"Juan Jose Comellas" <jcomell@hotmail.com> wrote in message news:dphl9e$qrg$1@digitaldaemon.com...
> What did you use to write the C wrappers for the C++ methods? I was
> thinking
> of doing something like this for Qt, but having to write this amount of
> wrapper code manually looked like an insurmountable task.

If you port Qt to D you will be my hero forever.

-Craig


January 16, 2006
Craig Black wrote:

> Does wxD have cross-platform OpenGL support?  If not, when?

There *is* support in wxWidgets for OpenGL (wxGLCanvas), and
there is support in D for using OpenGL - but not in wxD yet.


Mostly because it wasn't in wx.NET version 0.7.2, actually...

If anyone wants to write the needed wrappers for wxc / wxd,
we'd be more than happy to include them in wxD of course :-)

(http://www.wxwidgets.org/manuals/2.6.1/wx_wxglcanvas.html)


You can use http://sourceforge.net/tracker/?group_id=133831

--anders
1 2
Next ›   Last »