|
|
我对syslink进行交叉编译到arm,但是出现如下错误:
- F3 ?/ B5 E% w5 a# O+ e/home/tl/Projects/Xdl-build-arm/../../qt/Qt4.7/include/QtCore/qtconcurrentrunbase.h:65: error: two or more data types in declaration of 'parameter'4 O) [, D: {6 d7 S( k) ^
p6 R+ \$ r% V9 ]这个头文件内容如下:
* {/ A: V1 ]4 i* ^: m+ v5 L#ifndef QTCONCURRENT_RUNBASE_H
# ? \8 D( V$ Z. v6 V1 o#define QTCONCURRENT_RUNBASE_H2 A0 s$ N, G! ~: b8 k8 s6 ^
" r+ d, V& m! ~ U/ J2 H#include <QtCore/qglobal.h>/ n* H, J3 G) A3 w$ k, ^
1 I* P4 _; I0 m) Z3 `
#ifndef QT_NO_CONCURRENT3 O& ^: d; \. y
+ m1 i" f, u: }( E+ y- @0 B
#include <QtCore/qfuture.h>
$ u7 {- P1 D2 o% H#include <QtCore/qrunnable.h>2 Y e& T6 T0 J% V$ p7 O
#include <QtCore/qthreadpool.h>
2 w! w& d" F1 {2 e6 K- ^% q& s; d! x1 f% C4 F0 Z5 y
QT_BEGIN_HEADER
, d) V5 F1 z7 X, z2 DQT_BEGIN_NAMESPACE
* @, ]! S6 N. m0 ^! L- W+ c" r0 n" A
) t- a* x% U' _5 {9 iQT_MODULE(Core)5 W& }8 H& V+ \; E+ O3 d- G1 t
& M$ ]# x5 e) m3 O$ c2 O& [% A
#ifndef qdoc
6 b1 W- o8 a7 \6 o! C' `7 m& t, @: y( d+ g- L1 J% z5 w ^# f
namespace QtConcurrent {- U6 _8 w% M4 N/ s! k' t
! i3 [2 ~. e$ m8 ttemplate <typename T>' v) y9 X$ \! N O$ s
struct SelectSpecialization
3 K. J; b* O- \# }+ M{
! E0 U$ T8 d$ j0 [: K0 x/ u template <class Normal, class Void> C2 o( v+ T3 m; P. D
struct Type { typedef Normal type; };
( H! M- Z7 g, T7 V. M};
" q! A" U9 j# k/ u
1 N# x( N' o* e& x% P: K0 wtemplate <>
2 ]- u. k; N9 j2 ]1 ^4 {struct SelectSpecialization<void>
+ N, Q l9 u* h; t{1 C& J9 Y+ ~" I: X: v
template <class Normal, class Void>6 \: ?( y9 d ^9 C0 p0 ?
struct Type { typedef Void type; };* [; N D% J' s
};
' a) k. _: E) a- \. h3 y0 R
! \- w4 m _; I* stemplate <typename T>
1 m% K2 a% g% U9 d2 x/ oclass RunFunctionTaskBase : public QFutureInterface<T> , public QRunnable$ ^9 x6 q2 T0 Y3 U
{' ~" ~: E/ B9 E- E7 m @
public:
0 r' U* F) E' \5 P1 D% S/ b7 ~ QFuture<T> start()& @$ w$ I( l9 A/ V7 ?2 |
{' e4 A- @+ O9 o+ {. |9 J$ z& I
this->setRunnable(this);
4 _3 ^* ~1 H( ^/ s" A this->reportStarted();" ]% Z! v r! Q5 W
QFuture<T> future = this->future();
0 z6 ~! ^: n, I- v1 I% { QThreadPool::globalInstance()->start(this, /*m_priority*/ 0);
; S/ R7 J' G8 B# s return future;9 V# y- V) G1 H2 |( H' |/ u
}7 `( N+ }3 d* M: i( I& ^
2 q' @, l4 P1 D7 n) M void run() {}* {3 s0 v7 N. }: B; r0 C
virtual void runFunctor() = 0;6 w$ T" p4 `, w, h4 h3 n7 V
};# r+ i) N3 A w; B0 m# C3 \
% s9 Q9 K _- C/ j, Ftemplate <typename T>0 ~1 I& J/ Z. t* V
class RunFunctionTask : public RunFunctionTaskBase<T>" G4 L; [. Q# n4 z! X- h
{# O# ^' {( G' I# o
public:) c3 }7 l2 @! h; M
void run()
! Y5 @/ ?) L1 R* w {
) `2 k% c: l" _9 K6 _3 ~ if (this->isCanceled()) {( B; t" T; H8 T) T# I
this->reportFinished();
# b# \. H( z3 p4 s# y return;
( `+ D- d1 m( o7 K2 I! M, Y$ _; i }1 \- x; L# S% K# p$ G" d
this->runFunctor();
2 i& g N0 u" X' w1 o this->reportResult(result);
: f ?: v+ ~! a0 n, c this->reportFinished();
1 ?# k& w2 |' G2 g* S, _( W) M# o, S }) j i) h' @/ L X+ `# {% q
T result;
) Y/ E' e1 X. j: \! m};# N4 x3 q4 |. m
4 H& G! B$ f3 X4 u7 i& G8 `
template <>, n$ @ B/ L. B- V" f
class RunFunctionTask<void> : public RunFunctionTaskBase<void>
# V$ i: C+ C6 P8 y{9 z2 P G [6 T% |+ Z
public:
" Q" A8 J) T8 }1 w5 u0 h4 q1 X void run()
2 z! q& y* n: q" R0 K. c z {
6 B5 Q) N. k _0 h3 \ X if (this->isCanceled()) {
0 l% o; k. t/ R2 ~ this->reportFinished();
# }( f! [% f( |! r1 E& [ return;
: A+ S4 w7 s' N; @5 w% R }7 l# b! Z# G, L j3 Z5 Q
this->runFunctor();. I2 _5 ?$ z: E
this->reportFinished();
" y; I5 }$ [: E. @4 D. q/ N }
& R$ X& ]4 D6 T! a* B};; {1 l% `4 @5 J2 ], K
0 g* T0 W2 N; y; n/ @! |
} //namespace QtConcurrent
( \4 L: u h A+ I4 b6 ]: ^- Z. C2 P$ U6 P' w; j6 p
#endif //qdoc1 Y5 e! n/ I- o( t2 T2 q
% ]9 }/ z+ j) }& A* c1 n
QT_END_NAMESPACE! D, L9 ~( Q; p8 C, F3 T/ @! N
QT_END_HEADER
4 F0 i" }3 }. |
& p- ~2 O3 p% `! c. j: ~#endif // QT_NO_CONCURRENT8 d9 B0 P& W- ?5 F
1 d$ Z( S7 n. d#endif
: \; _: A- T" f% U9 w( N1 w* ~4 K r
|
|