标题: 交叉编译问题,急 [打印本页] 作者: smallknife_hb 时间: 2015-1-12 14:22 标题: 交叉编译问题,急 我对syslink进行交叉编译到arm,但是出现如下错误:, T7 P6 e$ B% x! G
/home/tl/Projects/Xdl-build-arm/../../qt/Qt4.7/include/QtCore/qtconcurrentrunbase.h:65: error: two or more data types in declaration of 'parameter'6 n9 v- f$ k% h: r" g; ~% V' q& T
$ v* \* j4 C/ x( a. ?; q# e" r这个头文件内容如下:" E$ j9 d+ L8 M' R" a/ C1 x
#ifndef QTCONCURRENT_RUNBASE_H 3 J# h' {" q6 L& i; F; Z$ d#define QTCONCURRENT_RUNBASE_H 3 p- Q, s0 i; ^2 h8 S 3 D6 f5 k4 c( R+ A# p#include <QtCore/qglobal.h> & H8 Q- P/ C# o" x/ w' S: v: ^9 _: E9 e* N1 l W
#ifndef QT_NO_CONCURRENT$ f1 d+ d, t5 m* x5 x' ~
: X" l {0 L- c3 F" \
#include <QtCore/qfuture.h> $ U" G! _) i0 s3 A#include <QtCore/qrunnable.h> F( ?( ]: l% M' A0 e7 V, x#include <QtCore/qthreadpool.h> % c' i1 g3 @& l' x; z 2 g9 Z6 [6 R) B5 @, N9 AQT_BEGIN_HEADER 7 Q7 p; n, s# sQT_BEGIN_NAMESPACE* X7 g9 d! H; U2 |) E+ d. M$ G! p
. k+ ^/ n6 C1 S
QT_MODULE(Core) }, H2 F; D' I" A5 u
$ f7 y3 X% O* B
#ifndef qdoc* ?: [ t4 i' p# h
& p% Z2 Q* _% Y. ]& `7 {namespace QtConcurrent {# D9 n4 Y) W2 b z- g9 T& @% p
3 y( I9 t. k# y/ m9 L* ?template <typename T> \# [4 i- w" t* c# a" lstruct SelectSpecialization' B5 R3 ~* ]/ k
{ $ P5 L0 w+ O5 J b- { template <class Normal, class Void> r% ~- w$ v% Y" g% d
struct Type { typedef Normal type; }; / s7 j( u, A3 M# u3 K9 F}; 8 R$ K. U2 J, a8 C& C, n Z* g: b4 n9 c1 a* ^4 |, b
template <>0 x" H9 m* Q" X
struct SelectSpecialization<void>' A& l0 d! |5 H+ N3 l, j
{8 I f" S# F6 d" g* K+ l
template <class Normal, class Void>2 ~: W4 X2 s6 V) G- k
struct Type { typedef Void type; };) [6 [# n% ]& ]8 R1 i
}; : M' n7 U0 J: r" [ # E, D, D1 g2 ttemplate <typename T> / u: r5 j l1 l- d, Y. D' Pclass RunFunctionTaskBase : public QFutureInterface<T> , public QRunnable* H, c+ P+ ~* x+ q# [
{7 f" H6 u) M, p2 q+ Y
public: R+ O# {7 G. f0 T* R, K% q QFuture<T> start() 1 q2 D# ]' U* y2 i- v \ {5 f2 n2 l8 |* k& ~8 E
this->setRunnable(this);6 M" ^# Z- z E8 _# `2 U
this->reportStarted(); F2 y9 v7 W& E
QFuture<T> future = this->future(); 4 l( G, w. x/ e' }* I1 F- M QThreadPool::globalInstance()->start(this, /*m_priority*/ 0);# t, U( P. b) L# w/ x
return future; + A8 h. P1 \& T# f0 f } * j. c! J7 Q2 n+ G9 k# u6 _8 @, O! D3 @
void run() {} $ X8 F0 a2 d) m. p+ d% T virtual void runFunctor() = 0; $ u% V6 l/ z8 }- j" F}; : ?" z, k1 i( N+ s$ s* Z1 }& a! l! V3 ]' E( E% k4 S% M
template <typename T> & T% O1 L* g4 h$ C0 Zclass RunFunctionTask : public RunFunctionTaskBase<T># d( J1 D C5 F) i
{ 4 q5 |2 d2 |: e0 Z' V) G# Y* [public: / Q: Y3 t1 A- j. ^6 [ void run() ( b/ i7 z/ B" ]6 T { ; k' @4 F4 A) Y0 m3 f- k if (this->isCanceled()) { 6 _9 {! L5 ~* U y this->reportFinished();* a6 @) U( p2 Z# z: [
return; " S9 Q1 b+ X3 J1 b5 W } / L- y9 X+ W7 v T; [8 x) m this->runFunctor(); + {* |+ h' f& K3 d0 T2 B1 C/ E this->reportResult(result);0 k; Z! t; j7 Y6 O/ o9 K S% N
this->reportFinished();1 E( \- F( J4 s8 K- |- \2 s
} 9 H- A. ?7 q4 \# c0 I( i T result; ; j% q- k3 ^6 s7 [! v" L}; 7 s$ `" u$ z$ a0 t1 y5 k 0 C4 T, N1 I. J6 x/ h2 _6 P* utemplate <> + f/ F0 z" b8 u+ hclass RunFunctionTask<void> : public RunFunctionTaskBase<void> 1 K, L& u9 D' R) x4 I6 o{4 C7 Y- c# O% e; o3 @5 _; g! ]9 a
public:; S2 I2 \# ]- `; a X" E3 i9 m
void run() 6 m, [! ~! R) }8 H( C { ' k- a* [1 i" h if (this->isCanceled()) {0 K9 h5 O. |( `- B+ Z
this->reportFinished(); 5 E$ ]& N; b4 m8 T8 z return; 2 x5 }% e% v4 i; s3 D( } }0 F1 w j; j, c3 P% [& d! g/ l. {
this->runFunctor();2 L) o/ d1 d3 w* X6 A, T# j1 D, x
this->reportFinished();9 p/ k% k" `* D1 K$ u9 Q, t( ]
}3 V& ^1 O( P' C6 e1 T
}; ' Y! t2 V- x- f, Q' ?' ] 4 I8 H2 H6 w* O& f} //namespace QtConcurrent0 M, g, r- o+ e# p0 n$ x
; ?0 h9 ^; N6 i
#endif //qdoc . y% p* _8 _( h" v- ]+ L, K2 ?! }/ |/ B
QT_END_NAMESPACE( X6 [( ~/ x3 ~- Y
QT_END_HEADER' z3 i3 P7 }: Z