On 27/04/2010, at 10:59 PM, Stephen Leake wrote:
> Roger Mc Murtrie <[email protected]> writes:
>
>> On 27/04/2010, at 9:30 AM, Stephen Leake wrote:
>>
>>> it may be that the tarball doesn't have everything needed by autoreconf.
>> Or it maybe that I didn't do something quite right.
>>>
>>> So just edit configure and Makefile; they are much larger than
>>> configure.ac and Makefile.am, but you should be able to find the right
>>> line to edit.
>> In configure.ac, Makefile.am and Makefile.in and configure
>> I've changed:
>> $GPRCONFIG -o gnat/config.cgpr --config=ada --config=c++ --batch
>> (which was hard coded in configure.)
>
> What I meant was:
>
> start over from a fresh unzip of QtAda
I think I did, but I'll try again to be sure
> edit configure to fix the gprconfig command
OK, done.
> run configure
> edit the Makefile gprconfig command
I thought that editing Makefile.am and Makefile.in would be OK and would
avoid having to edit the Makefile each time I ran configure.
>
>
> run make
>
>> gprbuild -j2 -p -aP../../gnat -aP../../gnat --config=../../gnat/config.cgpr
>> -Psource_core.gpr
>> g++ -fPIC -O2 -DQT_SHARED -I/usr/local/Trolltech/Qt-4.6.2/include
>> -I/usr/local/Trolltech/Qt-4.6.2/include/QtCore
>> qabstractitemmodeldirector.cpp -o qabstractitemmodeldirector.o
>> g++ -fPIC -O2 -DQT_SHARED -I/usr/local/Trolltech/Qt-4.6.2/include
>> -I/usr/local/Trolltech/Qt-4.6.2/include/QtCore
>> qabstractlistmodeldirector.cpp -o qabstractlistmodeldirector.o
>> In file included from /usr/include/c++/4.0.0/ios:45,
>> from /usr/include/c++/4.0.0/ostream:44,
>> from /usr/include/c++/4.0.0/iterator:70,
>> from /usr/local/Trolltech/Qt-4.6.2/include/QtCore/qlist.h:50,
>> from
>> /usr/local/Trolltech/Qt-4.6.2/include/QtCore/qvariant.h:47,
>> from
>> /usr/local/Trolltech/Qt-4.6.2/include/QtCore/qabstractitemmodel.h:45,
>> from
>> /usr/local/Trolltech/Qt-4.6.2/include/QtCore/QModelIndex:1,
>> from
>> /Ada_Source/qtada-gpl-3.1.0-20100408-3724/source/core/qabstractitemmodeldirector.cpp:31:
>> /usr/include/c++/4.0.0/bits/char_traits.h: In static member function ‘static
>> typename __gnu_cxx::_Char_types<_CharT>::int_type
>> __gnu_cxx::char_traits<_CharT>::eof()’:
>> /usr/include/c++/4.0.0/bits/char_traits.h:139: error: ‘EOF’ was not declared
>> in this scope
>
> I hate C :(. Actually, this is not only C's fault; the real problem is
> lack of ancilliary standards about where to define things.
So do I, C++ even more so hence my efforts with Ada, Java would probably be
more realistic in the present day.
> This kind of error is typically due to defining or not defining some
> flag; ANSI, or MAC, or BLUE_CHEESE.
>
> Or it's just some incompatible change in versions of the compiler libraries.
>
> Is this g++ included in GNAT 2009 GPL, or did it come from somewhere
> else? This may be another packaging bug.
config.cgpr says:
for Driver ("C++") use "/usr/local/bin/g++";
Also:
Roger$which g++
/usr/bin/g++
Roger$g++ -v
Using built-in specs.
Target: i686-apple-darwin10
Configured with: /var/tmp/gcc/gcc-5659~1/src/configure --disable-checking
--enable-werror --prefix=/usr --mandir=/usr/share/man
--enable-languages=c,objc,c++,obj-c++
--program-transform-name=/^[cg][^.-]*$/s/$/-4.2/ --with-slibdir=/usr/lib
--build=i686-apple-darwin10 --with-gxx-include-dir=/usr/include/c++/4.2.1
--host=i686-apple-darwin10 --target=i686-apple-darwin10
Thread model: posix
gcc version 4.2.1 (Apple Inc. build 5659)
>
> My copy of GNAT 2009 GPL on Windows has g++ 4.3.4, so 4.0.0 seems odd here.
Yes 4.0.0 does seem odd, I'll try and figure it out.
Roger$c++ -v
Using built-in specs.
Target: i686-apple-darwin10
Configured with: /var/tmp/gcc/gcc-5659~1/src/configure --disable-checking
--enable-werror --prefix=/usr --mandir=/usr/share/man
--enable-languages=c,objc,c++,obj-c++
--program-transform-name=/^[cg][^.-]*$/s/$/-4.2/ --with-slibdir=/usr/lib
--build=i686-apple-darwin10 --with-gxx-include-dir=/usr/include/c++/4.2.1
--host=i686-apple-darwin10 --target=i686-apple-darwin10
Thread model: posix
gcc version 4.2.1 (Apple Inc. build 5659)
>
>> /usr/include/c++/4.0.0/bits/char_traits.h: In static member function ‘static
>> int std::char_traits<char>::eof()’:
>> /usr/include/c++/4.0.0/bits/char_traits.h:290: error: ‘EOF’ was not declared
>> in this scope
>> In file included from /usr/include/c++/4.0.0/bits/ios_base.h:45,
>> from /usr/include/c++/4.0.0/ios:48,
>> from /usr/include/c++/4.0.0/ostream:44,
>> from /usr/include/c++/4.0.0/iterator:70,
>> from /usr/local/Trolltech/Qt-4.6.2/include/QtCore/qlist.h:50,
>> from
>> /usr/local/Trolltech/Qt-4.6.2/include/QtCore/qvariant.h:47,
>> from
>> /usr/local/Trolltech/Qt-4.6.2/include/QtCore/qabstractitemmodel.h:45,
>> from
>> /usr/local/Trolltech/Qt-4.6.2/include/QtCore/QModelIndex:1,
>> from
>> /Ada_Source/qtada-gpl-3.1.0-20100408-3724/source/core/qabstractitemmodeldirector.cpp:31:
>> /usr/include/c++/4.0.0/bits/atomicity.h: At global scope:
>> /usr/include/c++/4.0.0/bits/atomicity.h:44: error: expected
>> constructor, destructor, or type conversion before
>> ‘__exchange_and_add’
>
> My copy of g++ 4.3.4 doesn't have a file bits/atomicity.h. So this looks
> like a version incompatibility.
Really strange. My /usr/include/c++ has 4.0.0 and 4.2.1.
Hopefully I can sort that out.
Thanks again,
Roger
_______________________________________________
qtada-users mailing list
[email protected]
http://box347.bluehost.com/mailman/listinfo/qtada-users_lists.qtada.com