LinuxQuestions.org

LinuxQuestions.org (/questions/)
-   Linux - Embedded & Single-board computer (https://www.linuxquestions.org/questions/linux-embedded-and-single-board-computer-78/)
-   -   Instructions in repository README file: "not for standalone use" (https://www.linuxquestions.org/questions/linux-embedded-and-single-board-computer-78/instructions-in-repository-readme-file-not-for-standalone-use-4175531274/)

linux_walt 01-16-2015 09:57 PM

Instructions in repository README file: "not for standalone use"
 
Hello, I'm trying to understand the instructions in a README file:

~/sunxi-mali-proprietary/README
Quote:

This repository contains the Mali-400 proprietary libraries.

It is not for standalone use and should instead be used as a submodule for the sunxi-mali repository, which includes a build system.
I also have the repository: ~/sunxi-mali

What does the README file mean by "should instead be used as a submodule for the sunxi-mali repository"? Do I need to put the proprietary repository somewhere inside the sunxi-mali repository?

... Just found this:
http://man7.org/linux/man-pages/man1/git-submodule.1.html
Reading it now.

veerain 01-16-2015 10:38 PM

Quote:

should instead be used as a submodule for the sunxi-mali repository
Since it's a git repository it is saying you should put the proprietary submodule in the main repository. But usually the main repository has by default such modules included. See that your sunxi-mali repository has submodule for proprietary module. For more info see man page of git-submodule.

linux_walt 01-16-2015 11:17 PM

Thanks veerain, I looked into the sunxi-mali repository and found the instructions on what to do next:

~/sunxi-mali$ cat README
Quote:

Mali userspace driver installation.
-----------------------------------

This repository contains a complete set of Mali userspace drivers, including proprietary OpenGLESv2/EGL binaries.

Prerequisite:
-------------

You will need to have a matching version of libUMP installed.

You can get this from the linux sunxi package server, which is documented at http://linux-sunxi.org/Packages

Or you can manually build libump from the sunxi libump git repository at https://github.com/linux-sunxi/libump

Cloning this repository:
------------------------

> git clone https://github.com/linux-sunxi/sunxi-mali.git
> git submodule init
> git submodule update

This should make sure that you fully set up this repository and the sunxi-mali-proprietary submodule.

Installing the binaries:
------------------------

First off, while there are some android binaries present, there is currently no support for installing the android binaries, you will have to do so manually.

When everything goes well, all you need to do is run:

> make install

This should autodetect things, and install the correct mali GLES and EGL libraries in your system.
After doing everything up to and including 'make install', it created a new folder (maybe the folder was already there, it just added files):
~/sunxi-mali/lib/mali$ ls -al
Code:

total 11
drwxr-xr-x 6 walter walter 1024 Jan 16 22:55 .
drwxr-xr-x 3 walter walter 1024 Jan 16 21:21 ..
-rw-r--r-- 1 walter walter  36 Jan 16 22:55 .git
-rw-r--r-- 1 walter walter  186 Jan 16 22:55 Makefile
-rw-r--r-- 1 walter walter  764 Jan 16 22:55 Makefile.mashup
-rw-r--r-- 1 walter walter  591 Jan 16 22:55 Makefile.split
-rw-r--r-- 1 walter walter  337 Jan 16 22:55 README
drwxr-xr-x 4 walter walter 1024 Jan 16 22:55 r2p4
drwxr-xr-x 4 walter walter 1024 Jan 16 22:55 r3p0
drwxr-xr-x 3 walter walter 1024 Jan 16 22:55 r3p1
drwxr-xr-x 3 walter walter 1024 Jan 16 22:55 r3p2-01rel1

A new git repository added inside sunxi-mali repository. There is also a new file '.gitmodules':
~$ cat sunxi-mali/.gitmodules
Code:

[submodule "lib/mali"]
        path = lib/mali
        url = https://github.com/linux-sunxi/sunxi-mali-proprietary.git

Does this mean that it will go online to fetch the sunxi-mali-proprietary repository? Can I change this so it uses my local copy, or maybe that's a bad idea?

veerain 01-16-2015 11:43 PM

Yes it will go online to fetch proprietary submodule.

You can change the path to local proprietary git module.

url = https://github.com/linux-sunxi/sunxi...roprietary.git

to instead url = file://absolutepathtosunxi-mali-proprietary

You should have checked out the master branch of sunxi-mali-proprietary with git checkout master.

Then you should pull the sunxi-mali.

linux_walt 01-17-2015 12:02 AM

Thank veerain, all the video drivers seem to be installed correctly now. There is a GL test program in sunxi-mali, a colored triangle, that is now working. Also mplayer's xv video output is now working.

YESSS!!! One week, but worth it. I think, maybe.

I guess instead of jumping up and down about it, an explanation of what followed after installing the new drivers would be more useful.

Originally mplayer had a glitch, you could not resize the video. The solution to this was to install a driver called 'fbturbo'.

Next came installation of the above GL drivers. Even though everything finally compiled and installed without errors, the GL test program didn't work. The error was: 'eglinitialize failed!'. Also, 'lsmod' was not showing any drivers. Everything was fixed after rebuilding the 'fbturbo' driver. At least as best I can recall that was how things went.

Almost forgot, lesson learned: read ALL the README files in the repositories you are using. Some have very specific instructions that may not be included in a 'how to build this package' guide.

In this case, the instructions of what to do with the submodule where in the README file of the parent module.


All times are GMT -5. The time now is 02:10 AM.