cocos2d-x cygwin 안드로이드 빌드시 At global scope error: extra qualification

cocos2d-x 에서 윈도우 환경에서 잘 개발 후 안드로이드 빌드 시 아래와 같은 에러가 발생할 수 있습니다.

jni/../../Classes/Factory/DataTableFactory.h: At global scope:
jni/../../Classes/Factory/DataTableFactory.h:11:2: error: extra qualification 'DataTableFactory::' on member 'DataTableFactory' [-fpermissive]
jni/../../Classes/Factory/DataTableFactory.h:11:2: error: extra qualification 'DataTableFactory::' on member 'DataTableFactory' [-fpermissive]

class DataTableFactory : public Factory
{
 FACTORY_CREATE_FUNC( DataTableFactory );

FACTORY_CREATE_FUNC 라는 define을 쓰는 놈이 있는데요,

#define FACTORY_CREATE_FUNC( type ) \
public: \
 type::type(){} \
 type::~type(){} \

이렇게 되어 있던 것을

 #define FACTORY_CREATE_FUNC( type ) \
public: \
 type(){} \
 ~type(){} \

이렇게 수정했습니다. 이 define을 사용하면 h파일에 하게 되는 것인데 어찌보면 당연한 것인데 visual studio 2010에서는 아무 문제없이 컴파일이 되던것이 cygwin의 gcc에서는 에러를 뿜어내는군요.

표준문제 인듯보이는데 굳이 cocos2d-x가 아니더라고 리눅스기반 gcc 컴파일할 때 조심해야할 듯 하네여.

댓글

이 블로그의 인기 게시물

'xxx.exe' 프로그램을 시작할 수 없습니다. 지정된 파일을 찾을 수 없습니다.

goorm IDE에서 node.js 프로젝트로 Hello World Simple Server 만들어 띄워보기

애드센스 수익을 웨스턴 유니온으로 수표대신 현금으로 지급 받아보자.