← Back to team overview

ubuntu-phone team mailing list archive

Re: How to build Ubuntu Touch for Nexus 4

 

I forgot, build output will be here:
$ cd $OUT


On Tue, Mar 18, 2014 at 1:27 AM, David Peter <maildavidpeter@xxxxxxxxx>wrote:

> Hi
>
> I just did it from scratch. You'll find all my commands preceded by the
> link where I found the info (except maybe the croot command which I found
> on the CM wiki, This command is in the package of envsetup.sh).
>
> I did not do the extract-file.sh as I do not have a N4, and it will fail
> the build otherwise.
>
> Good point about the JDK, it's just due to the Android part. Hopefully it
> won't last long.
>
> Maybe my method is old school. Or you could remark that the manifest get
> some prebuilt package, but where do they comefrom? I don't know... So I
> found yesterday response from F69M to the post "Porting Guide" very
> intereting and I should give attention to it.
>
>
> Here is my method, and this is all I know on this subject, good luck:
>
> https://wiki.ubuntu.com/Touch/Building
>
> $ sudo apt-get install git gnupg flex bison gperf build-essential \
>
> zip bzr curl libc6-dev libncurses5-dev:i386 x11proto-core-dev \
>
> libx11-dev:i386 libreadline6-dev:i386 libgl1-mesa-glx:i386 \
>
> libgl1-mesa-dev g++-multilib mingw32 tofrodos \
>
> python-markdown libxml2-utils xsltproc zlib1g-dev:i386 schedtool
>
> $ sudo apt-get install openjdk-6-jdk
>
>
>  https://wiki.ubuntu.com/Touch/Install#Step_1_-_Desktop_Setup
>
> $ sudo add-apt-repository ppa:phablet-team/tools
>
> $ sudo apt-get update
>
> $ sudo apt-get install ubuntu-device-flash
>
>
>  http://source.android.com/source/initializing.html#ccache
>
> $ export USE_CCACHE=1
>
>
>  http://source.android.com/source/downloading.html#installing-repo
>
> $ mkdir ~/bin
>
> $ PATH=~/bin:$PATH
>
> $ curl http://commondatastorage.googleapis.com/git-repo-downloads/repo >
> ~/bin/repo
>
> $ chmod a+x ~/bin/repo
>
> $ git config --global user.email "you@xxxxxxxxxxx"
>
> $ git config --global user.name "Your Name"
>
>
> https://wiki.ubuntu.com/Touch/AndroidDevel
>
> $ mkdir -p /path/to/phablet; cd /path/to/phablet
>
> $ repo init -u git://phablet.ubuntu.com/CyanogenMod/android.git -b
> phablet-trusty
>
> $ repo sync -j 8
>
>
>  https://wiki.ubuntu.com/Touch/Porting &
> https://wiki.ubuntu.com/Touch/Building
>
> $ . build/envsetup.sh
>
> $ breakfast [codename]
>
> $ repo sync
>
> *$ adb devices*
>
> *<your device appears here>*
>
> *$ cd device/[manufacturer]/[codename]*
>
> *$ ./extract-files.sh*
>
> $ croot
>
> $ brunch [codename]
>
>
>
>
>
> On Mon, Mar 17, 2014 at 10:53 AM, Mathias Bauer <mathias_bauer@xxxxxxx>wrote:
>
>> Hi David,
>>
>> After getting the repositories as described in
>> https://wiki.ubuntu.com/Touch/AndroidDevel (saucy replaced by trusty) I
>> still have no folder called devices/lge/mako. Basically it looks the same
>> as after calling "phable-dev-bootstrap".
>>
>> Calling "breakfast mako" then complains that it can't find device mako
>> and fetches a device repository from phablet.ubuntu.com. After that I
>> have a folder device/lge/mako. But breakfast at the end still is
>> complaining that it does not have a product spec "cm_mako."
>>
>> Calling "breakfast mako" again yields the same error "device mako not
>> found", it again tries to fetch the device repository, but detects that it
>> already has one. Nevertheless, is still misses the spec "cm_mako".
>>
>> "breakfast" also complains about missing jdk6. I thought that no Java
>> bits are needed to build Ubuntu Touch (as the build instructions tell), so
>> I'm again a bit confused - now I don't know if "breakfast" did all what it
>> needed to do before the next can be started.
>>
>> At least cm_mako obviously is needed for the build, so it can't go on
>> here.
>>
>> Any help would be very welcome.
>>
>> Regards,
>> Mathias
>>
>> Am 13.03.14 23:24, schrieb David Peter:
>>
>>> You're right, I had couple of trouble here too.
>>> In fact there is a clue in the Ubuntu porting guide:
>>> " You can check out the source code using the repo and git tools already
>>> familiar to Android ROM developers, as described here
>>>
>>> https <https://wiki.ubuntu.com/Touch/AndroidDevel>://
>>> <https://wiki.ubuntu.com/Touch/AndroidDevel>wiki.ubuntu.com
>>> <https://wiki.ubuntu.com/Touch/AndroidDevel>/Touch/
>>> <https://wiki.ubuntu.com/Touch/AndroidDevel>AndroidDevel
>>>
>>> <https://wiki.ubuntu.com/Touch/AndroidDevel>
>>> "
>>> Go to this link and follow the direct checkout section. Replace saucy
>>> repo with trusty.
>>>
>>> Once done proceed like the CM guide, it should be steps like (I don't
>>> remember exactly):
>>> source ./build/setenv...
>>> breakfast mako
>>> extract binaries
>>> brunch mako
>>>
>>> Good luck
>>>
>>> On Mar 13, 2014 8:22 AM, "Mathias Bauer" <mathias_bauer@xxxxxxx
>>> <mailto:mathias_bauer@xxxxxxx>> wrote:
>>>
>>>     Hi David,
>>>
>>>     please correct me if I'm wrong, this surely helps to understand the
>>>     build process better, but it does not give me the sources to build
>>>     Ubuntu Touch. As I understood, the phablet-dev-bootstrap tool is
>>>     meant to provide a source tree that is based on the CyanogenMod
>>>     sources, but reduced by everything not needed for Ubuntu Touch
>>>     (Dalvik etc.), extended by stuff that OTOH Ubuntu Touch needs.
>>>
>>>     So if I follow the CM instructions, I need a further step that turns
>>>     the CM source tree into an Ubuntu Touch source tree.
>>>
>>>     Regards,
>>>     Mathias
>>>
>>>     Am 12.03.14 21:24, schrieb David Peter:
>>>
>>>         Sergio is right follow the CyanogenMod's way, here it is:
>>>         http://wiki.cyanogenmod.org/w/__Build_for_mako
>>>
>>>         <http://wiki.cyanogenmod.org/w/Build_for_mako>
>>>
>>>         Read it, do it, everything will become very clear
>>>
>>>
>>>         On Wed, Mar 12, 2014 at 12:17 PM, Sergio Schvezov
>>>         <sergio.schvezov@xxxxxxxxxxxxx
>>>         <mailto:sergio.schvezov@xxxxxxxxxxxxx>
>>>         <mailto:sergio.schvezov@__canonical.com
>>>
>>>         <mailto:sergio.schvezov@xxxxxxxxxxxxx>>>
>>>         wrote:
>>>
>>>              On Wed, Mar 12, 2014 at 12:30 PM, Mathias Bauer
>>>              <mathias_bauer@xxxxxxx <mailto:mathias_bauer@xxxxxxx>
>>>         <mailto:mathias_bauer@xxxxxxx <mailto:mathias_bauer@xxxxxxx>>__>
>>>
>>>         wrote:
>>>               > Hi,
>>>               >
>>>               > I want to build a Ubuntu Touch for Nexus 4 by myself as
>>> an
>>>              exercise to start
>>>               > into the world of Ubuntu Touch porting.
>>>               >
>>>               > I tried to follow the instructions found here:
>>>               >
>>>               > https://wiki.ubuntu.com/Touch/__Building
>>>
>>>         <https://wiki.ubuntu.com/Touch/Building>
>>>               >
>>>               > So I got the code by calling
>>>               >
>>>               > phablet-dev-bootstrap [target_directory]
>>>
>>>              Can you add '--sources aosp' to that?
>>>
>>>               > After that step the instructions let me think that there
>>>         should
>>>              be a file
>>>               >
>>>               > [target_directory]/device/lge/__mako/extract_files.sh
>>>
>>>               >
>>>               > But there isn't even a "mako" under device/lge directory.
>>>               >
>>>               > Maybe I misunderstood the instructions, so I would be
>>>         glad to get an
>>>               > expanation.
>>>
>>>              No misunderstanding; it just hasn't been updated; That part
>>>         of the
>>>              instructions is outdated (follos CyanogenMod's way of doing
>>>         things).
>>>
>>>              You basically need to follow
>>>         http://source.android.com/__source/building-devices.html#_
>>> _obtaining-proprietary-binaries
>>>
>>>         <http://source.android.com/source/building-devices.html#
>>> obtaining-proprietary-binaries>
>>>
>>>              Thanks for the hint; I'll update the wiki.
>>>
>>>              --
>>>              Mailing list: https://launchpad.net/~ubuntu-__phone
>>>         <https://launchpad.net/~ubuntu-phone>
>>>              Post to     : ubuntu-phone@lists.launchpad.__net
>>>         <mailto:ubuntu-phone@xxxxxxxxxxxxxxxxxxx>
>>>              <mailto:ubuntu-phone@lists.__launchpad.net
>>>         <mailto:ubuntu-phone@xxxxxxxxxxxxxxxxxxx>>
>>>              Unsubscribe : https://launchpad.net/~ubuntu-__phone
>>>         <https://launchpad.net/~ubuntu-phone>
>>>              More help   : https://help.launchpad.net/__ListHelp
>>>         <https://help.launchpad.net/ListHelp>
>>>
>>>
>>>
>>>
>>>
>>>     --
>>>     Mailing list: https://launchpad.net/~ubuntu-__phone
>>>     <https://launchpad.net/~ubuntu-phone>
>>>     Post to     : ubuntu-phone@lists.launchpad.__net
>>>     <mailto:ubuntu-phone@xxxxxxxxxxxxxxxxxxx>
>>>     Unsubscribe : https://launchpad.net/~ubuntu-__phone
>>>     <https://launchpad.net/~ubuntu-phone>
>>>     More help   : https://help.launchpad.net/__ListHelp
>>>     <https://help.launchpad.net/ListHelp>
>>>
>>>
>>>
>>>
>

References