这鸟蛋报错信息,骗的我一愣一愣的,疯狂地寻找 mkg3states.* 而不得
原文链接:http://www.jb51.cc/article/p-atjoaqst-bbv.html
今天将 cocos2d-x 代码用 cygwin 编译碰到了 main 函数重定义,一直不能解决,
网上也没有想过说明,后来经高人指点才搞明白,先记录下解决的办法以防以后遇到
D:/android/android-ndk-r8e-windows-x86/android-ndk-r8e/toolchains/arm-linux-androideabi-4.6/prebuilt/windows/bin/../lib/gcc/arm-linux-androideabi/4.6/../../../../arm-linux-androideabi/bin/ld.exe: error: F:/cocos2d-2.1rc0-x-2.1.2/cocos2d-2.1rc0-x-2.1.2/FirstGame/proj.android/../../cocos2dx/platform/third_party/android/prebuilt/libtiff/libs/armeabi/libtiff.a(mkg3states.o): multiple definition of 'main'
很明显是 main 函数重定义了,但是报错却指向了 libtiff 很不智能啊
解决办法,查找引用的外部库,发现 sqlite 里面有个 main 函数将之注释,然后还是报错
接着查找引用的外部库,iconv 里面也有 main 函数,同样注释,ok 一切来得很顺利,搞定