This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

Cross compiler issue - Can I build OpenGL ES on the target board?

Hello,

I'm porting OpenGL ES for Mali T6xx on fbdev Linux, following the integration manual document 'DIT0023N_mali_midgard_neonv7_r5p0_im.pdf'.

Let me explain the situation I encountered to.

I finished setting the environment and has built the OpenGL ES package.

The package outputs such as 'kds.ko',  'libbase.a', 'libEGL.so', 'mali_base_jd_test' were copied well under the path 'bin'.

I can install kernel modules 'kds.ko', 'ump.ko', 'mali_kbase.ko'.

And  I tried to run integration test programs(such as mali_base_jd_test), but I failed to run it.

when I run these test programs on the board, it says:

{{{

-bash: ./mali_base_jd_test: No such file or directory

}}}

It's file information is as below:

{{{

$ file mali_base_jd_test

mali_base_jd_test: ELF 32-bit LSB executable, ARM, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.16, not stripped

}}}

And other existing programs' file information is:

{{{

main: ELF 32-bit LSB executable, ARM, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.26, BuildID[sha1]=0x3e78f4e12cb999d3104858fd02d2e45ff959883b, not stripped

}}}

It seems to me that I have to use cross compiler for 'GNU/Linux 2.6.26', but I couldn't find it.

latest Sourcery toochains was also 'for GNU/Linux 2.6.16', not for 2.6.26.

I used Android NDK(under the path ../prebuilts/gcc/linux-x86/arm/arm-eabi-4.6/bin/arm-eabi-) for the cross compiling the kernel.

And I mounted debian filesystem on it.

I guess I may have two way to resolve the cross-compiler problem to run test programs.

What I want to try is way 2).

way 1) Abstract stand-alone cross compiler from Android NDK

To use same cross-compiler with the one that I used to build the build,

I found that I can abstract stand-alone cross compiler by using 'make-standalone-toolchain.sh' script under the path ndk/build/tools of Android source.

But I failed to run this command. Because have an empty platform directory and files under the path 'ndk/platform' and I have no idea how to create it.

And I can't sure that I will can build OpenGL ES well with this abstracted cross-compiler either.

way 2) Build OpenGL ES on the target board

I can build other programs with gcc command on the target board.

I tried to build OpenGL ES directly on the board, but it's very hard to me to do that as I'm not familiar with the scons build environment.

Does OpenGL ES can be built on the board instead of cross-compiling?

Does Opengl ES can build test programs seperately? If then, can you tell me how to do that?

I tried to build with this gcc command below but failed to set the variable 'environ' in this way.

{{{

$ cd base/tests/customer/non-utf/jobdispatch
$ gcc -I../../../.. -I../../../../../ -I../../../../../stdlib/platform_dummy -I../../../../../base/platform_dummy -I../../../../../base/midg_gpus/t62x/r1p1/ -I../../../../../../product/kernel/drivers/gpu/arm -I../../../../../../product/osu/platform_dummy/ mali_base_jd_test.c

}}}

Is there other replaceable method to verify the operation of OpenGL ES on fbdev linux?

Please give me a hand. Thank you.

Nari

Parents
  • Hi moonami,

    Where did you get the root filesystem? I agree with McGeagh that it is probably a hf/sf mismatch (code sourcery is only soft float for the free version last time I checked), so I'd check if a recent linaro toolchain doesnt solve that and the GLIBC problem.

    Hth,

    Chris

Reply
  • Hi moonami,

    Where did you get the root filesystem? I agree with McGeagh that it is probably a hf/sf mismatch (code sourcery is only soft float for the free version last time I checked), so I'd check if a recent linaro toolchain doesnt solve that and the GLIBC problem.

    Hth,

    Chris

Children