Fix / Patch: Linux 64 bit build fails on cocos2d-1.0.1-x-0.12.0 / git

Hi,

I’ve just got the latest cocos2d-x version via zip download. I also tried against the latest git version (0.12.0?).

It appears that the current build for 64bit linux is broken. (I’m running on ‘Ubuntu 11.10 | Linux 3.0.0-16-generic #29-Ubuntu SMP Tue Feb 14 12:48:51 UTC 2012 x86_64 x86_64 x86_64 GNU/Linux’ but this probably effects all 64bit linux users).

There are a few issues in the Makefiles to do with case sensitive names (Linux != linux). Also, git / zip doesn’t maintain the symlinks, so the links in the “cocos2d-x/CocosDenshion/third_party/linux/fmod/lib64/api/lib” folder need to be recreated:

ln s libfmodex64-4.38.00.so libfmodex64.so
ln
s libfmodexL64-4.38.00.so libfmodexL64.so

Please find a patch file attached which resolves these issues against the current version.

Regards,

Liam


cocos.patch.zip (3.0 KB)

Thank you, could pull request by github?
The url is https://github.com/cocos2d/cocos2d-x.

BTW, I have fixed an issue with case sensitive names in CocosDenshion/proj.linux/Makefile.

Hi,

Hopefully I’ve sent you a pull request! I’m not familiar with git / github so let me know if it isn’t correct.

Also fixed minor issue in CCEGLView_linux.cpp. The following line:

s_pMainWindow~~>m_pTouch~~>SetTouchInfo(0, (float)(iPosX- s_pMainWindow~~>m_rcViewPort.origin.x) / s_pMainWindow~~>m_fScreenScaleFactor, ……….

wasn’t valid because SetTouchInfo only takes (float, float) not (int, float, float).

Not sure if API changes are happening but needed to resolve to get build to work.

Thanks,

Liam :slight_smile:

Thank you.

  1. You didn’t change cocos2dx/proj.linux/Makefile, which also use Linux.
  2. You should change cocos2dx/platform/CCApplication_platform.h to include your new files, and you should delete unneeded files.
  3. The API is changed, SetTouchInfo don’t accept view id any more.

Hi,

This should now be resolved. It seems, I didn’t tell git to commit all my previous changes. I’ve now commited these, pushed to master and send another pull request.

Still trying to work out git, more used to clearcase / svn etc

Cheers,

Liam