OGRE port to NaCl (Google's Native Client)

Discussion area about developing or extending OGRE, adding plugins for it or building applications on it. No newbie questions please, use the Help forum for that.
User avatar
Klaim
Old One
Posts: 2565
Joined: Sun Sep 11, 2005 1:04 am
Location: Paris, France
x 56

Re: OGRE port to NaCl (Google's Native Client)

Post by Klaim »

On a indirectly related topic:

Assaf, do you have plans to try to make the same kind of build for flashcc? (http://gaming.adobe.com/technologies/flascc/)

I'm just curious, no plans to use it so far.
User avatar
Assaf Raman
OGRE Team Member
OGRE Team Member
Posts: 3092
Joined: Tue Apr 11, 2006 3:58 pm
Location: TLV, Israel
x 76

Re: OGRE port to NaCl (Google's Native Client)

Post by Assaf Raman »

Flash is dead, it will be a waste of time to add support for it.
I am thinking about an Emscripten port.
Watch out for my OGRE related tweets here.
User avatar
Assaf Raman
OGRE Team Member
OGRE Team Member
Posts: 3092
Joined: Tue Apr 11, 2006 3:58 pm
Location: TLV, Israel
x 76

Re: OGRE port to NaCl (Google's Native Client)

Post by Assaf Raman »

One other reason not to port to Flash: http://gaming.adobe.com/technologies/xc/
Watch out for my OGRE related tweets here.
User avatar
Assaf Raman
OGRE Team Member
OGRE Team Member
Posts: 3092
Joined: Tue Apr 11, 2006 3:58 pm
Location: TLV, Israel
x 76

Re: OGRE port to NaCl (Google's Native Client)

Post by Assaf Raman »

Still working on getting OGRE to compile with NaCl, fixing code and such.
Watch out for my OGRE related tweets here.
User avatar
Assaf Raman
OGRE Team Member
OGRE Team Member
Posts: 3092
Joined: Tue Apr 11, 2006 3:58 pm
Location: TLV, Israel
x 76

Re: OGRE port to NaCl (Google's Native Client)

Post by Assaf Raman »

I fixed the code, and my convertor - get the latest OGRE 1.8 branch.
I also added "-ldl" to text you add to the link line in the SampleBrowser (the text is updated on stage 9 on my first post on this thread.)
So in short - get latest 1.8 from our code repo, cmake, use my tool on the sln and discrepancies sln, update the link line of SampleBrowser, compile SampleBrowser , copy out to the ogre build out, compile OGRE.
Watch out for my OGRE related tweets here.
User avatar
Assaf Raman
OGRE Team Member
OGRE Team Member
Posts: 3092
Joined: Tue Apr 11, 2006 3:58 pm
Location: TLV, Israel
x 76

Re: OGRE port to NaCl (Google's Native Client)

Post by Assaf Raman »

I see issues when running, wait a sec for me to fix them.
Watch out for my OGRE related tweets here.
User avatar
Assaf Raman
OGRE Team Member
OGRE Team Member
Posts: 3092
Joined: Tue Apr 11, 2006 3:58 pm
Location: TLV, Israel
x 76

Re: OGRE port to NaCl (Google's Native Client)

Post by Assaf Raman »

This is the issue I am having:
http://www.chromium.org/nativeclient/de ... -for-glibc
As of October 2011, it is necessary to manually generate the nmf files when using glibc. However, we hope to add support into a future version of the NaCl SDK (Software Developer's Kit) to automatically generate the nmf for glibc.
Watch out for my OGRE related tweets here.
User avatar
Assaf Raman
OGRE Team Member
OGRE Team Member
Posts: 3092
Joined: Tue Apr 11, 2006 3:58 pm
Location: TLV, Israel
x 76

Re: OGRE port to NaCl (Google's Native Client)

Post by Assaf Raman »

Google created a new stage where you need to call "x86_64-nacl-objdump" then play with the results it gives you to create an nmf file.
I added some stages to the howto on the first post.
Watch out for my OGRE related tweets here.
wuxin
Gnoblar
Posts: 12
Joined: Wed Aug 22, 2012 8:08 am

Re: OGRE port to NaCl (Google's Native Client)

Post by wuxin »

I appreciate you with your help .I will do it following your advices .Thanks for more than one time.
User avatar
Assaf Raman
OGRE Team Member
OGRE Team Member
Posts: 3092
Joined: Tue Apr 11, 2006 3:58 pm
Location: TLV, Israel
x 76

Re: OGRE port to NaCl (Google's Native Client)

Post by Assaf Raman »

I just fixed one more color issue, so make sure to get the latest code (use 1.8 branch - if you don't understand what I mean by 1.8 - post and I will explain)
Watch out for my OGRE related tweets here.
wuxin
Gnoblar
Posts: 12
Joined: Wed Aug 22, 2012 8:08 am

Re: OGRE port to NaCl (Google's Native Client)

Post by wuxin »

I do not understand really . Is it ogre 1.8 or others? How could I get the 1.8 branch?
Another problem :when I compile codes of samplebrower with the link line you have updated,another issue is out.

Code: Select all

47>  Linking SampleBrowser for NaCl 32 bit
47>/libexec/../lib/gcc/x86_64-nacl/4.4.3/../../../../x86_64-nacl/lib/../lib32/libppapi_cpp.so : warning : warning: pthread_cancel is not implemented and will always fail
47>  /libexec/../lib/gcc/x86_64-nacl/4.4.3/../../../../x86_64-nacl/lib/../lib32/libstdc++.so: file not recognized: File format not recognized
47>  collect2: ld returned 1 exit status
47>C:\Program Files\MSBuild\Microsoft.Cpp\v4.0\Microsoft.CppCommon.targets(151,5): error MSB6006: “cmd.exe”已退出,代码为 1。
I am concerned about why do you add "-Idl" to link line(I do not add it in my link line actually in the last time).How do it work?
I wonder whether there are some issues in the link line. wait for your advice.
User avatar
Assaf Raman
OGRE Team Member
OGRE Team Member
Posts: 3092
Joined: Tue Apr 11, 2006 3:58 pm
Location: TLV, Israel
x 76

Re: OGRE port to NaCl (Google's Native Client)

Post by Assaf Raman »

Switching to a different branch.

Make sure to also get the latest code of my convertor - as I fixed changed the code it generates to use a newer NaCl toolchain that is called "glibc" instead of what it used to use ("newlib"), just get the convertor code and use it on the dependencies and ogre solutions, only "glibc" has the "dl" lib, that is the reason "-Idl" doesn't work for you - you aren't using "glibc".
Watch out for my OGRE related tweets here.
wuxin
Gnoblar
Posts: 12
Joined: Wed Aug 22, 2012 8:08 am

Re: OGRE port to NaCl (Google's Native Client)

Post by wuxin »

oh,I just upset all the day. I will try. Thank you for your help .:P
kripken
Gnoblar
Posts: 22
Joined: Thu May 15, 2008 8:07 am

Re: OGRE port to NaCl (Google's Native Client)

Post by kripken »

Assaf Raman wrote:I am thinking about an Emscripten port.
Hey, that would be great! If you decide to work on that, I'd be happy to help on the Emscripten side (I'm an Emscripten dev). We've finished porting Sauerbraten and consider the Emscripten GL support in good shape now (especially for GLES) - Ogre should work fine in JS+WebGL.
User avatar
Assaf Raman
OGRE Team Member
OGRE Team Member
Posts: 3092
Joined: Tue Apr 11, 2006 3:58 pm
Location: TLV, Israel
x 76

Re: OGRE port to NaCl (Google's Native Client)

Post by Assaf Raman »

I will consider it.
Watch out for my OGRE related tweets here.
User avatar
Assaf Raman
OGRE Team Member
OGRE Team Member
Posts: 3092
Joined: Tue Apr 11, 2006 3:58 pm
Location: TLV, Israel
x 76

Re: OGRE port to NaCl (Google's Native Client)

Post by Assaf Raman »

I tried to get emscripten working, but I am working on windows, and there isn't a clear "howto" to get this done, I tried to follow this - but it doesn't have all the steps to get emscripten working.
Watch out for my OGRE related tweets here.
kripken
Gnoblar
Posts: 22
Joined: Thu May 15, 2008 8:07 am

Re: OGRE port to NaCl (Google's Native Client)

Post by kripken »

Assaf Raman wrote:I tried to get emscripten working, but I am working on windows, and there isn't a clear "howto" to get this done, I tried to follow this - but it doesn't have all the steps to get emscripten working.
Using emscripten on windows is a little tricker than Linux or OS X I am afraid. I don't use Windows myself but the tutorial has tips from community members that do use it there. If you hit a specific bug or problem let me know and i'll try to help.
User avatar
Assaf Raman
OGRE Team Member
OGRE Team Member
Posts: 3092
Joined: Tue Apr 11, 2006 3:58 pm
Location: TLV, Israel
x 76

Re: OGRE port to NaCl (Google's Native Client)

Post by Assaf Raman »

It just feels to me that getting it to work in windows will take a big effort out of me, I will wait for now for someone to create a step by step howto get c++ to compile using emscripten on windows (like me for OGRE NaCl compile on on the first post of the thread).
Watch out for my OGRE related tweets here.
kripken
Gnoblar
Posts: 22
Joined: Thu May 15, 2008 8:07 am

Re: OGRE port to NaCl (Google's Native Client)

Post by kripken »

Assaf Raman wrote:It just feels to me that getting it to work in windows will take a big effort out of me, I will wait for now for someone to create a step by step howto get c++ to compile using emscripten on windows (like me for OGRE NaCl compile on on the first post of the thread).
I'll try to get one of the windows users to help with that.
User avatar
Assaf Raman
OGRE Team Member
OGRE Team Member
Posts: 3092
Joined: Tue Apr 11, 2006 3:58 pm
Location: TLV, Israel
x 76

Re: OGRE port to NaCl (Google's Native Client)

Post by Assaf Raman »

Thanks, if I can get the "hello world" sample to compile and run - I will be able to continue.
Watch out for my OGRE related tweets here.
wuxin
Gnoblar
Posts: 12
Joined: Wed Aug 22, 2012 8:08 am

Re: OGRE port to NaCl (Google's Native Client)

Post by wuxin »

Hello! I am sorry to disturb you.
I am the one who has asked about compiling the ogre_nacl project.I am very upset :x . I have build and compiled the ogre_nacl project following your steps and used your converted tool to convert for more than one time these days,but there is a error occuring in compiling the samplebrowser project yet. The error is below:

Code: Select all

1>------ 已启动生成: 项目: SampleBrowser, 配置: Release Win32 ------
1>  Performing Custom Build Tools
1>  Compiling "F:\ogre_nacl_1-8\Samples\Browser\src\SampleBrowser.cpp" for 32 bit
1>  In file included from F:/ogre_nacl_1-8/OgreMain/include/OgreResourceBackgroundQueue.h:36,
1>                   from F:/ogre_nacl_1-8/OgreMain/include/Ogre.h:95,
1>                   from F:/ogre_nacl_1-8/Samples/Common/include/OgreStaticPluginLoader.h:24,
1>                   from F:/ogre_nacl_1-8/Samples/Common/include/SampleContext.h:80,
1>                   from F:/ogre_nacl_1-8/Samples/Browser/include/SampleBrowser.h:32,
1>                   from F:\ogre_nacl_1-8\Samples\Browser\src\SampleBrowser.cpp:33:
1>  F:/ogre_nacl_1-8/OgreMain/include/OgreWorkQueue.h:475: warning: extra 鈥?鈥?[-pedantic]
1>  F:/ogre_nacl_1-8/OgreMain/include/OgreWorkQueue.h:532: warning: extra 鈥?鈥?[-pedantic]
1>  In file included from F:\ogre_nacl_1-8\Samples\Browser\src\SampleBrowser.cpp:44:
1>  F:/ogre_nacl_1-8/Samples/Browser/include/SampleBrowser_NaCl.h: In member function 鈥榲irtual const std::string& Ogre::AppDelegate::IosInputNaCl::NaClKeyboard::getAsString(OIS::KeyCode)鈥?
1>  F:/ogre_nacl_1-8/Samples/Browser/include/SampleBrowser_NaCl.h:841: warning: returning reference to temporary
1>  Performing Custom Build Tools
1>  Compiling "F:\ogre_nacl_1-8\Samples\Browser\src\FileSystemLayerImpl_NaCl.cpp" for 32 bit
1>  Performing Custom Build Tools
1>  Linking SampleBrowser for NaCl 32 bit
1>  /libexec/../lib/gcc/x86_64-nacl/4.4.3/../../../../x86_64-nacl/lib/libdl.so: file not recognized: File format not recognized
1>  collect2: ld returned 1 exit status
1>C:\Program Files\MSBuild\Microsoft.Cpp\v4.0\Microsoft.CppCommon.targets(151,5): error MSB6006: “cmd.exe”已退出,代码为 1。
========== 生成: 成功 0 个,失败 1 个,最新 46 个,跳过 0 个 ==========
Have you deployed your Environment Variables of system about something or used cygwin or other tools before you compile the ogre_nacl project?
I want to know what you have done in addition to your steps before compiling . I think the reason may be the Environment Variables or the tools or others.
Wait for your guide.
Thank you.
CABAListic
OGRE Retired Team Member
OGRE Retired Team Member
Posts: 2903
Joined: Thu Jan 18, 2007 2:48 pm
x 58

Re: OGRE port to NaCl (Google's Native Client)

Post by CABAListic »

Without knowing anything about NaCl, I think the problem is pretty clear from your log: You are trying to build a 32bit program, however you are linking against a 64bit libdl.so. That can't work. You need to ensure that your build environment is fully 32bit or fully 64bit, but not mixing both.
User avatar
Assaf Raman
OGRE Team Member
OGRE Team Member
Posts: 3092
Joined: Tue Apr 11, 2006 3:58 pm
Location: TLV, Israel
x 76

Re: OGRE port to NaCl (Google's Native Client)

Post by Assaf Raman »

What version of NaCl SDK are you using? Do you use my latest convertor?
Watch out for my OGRE related tweets here.
wuxin
Gnoblar
Posts: 12
Joined: Wed Aug 22, 2012 8:08 am

Re: OGRE port to NaCl (Google's Native Client)

Post by wuxin »

I use pepper_21 of nacl_sdk. I find the lastest tool .
wuxin
Gnoblar
Posts: 12
Joined: Wed Aug 22, 2012 8:08 am

Re: OGRE port to NaCl (Google's Native Client)

Post by wuxin »

I have downloaded the latest convertor.