Qt4-preview-feedback Archive, February 2008
qt 4.4 snapshot 20080223
Message 1 in thread
Hi
I just had a go at building this snapshot with
Solaris 10, Sun Studio 12 (both up to date with patches), 32 bit.
I managed, but it was a struggle.
1. I edited the solaris-cc qmake.conf to
a. add -library=stlport4 to QMAKE_CXXFLAGS and QMAKE_LFLAGS
b. add -lsunmath to QMAKE_LIBS
2. The Makefile in src/corelib had two targets for qatomic.o, one with a
dep on i386/qatomic.s and the 2nd on qatomic.cpp. I deleted the 2nd one,
deleted qatomic.o and rebuilt (didn't try to solve the problem in the
.pro/.pri file).
3. src/3rdparty/webkit/JavaScriptCore/pcre/pcre_compile.c contains in
'__inline' on line 1440. This isn't C89 or C99. I changed it to 'inline'
(C99) and it compiled.
4. JSBase.cpp, JSBase.h, JSObjectRef.h, JSCallbackConstructor.cpp,
JSBase.cpp, JSValueRef.h and JSStringRef.h all include <stdbool.h>. This
is a non-standard extension (supported by GCC at least). I wrapped them
all in #if defined(__cplusplus)/#endifs and continued.
5. src/3rdparty/webkit/JavaScriptCore/kjs/collector.cpp failed to
compile. On Solaris, sys/mman.h includes
#ifdef __STDC__
#if (_POSIX_C_SOURCE > 2) || defined(_XPG4_2)
extern void *mmap(void *, size_t, int, int, int, off_t);
...
#else /* (_POSIX_C_SOURCE > 2) || defined(_XPG4_2) */
extern caddr_t mmap(caddr_t, size_t, int, int, int, off_t);
I guess neither _POSIX_X_SOURCE not _XPG4_2 is defined, so the 'old'
version gets picked up. I didn't try adding them to qmake.conf for fear
of breaking too much, and instead I just changed the reinterpret casts
to char*.
6. I had numerous problems with the use of C99 features in C++ code.
E.g., isfinite() in date_object.cpp [I added a #include <ieeefp.h>, and
changed it to finite]. operations.cpp - added #include <sunmath.h>. Same
for math_object.cpp and XPathValue.cpp
7. I trouble getting CSSStyleSelector.cpp to compile (couldn't resolve
call to static CSSStyleSheet* parseUASheet(const char* characters,
unsigned size) from template<typename T> CSSStyleSheet*
parseUASheet(const T& array) ). I couldn't see the problem, so I just
hacked it - copied the body of the first into the second.
8. Many problems of overload ambiguity with operator+ between String and
QString versions. I fixed this by explicitly consructing String objects.
This happened in QualifiedName.cpp, markup.cpp, HTMLInputElement.cpp,
HTMLParser.cpp, XPathFunctions.cpp, SVGPathElement.cpp, SVGPolyElement.cpp.
9. Quite a few errors due to const function arguments mismatching
declarations and definitions (const in one or the other, but not both).
TermInfo.cpp, Hits.cpp, Term.cpp, qreportcontext.cpp, CharacterData.cpp,
Text.h, EventTargetNode.cpp, StringImpl.cpp.
10. helpgenerator.cpp uses fprintf as if it were in the global scope
when including cstdio. It should be in the std scope.
11. I couldn't get examples/qtconcurrent to build (template
instantiation ambiguity). Perhaps a compiler issue.
A+
Paul
To unsubscribe - send "unsubscribe" in the subject to qt4-preview-feedback-request@xxxxxxxxxxxxx
Message 2 in thread
Hi,
> I just had a go at building this snapshot with
> Solaris 10, Sun Studio 12 (both up to date with patches), 32 bit.
SPARC or x86?
--
[ signature omitted ]
Message 3 in thread
Dimitri wrote:
> Hi,
>
>> I just had a go at building this snapshot with
>> Solaris 10, Sun Studio 12 (both up to date with patches), 32 bit.
>
> SPARC or x86?
x86, but judging by the nature of the errors, that makes little difference.
A+
Paul
To unsubscribe - send "unsubscribe" in the subject to qt4-preview-feedback-request@xxxxxxxxxxxxx