On Thu, 23 Feb 2006 09:33:50 +0100, Anand Buddhdev wrote:
> Seth Lipkin wrote:
>
>>> I don't know enough about C++, and even less about C++ on
>>> Windows, so I'm not sure why the build failed. It may be
>>> because Quacker code compiles under GCC 4, but not under GCC 3,
>>> which is what MinGW ships with, and is what is recommended by
>>> Trolltech for building Qt applications.
>>>
>> I know C++ and Windows. What I don't know is the process for getting
>> the various compilers and libraries onto my computer so that I can
>> even start trying to build anything. I know the setup can't be that
>> complicated, but I have too much going on right now to figure it out
>> myself.
>>
>> Once it comes down to compiling and fixing errors and/or notifying the
>> team, I think I might be able to be some help, and I surely would like
>> to see Quackle in action. Quick pointers, anyone?
>>
> Ok, you need to install Python, Scons (which is a Python program), and a
> C++ compiler (you could try the Windows one, or the GNU compiler).
>
> http://www.python.org
> http://www.scons.org
>
> Then, to compile Quacker, the GUI component, you need Qt 4 from
> Trolltech:
>
> http://www.trolltech.com
>
> You can download the non-commercial version and use it for free. In
> order to compile programs that use Qt, you'll need the MinGW C++
> compiler. The Qt installer will install MinGW for you if you don't
> already have it.
>
> When you've installed all this, then just follow the instructions in the
> README file of Quackle to build it. It was a doddle to build on Linux
> (although it took a long time, because I had to build Qt 4 from
> source).

Well, I'm an experienced developer in Visual Studio and various 
command-line environments, although I've never played with mingw.  I just 
spent the last several hours banging my head against this problem, and 
here's what I've come up with...

* Python, SCons, MinGW, QT, all installed and in reasonable working order.

* Had to modify the SConstruct file to add a custom environment with the 
setting...
        tools=['mingw']
because SCons preferred to use my Visual Studio install by default.

* Got numerous errors related to wstring.  Turns out that it is a 
well-known fact among MinGW users that it doesn't support wstring.  *SIGH*.
For example,

http://sourceforge.net/mailarchive/message.php?msg_id=13992381

(searching for wstring in the forums turns up huge numbers of messages on 
the subject).

* Per forum advice, I tried installing STLPort, an STL replacement which 
ought to fix the wstring deficit.  But, in order to build STLPort, I had to 
install MSYS, a thin, cygwin-type shell.

* Seemed to successfully build STLPort.  Tried building Quackle again.  
This time, it bails on a simple string iterators like the following...

        // for parameter ls of type LetterString, which is basically a wstring
        Letter value = *(--ls.end());

proclaiming that ls.end() is not an lvalue.  Fine...easily replaced with 
*(ls.end() - 1), which I believe performs the same intent in the given 
context (although my STL knowledge is only so-so, so not 100% sure).

* And now down to the kicker...I can't get things to link against the 
STLPort library.  It complains about many, many symbols which look like 
they're probably part of libstdc++ (or, in this case, stlport) not linking.

I've not yet independently tested STLPort, so maybe I don't have a 
functioning build, but it's late and time for me to go to bed.  
Double-checking STLPort is probably the next thing I'll try, and if still 
nothing yields, I'll check to see if I can get Qt to work with cygwin or 
Visual Studio.  Probably won't get a chance to try again till the weekend, 
so I'd be interested to hear if anybody else makes better progress in the 
mean time.

John Fultz
[EMAIL PROTECTED]
User Interface Group
Wolfram Research, Inc.




 
Yahoo! Groups Links

<*> To visit your group on the web, go to:
    http://groups.yahoo.com/group/quackle/

<*> To unsubscribe from this group, send an email to:
    [EMAIL PROTECTED]

<*> Your use of Yahoo! Groups is subject to:
    http://docs.yahoo.com/info/terms/
 


Reply via email to