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

Mali OpenCL SDK compile problem

Hello,

I am trying to run the 'hello_world_opencl' sample program from the Mali OpenCL SDK on an Android platform (version 5.0.1). Using my Linux desktop with the terminal, I unzipped the Mali OpenCL SDK Linux download .tgz file. Following the ARM Mali OpenCL tutorials from the website, I changed directories to the hello_world_opencl directory and I tried to run the command 'make install' however I got the following error:

arm-none-linux-gnueabi-g++ -c -Wall -I../../include -I../../common -I. hello_world_opencl.cpp -o hello_world_opencl.o
make: arm-none-linux-gnueabi-g++: Command not found
make: *** [hello_world_opencl.o] Error 127

What am I doing wrong? How can I fix this issue?

Thanks for your time and help,

David

Parents
  • You should be able to use Linaro tools with Debian. That said, you might be able to install a cross-compiler using the following commands :

    dpkg --add-architecture armhf
    apt-get update
    apt-get install crossbuild-essential-armhf
    apt-get install g++-arm-linux-gnueabihf
    

    Linaro cross-compilers seems to be used like this :

    • Extract the cross-compiler gcc in a folder
    • Then add the folder to your path, like this:
      export PATH="$PATH":/path/to/gcc-linaro-arm-linux-gnueabihf-*_linux/bin/

     

    Whether you use one method of the other, when trying to autocomplete "arm" on a shell (e.g. pressing TAB 3 times on Bash), you should be able to see something like :

    arm-linux-gnueabihf-addr2line
    arm-linux-gnueabihf-ar
    arm-linux-gnueabihf-as
    ...
    arm-linux-gnueabihf-g++
    arm-linux-gnueabihf-gcc


    At that point, you might be able to compile the SDK

    Note that you might want to also try arm and gcc-arm-linux-gnueabi instead of armhf and gcc-arm-linux-gnueabihf if you want to use the soft float ABI.

    Also, note that some configuration scripts will use the following variables to determine the cross-compiling tools prefix :

    • CROSS_COMPILE
    • ARCH

    For example, you might have to export the following variables before configuring/compiling some packages :

    export CROSS_COMPILE=arm-linux-gnueabihf-
    export ARCH=arm
Reply
  • You should be able to use Linaro tools with Debian. That said, you might be able to install a cross-compiler using the following commands :

    dpkg --add-architecture armhf
    apt-get update
    apt-get install crossbuild-essential-armhf
    apt-get install g++-arm-linux-gnueabihf
    

    Linaro cross-compilers seems to be used like this :

    • Extract the cross-compiler gcc in a folder
    • Then add the folder to your path, like this:
      export PATH="$PATH":/path/to/gcc-linaro-arm-linux-gnueabihf-*_linux/bin/

     

    Whether you use one method of the other, when trying to autocomplete "arm" on a shell (e.g. pressing TAB 3 times on Bash), you should be able to see something like :

    arm-linux-gnueabihf-addr2line
    arm-linux-gnueabihf-ar
    arm-linux-gnueabihf-as
    ...
    arm-linux-gnueabihf-g++
    arm-linux-gnueabihf-gcc


    At that point, you might be able to compile the SDK

    Note that you might want to also try arm and gcc-arm-linux-gnueabi instead of armhf and gcc-arm-linux-gnueabihf if you want to use the soft float ABI.

    Also, note that some configuration scripts will use the following variables to determine the cross-compiling tools prefix :

    • CROSS_COMPILE
    • ARCH

    For example, you might have to export the following variables before configuring/compiling some packages :

    export CROSS_COMPILE=arm-linux-gnueabihf-
    export ARCH=arm
Children