Please correct me if I'm wrong, but I think that in the file
fixedstring.h the line that reads
#include <string.h>
should instead read:
#include <string>
However, after making this change on my computer, qmake and make in the
main quackle directory still produce errors:
g++ -c -pipe -O2 -fPIC -Wall -W -D_REENTRANT -DQT_NO_DEBUG
-I../../share/qt4/mkspecs/linux-g++ -I. -I../../include/qt4 -I. -I. -o
obj/release/bogowinplayer.o bogowinplayer.cpp
In file included from alphabetparameters.h:27,
from sim.h:26,
from computerplayer.h:24,
from bogowinplayer.h:24,
from bogowinplayer.cpp:23:
fixedstring.h: In constructor
`Quackle::FixedLengthString::FixedLengthString(const char*, unsigned
int)':
fixedstring.h:110: error: `memcpy' was not declared in this
scope
fixedstring.h: In constructor
`Quackle::FixedLengthString::FixedLengthString(const char*)':
fixedstring.h:127: error: `strlen' was not declared in this
scope
fixedstring.h:129: error: `memcpy' was not declared in this
scope
fixedstring.h: In copy constructor
`Quackle::FixedLengthString::FixedLengthString(const
Quackle::FixedLengthString&)':
fixedstring.h:137: error: `memcpy' was not declared in this
scope
fixedstring.h: In member function `Quackle::FixedLengthString&
Quackle::FixedLengthString::operator=(const
Quackle::FixedLengthString&)':
fixedstring.h:145: error: `memcpy' was not declared in this
scope
fixedstring.h: In member function `void
Quackle::FixedLengthString::erase(char*)':
fixedstring.h:177: error: `memmove' was not declared in this
scope
fixedstring.h: In member function `Quackle::FixedLengthString&
Quackle::FixedLengthString::operator+=(const
Quackle::FixedLengthString&)':
fixedstring.h:213: error: `memcpy' was not declared in this
scope
In file included from board.h:28,
from game.h:29,
from sim.h:27,
from computerplayer.h:24,
from bogowinplayer.h:24,
from bogowinplayer.cpp:23:
move.h: At global scope:
move.h:100: warning: type qualifiers ignored on function return type
move.h:103: warning: type qualifiers ignored on function return type
move.h:198: warning: type qualifiers ignored on function return type
move.h:208: warning: type qualifiers ignored on function return type
make: *** [obj/release/bogowinplayer.o] Error 1
--- In [email protected], Matt Liberty <matt.libe...@...> wrote:
>
> Looks like string.h needs to be included in fixedstring.h. I made
that
> change and checked it in - please update and try it again. Btw, what
> version of gcc are you using? With 4.2.1 on a mac I didn't get this
error.
>
> Matt
>
> On Wed, Aug 25, 2010 at 7:00 PM, tatapudy tatap...@... wrote:
>
> >
> >
> > This is not working for me either:
> >
> > $pwd && qmake && make
> > /usr/local/quackle-0.96
> > g++ -c -pipe -g -Wall -W -O2 -D_REENTRANT -DQT_NO_DEBUG
> > -DQT_THREAD_SUPPORT -DQT_SHARED -DQT_TABLET_SUPPORT
> > -I/usr/share/qt3/mkspecs/default -I. -I. -I../../include/qt3 -o
> > obj/release/bogowinplayer.o bogowinplayer.cpp
> >
> > In file included from alphabetparameters.h:27,
> > from sim.h:26,
> > from computerplayer.h:24,
> > from bogowinplayer.h:24,
> > from bogowinplayer.cpp:23:
> >
> > fixedstring.h: In constructor
> > `Quackle::FixedLengthString::FixedLengthString(const char*, unsigned
int)':
> > fixedstring.h:109: error: `memcpy' was not declared in this scope
> > fixedstring.h: In constructor
> > `Quackle::FixedLengthString::FixedLengthString(const char*)':
> > fixedstring.h:126: error: `strlen' was not declared in this scope
> > fixedstring.h:128: error: `memcpy' was not declared in this scope
> > fixedstring.h: In copy constructor
> > `Quackle::FixedLengthString::FixedLengthString(const
> > Quackle::FixedLengthString&)':
> > fixedstring.h:136: error: `memcpy' was not declared in this scope
> > fixedstring.h: In member function `Quackle::FixedLengthString&
> > Quackle::FixedLengthString::operator=(const
Quackle::FixedLengthString&)':
> > fixedstring.h:144: error: `memcpy' was not declared in this scope
> > fixedstring.h: In member function `void
> > Quackle::FixedLengthString::erase(char*)':
> > fixedstring.h:176: error: `memmove' was not declared in this scope
> >
> > fixedstring.h: In member function `Quackle::FixedLengthString&
> > Quackle::FixedLengthString::operator+=(const
Quackle::FixedLengthString&)':
> > fixedstring.h:212: error: `memcpy' was not declared in this scope
> > In file included from board.h:28,
> > from game.h:29,
> > from sim.h:27,
> > from computerplayer.h:24,
> > from bogowinplayer.h:24,
> > from bogowinplayer.cpp:23:
> > move.h: At global scope:
> > move.h:100: warning: type qualifiers ignored on function return type
> > move.h:103: warning: type qualifiers ignored on function return type
> > move.h:198: warning: type qualifiers ignored on function return type
> > move.h:208: warning: type qualifiers ignored on function return type
> > make: *** [obj/release/bogowinplayer.o] Error 1
> >
> >
> > Nor this:
> >
> > $pwd && qmake && cd quackleio/ && qmake && cd ../quacker/ && qmake
&& cd ..
> > && make
> > /usr/local/quackle-0.96
> > g++ -c -pipe -g -Wall -W -O2 -D_REENTRANT -DQT_NO_DEBUG
> > -DQT_THREAD_SUPPORT -DQT_SHARED -DQT_TABLET_SUPPORT
> > -I/usr/share/qt3/mkspecs/default -I. -I. -I../../include/qt3 -o
> > obj/release/bogowinplayer.o bogowinplayer.cpp
> >
> > In file included from alphabetparameters.h:27,
> > from sim.h:26,
> > from computerplayer.h:24,
> > from bogowinplayer.h:24,
> > from bogowinplayer.cpp:23:
> >
> > fixedstring.h: In constructor
> > `Quackle::FixedLengthString::FixedLengthString(const char*, unsigned
int)':
> > fixedstring.h:109: error: `memcpy' was not declared in this scope
> > fixedstring.h: In constructor
> > `Quackle::FixedLengthString::FixedLengthString(const char*)':
> > fixedstring.h:126: error: `strlen' was not declared in this scope
> > fixedstring.h:128: error: `memcpy' was not declared in this scope
> > fixedstring.h: In copy constructor
> > `Quackle::FixedLengthString::FixedLengthString(const
> > Quackle::FixedLengthString&)':
> > fixedstring.h:136: error: `memcpy' was not declared in this scope
> > fixedstring.h: In member function `Quackle::FixedLengthString&
> > Quackle::FixedLengthString::operator=(const
Quackle::FixedLengthString&)':
> > fixedstring.h:144: error: `memcpy' was not declared in this scope
> > fixedstring.h: In member function `void
> > Quackle::FixedLengthString::erase(char*)':
> > fixedstring.h:176: error: `memmove' was not declared in this scope
> >
> > fixedstring.h: In member function `Quackle::FixedLengthString&
> > Quackle::FixedLengthString::operator+=(const
Quackle::FixedLengthString&)':
> > fixedstring.h:212: error: `memcpy' was not declared in this scope
> > In file included from board.h:28,
> > from game.h:29,
> > from sim.h:27,
> > from computerplayer.h:24,
> > from bogowinplayer.h:24,
> > from bogowinplayer.cpp:23:
> > move.h: At global scope:
> > move.h:100: warning: type qualifiers ignored on function return type
> > move.h:103: warning: type qualifiers ignored on function return type
> > move.h:198: warning: type qualifiers ignored on function return type
> > move.h:208: warning: type qualifiers ignored on function return type
> > make: *** [obj/release/bogowinplayer.o] Error 1
> >
> > (I believe gmake is the same as make on Ubuntu 10.04. I have wrx
> > permissions for everything in /usr/local/). Have I misunderstood
your
> > instructions?
> >
> > --- In [email protected], John Fultz jfultz@ wrote:
> > >
> > >[snip]
> >
> > >
> > >you should run qmake, then
> > > gmake in the appropriate directories. Those directories being...
> > >
> > > quackle/
> > > quackle/quackleio/
> > > quackle/quacker/
> > >
> > > ...the last of which is what builds the final Quackle binary.
> > >
> > > Sincerely,
> > >
> > > John Fultz
> > > jfultz@
> >
> > >
> > >
> > > On Wed, 25 Aug 2010 23:16:54 -0000, tatapudy wrote:
> > > > Running Ubuntu 10.04, I do not seem to be able to build
quackle-0.96
> > from
> > > > source. I installed qt-sdk-linux-x86_64-opensource-2010.04.bin
in a
> > > > directory in my PATH and ran the Qt setup program. I apparently
have Qt
> > > > Version 4.6.3 installed. I have scons installed:
> > > >
> > > >> $scons --version
> > > >> SCons by Steven Knight et al.:
> > > >> script: v1.2.0.d20100117.r4629, 2010/01/17 22:23:21, by scons
on
> > > >> scons-dev
> > > >> engine: v1.2.0.d20100117.r4629, 2010/01/17 22:23:21, by scons
on
> > > >> scons-dev
> > > >> Copyright (c) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008,
2009,
> > > >> 2010 The SCons Foundation
> > > >>
> > > > I unpacked the tarball available here:
> > > >
> > > >> http://people.csail.mit.edu/jasonkb/quackle/downloads/quackle-
> > > >> 0.96/quackle-0.96-source.tar.gz
> > > >>
> > > >
> > > > The README file in the quackle-0.96 directory says:
> > > >
> > > >> Quackle 0.96 - a crossword game playing and analysis tool
> > > >>
> > > >> See LICENSE in this dire
> > > >> ctory.
> > > >>
> > > >> In this directory is libquackle. Install SCons and run 'scons
r=1' to
> > > >> build it with optimizations or 'scons d=1' to build with debug
> > symbols.
> > > >> Then cd to quackle/quackleio/, run qmake, and then run make.
> > > >>
> > > >> In quacker/ is a GUI that uses libquackle. It requires Qt 4.
Run qmake
> > > >> then make in that directory to build it. Then, from within
> > > >> quackle/quacker/, run ./quacker to start the program.
> > > >>
> > > >> olaughlin@
> > > >> jasonkb@
> > > >> jfultz@
> > > >> matt.liberty@
> >
> > > >>
> > > >>
> > > > Now I cd to the quackle-0.96 directory and encounter the
following
> > > > problem:
> > > >
> > > >> $scons r=1
> > > >> scons: Reading SConscript files ...
> > > >> scons: done reading SConscript files.
> > > >> scons: Building targets ...
> > > >> g++ -o alphabetparameters.o -c -O2 alphabetparameters.cpp
> > > >> In file included from alphabetparameters.h:27,
> > > >> from alphabetparameters.cpp:24:
> > > >> fixe
> > > >> dstring.h:69: error: 'string' in namespace 'std' does not name
a type
> > > >> fixedstring.h: In constructor
> > > >> 'Quackle::FixedLengthString::FixedLengthString(const char*,
unsigned
> > > >> int)':
> > > >> fixedstring.h:109: error: 'memcpy' was not declared in this
scope
> > > >> fixedstring.h: In constructor
> > > >> 'Quackle::FixedLengthString::FixedLengthString(const char*)':
> > > >> fixedstring.h:126: error: 'strlen' was not declared in this
scope
> > > >> fixedstring.h:128: error: 'memcpy' was not declared in this
scope
> > > >> fixedstring.h: In copy constructor
> > > >> 'Quackle::FixedLengthString::FixedLengthString(const
> > > >> Quackle::FixedLengthString&)':
> > > >> fixedstring.h:136: error: 'memcpy' was not declared in this
scope
> > > >> fixedstring.h: In member function 'Quackle::FixedLengthString&
> > > >> Quackle::FixedLengthString::operator=(const
> > > >> Quackle::FixedLengthString&)':
> > > >> fixedstring.h:144: error: 'memcpy' was not declared in this
scope
> > > >> fixedstring.h: In member function 'void
> > > >> Quackle::FixedLengthString::erase(char*)':
> > > >> fixeds
> > > >> tring.h:176: error: 'memmove' was not declared in this scope
> > > >> fixedstring.h: In member function 'Quackle::FixedLengthString&
> > > >> Quackle::FixedLengthString::operator+=(const
> > > >> Quackle::FixedLengthString&)':
> > > >> fixedstring.h:212: error: 'memcpy' was not declared in this
scope
> > > >> scons: *** [alphabetparameters.o] Error 1
> > > >> scons: building terminated because of errors.
> > > >>
> > > >>
> > > > What went wrong? Has anyone successfully built quackle-0.96 from
> > source?
> > > > If so, what did he do that I didn't do?
> > > >
> > > >
> > > >
> > >
> >
> >
> >
>