标题: 交叉编译问题,急 [打印本页] 作者: smallknife_hb 时间: 2015-1-12 14:22 标题: 交叉编译问题,急 我对syslink进行交叉编译到arm,但是出现如下错误: & o2 h4 q1 K3 C/ x/home/tl/Projects/Xdl-build-arm/../../qt/Qt4.7/include/QtCore/qtconcurrentrunbase.h:65: error: two or more data types in declaration of 'parameter'. ~# B4 Q* i" f' k. A% ^! |
+ T. ?! q: D- H% l1 k% c% Q# @) [这个头文件内容如下:9 W6 F- X; s& S% C8 O
#ifndef QTCONCURRENT_RUNBASE_H) S2 Q' V6 w+ l, p7 U; ~
#define QTCONCURRENT_RUNBASE_H$ f7 L6 s, E) i; d8 _: j5 r* v
5 v l/ c& d, ~5 C
#include <QtCore/qglobal.h> ! h: L% o7 G! U " K( j; W1 N" c7 ?: ?5 W/ N- k" V#ifndef QT_NO_CONCURRENT + b! r/ a) V5 _$ s9 [ $ K! u* Y1 @2 u& d) Q#include <QtCore/qfuture.h>' I: ^5 T7 O$ c8 r
#include <QtCore/qrunnable.h>! B* D7 K5 d X/ P7 h2 r, N _
#include <QtCore/qthreadpool.h>- R$ u, R" T: F
' U% r/ R3 h8 z5 L
QT_BEGIN_HEADER ' \5 I, {: T+ G6 J3 P& VQT_BEGIN_NAMESPACE 5 E0 d2 g% _+ Y& k% u$ _0 y, {" m0 `$ P4 I- [. I/ f" P6 v, z
QT_MODULE(Core) , W U+ B/ @9 Z% R0 Z E( \, r 2 q6 b6 T7 L( r, [4 f4 A, |2 d1 g#ifndef qdoc + \: I, C; j' h& T' X" F$ N, ~! D& Z6 J( Z8 Z
namespace QtConcurrent { w% i- v2 w' @( y$ d( _5 P- W& t
1 i9 Z4 {* [$ b; }* L8 `
template <typename T>' O) d% e6 w" |2 l! G
struct SelectSpecialization0 i' L$ S7 p) }
{ P* ?- P. e' n5 P template <class Normal, class Void> 3 `( U/ v5 q" A# ]- K struct Type { typedef Normal type; }; " {, T8 s' y% E( b! i( [. k; L};. [% m: U& G% R% r z3 T% ]' r
7 H) Y9 ^, A9 E" }template <> 8 m" {5 r3 J! astruct SelectSpecialization<void># R7 O5 w- D* |, \) h9 h' C# |6 E, W
{$ m1 u0 m+ j. H: V5 t
template <class Normal, class Void># [1 a* j8 n8 F0 k! y9 V$ I# |+ `
struct Type { typedef Void type; };0 a. j0 H5 [ p" S5 E. r1 ?! ?2 R4 j
}; " Y7 \4 |: e$ p5 g% X- J# |# Z5 A+ w
template <typename T>' i8 h6 u3 ]! J, [' z$ f1 `
class RunFunctionTaskBase : public QFutureInterface<T> , public QRunnable + x4 H3 j! r/ F: Y{ 4 ] p2 e. Y' ~7 t! P) Q* o' [+ epublic: R; `# M8 [# Z4 D: f
QFuture<T> start() 2 D/ ]0 y8 U* c4 C! p' @% ^! W6 U { # x# q2 J f2 F; O# P* R7 l* `; G this->setRunnable(this);1 h0 g( E5 X& [ N& ^) g$ k2 g
this->reportStarted();5 z! k# ~( a" ]. @: Q ]( Q
QFuture<T> future = this->future();0 N# d/ x! j4 }+ J$ B& n
QThreadPool::globalInstance()->start(this, /*m_priority*/ 0);) X0 j/ J$ Q1 `7 p
return future;2 a1 o' |" d) U: z- \- R' E# C
}: c! h. w7 n2 R7 G; I- o3 `! E
" M; ^# B. D' }$ I
void run() {}' t0 M- `/ E- a9 @: k& v
virtual void runFunctor() = 0;2 T7 o a7 G% F
}; ( G- h5 n/ _/ I , b. G4 ]/ M' V G: `) C+ W, Dtemplate <typename T> . T5 ` F1 q4 }; _class RunFunctionTask : public RunFunctionTaskBase<T>6 s# q/ g! \7 n0 F$ S
{: h- F1 U3 v6 q+ D
public: 8 `& T! y3 G" [$ f( e void run()- `+ N' k5 |; i
{ " G, }& P/ K7 ?* ]5 B" d if (this->isCanceled()) { ! z. i, G% b6 k' Y% L" ^ this->reportFinished(); " g; P$ I( E; Q: ^0 @0 G return; m. F# f" A( R( \1 s7 [$ g1 o } . g. R, O _' O this->runFunctor(); - n" Q4 }$ b& ]; z5 B7 B this->reportResult(result); . y! |2 n0 T9 U& [ this->reportFinished();. Y6 L6 L; w/ @5 X
}8 Z, T2 ]2 E3 Q+ L, |2 k
T result;3 s# q% N, h# A0 U
}; 0 Z# g+ r7 \1 f' Y0 `2 i+ F6 y7 e* x% E: J3 v" [9 Y
template <> / m6 G9 U" n8 p8 Cclass RunFunctionTask<void> : public RunFunctionTaskBase<void>6 h% h* o3 I. C
{+ H) y1 G% ~+ b' _' c
public:+ y6 \( s7 Y2 u( U3 k, |) [
void run()- m5 C0 Z8 R* A/ f. n4 f/ {
{ : }3 c2 t( A/ A! n4 U3 h if (this->isCanceled()) {( }2 v- v' t+ ~' a% I5 n
this->reportFinished(); % L" o w- h) J, q# G) R- D8 ` return; & a9 F/ B7 D2 v/ ~ }% t. j" g% L3 H$ X1 H4 t5 [
this->runFunctor();/ i0 i* V: ^ h# m4 |
this->reportFinished(); . d, K6 ?1 d5 }) C, @ }$ ^$ v/ C, T) A2 J
};0 S0 G# N# c7 K! j- Z. g% a