Jump to content


Photo

Simple Dev Pnd


  • Please log in to reply
64 replies to this topic

#1 Stuckie

Stuckie

    GP Mania

  • GP32 Hardcore
  • PipPipPipPipPip
  • 432 posts
  • Gender:Male
  • Location:Tired, and sleeping in the basement...

Posted 18 June 2010 - 08:36 AM

Hey,

Currently, the Dev Extends are causing issues with people who have been using their Pandora a bit.
Essentially, this is because its binding whatever configuration files are present in the extend over your Pandora.
The best way to solve this would be to create your own root overlay, and install the dev tools in there.. or of course, install the dev tools direct to NAND.

I have been testing out various other methods around this, such as compiler GCC in the standard cross-compiler manner, so it can be launched from a PND. However, simple tests worked fine, but complex tests caused it to fail spectacularly.. so that needs figured out a bit. I also don't seem to have the greatest amount of time these days to do fiddling, and seem to be far more tired than usual :(

I'd therefore advise you not to use the Dev Extends unless you know what you're doing and have backups.. however, I have never marked these things as being terribly stable, and always labeled them as the "dodgy hacks" they are. It's an interesting hack, but its becoming increasingly like something that has to be done uniquely for each Pandora, rather than a generic Dev Extend that works on all - due to the nature of the AUFS binds ( which don't always take.. grrr )

Original post hidden in the spoiler tags.
Spoiler

Edited by Stuckie, 23 August 2010 - 06:21 PM.


#2 Hooka

Hooka

    That Guy!

  • GP Guru
  • 1448 posts
  • Location:Canada

Posted 18 June 2010 - 08:47 AM

Thanks Stuckie, will be giving it a look (although I've personally tailored torpor's stuff and added some libs that I needed)

#3 torpor

torpor

    hack hack hack, the little machines fight back

  • GP32 Hardcore
  • PipPipPipPipPipPip
  • 2377 posts
  • Gender:Male
  • Location:vienna, austria

Posted 18 June 2010 - 09:00 AM

Just wanted to pitch in and say this looks really great Stuckie.. although I'm no fan of having dev tools in a PND personally (I'm not sure I see the need for me, personally - I've got no problems having all these tools on the NAND), it will definitely be useful to other coders coming new to the scene who want an easy way to get started, and don't want to use the standard Angstrom techniques for setting up a development environment.

I'd be very interested in your additional libs Hooka .. I talked with DJWillis last night about the whole repo issue, and any details about what other people are installing from the Angstrom repo is very interesting to this discussion ..

#4 Stuckie

Stuckie

    GP Mania

  • GP32 Hardcore
  • PipPipPipPipPip
  • 432 posts
  • Gender:Male
  • Location:Tired, and sleeping in the basement...

Posted 18 June 2010 - 07:41 PM

Just updated the zip with pre-formatted .extend files. It's grown a bit to about 35mb but it's probably a bit easier to get started with.

Now go forth and code! ;)

If any more help is needed, let me know :)
Same for if there could be additional libraries to what's there ( what additional ones do you have Hooka, for example? )

#5 Stocker

Stocker

    Member

  • Members
  • PipPip
  • 25 posts

Posted 19 June 2010 - 11:04 AM

Thank you very much!

I'm not much of a programmer, but I'm very interested in learning about all this stuff. I've got it running on my pandora. The extended home is very useful.

Thanks again.

#6 MDave

MDave

    ZEQ2 Lite Developer

  • GP32 Hardcore
  • PipPipPipPipPipPip
  • 1103 posts
  • Gender:Not Telling
  • Location:United Kingdom, North East Wales, Buckley

Posted 19 June 2010 - 02:08 PM

Ogg vorbis lib would be handy ;) Does this also have libpng?

EDIT: Adding libs into the appdata folder would be handy.

Edited by MDave, 19 June 2010 - 02:13 PM.


#7 Stuckie

Stuckie

    GP Mania

  • GP32 Hardcore
  • PipPipPipPipPip
  • 432 posts
  • Gender:Male
  • Location:Tired, and sleeping in the basement...

Posted 19 June 2010 - 03:05 PM

I've a couple of other things to add to it, but as I've mounted the "root" image as Read-Write, you can just do "sudo opkg install <blah>" to get whatever you need :)

That first release was just the basic toolchain that was described in Torpor's thread.
The problem will be if I update this, then you'll lose whatever changes you may have had ( though I'm working on sneaky ways of getting around this ;) even if it just ends up a blind copy from A to B script ) - but ensuring that the base image has enough to get someone started is probably the best approach!

I'll also list any changes between each revision should you want to keep your own copy up to date :)

libpng should be there.. I install libpng-dev in the original image.
It doesn't look like I added vorbis though, so I'll get that installed now for the next release.

ChangeLogs:

Version: 18th June 2010
-----------------------
Spoiler


Version: 19th June 2010 ( so far )
-----------------------
Spoiler

Edited by Stuckie, 19 June 2010 - 03:11 PM.


#8 SomeGuy99

SomeGuy99

    :)

  • GP32 Hardcore
  • PipPipPipPipPipPip
  • 2186 posts
  • Gender:Male
  • Location::|
  • Interests::D
    :/

Posted 19 June 2010 - 09:08 PM

It doesn't work. I opened the dev extend file, went through all the zenity prompts etc. I then tested it by installing Firefox. It installed to the nand.

#9 Stuckie

Stuckie

    GP Mania

  • GP32 Hardcore
  • PipPipPipPipPip
  • 432 posts
  • Gender:Male
  • Location:Tired, and sleeping in the basement...

Posted 19 June 2010 - 09:14 PM

hmm, could you do it again and when the terminal appears give me the output of "mount" please?
As it sounds like it didn't mount properly for whatever reason... you should see a whole heap of aufs mounts.

Sorry, I hit reply a bit quick there.
You should see a heap of aufs mounts and a /dev/loop mount ( or two, depending on if you just did the root mount or the home mount as well. )
This /dev/loop mount should be pointing at /mnt/utmp/rootextend/mounts and it should have bin etc home lib lost+found sbin usr var. If you've done home, it should be at /mnt/utmp/rootextend/mounts/home.

I suspect one of the mounts failed somewhere along the lines.

Edited by Stuckie, 19 June 2010 - 09:19 PM.


#10 SomeGuy99

SomeGuy99

    :)

  • GP32 Hardcore
  • PipPipPipPipPipPip
  • 2186 posts
  • Gender:Male
  • Location::|
  • Interests::D
    :/

Posted 19 June 2010 - 09:22 PM

rootfs on / type rootfs (rw)
ubi0:rootfs on / type ubifs (rw,bulk_read)
proc on /proc type proc (rw)
tmpfs on /mnt/.splash type tmpfs (rw,size=40k)
sysfs on /sys type sysfs (rw)
none on /dev type tmpfs (rw,mode=755)
devpts on /dev/pts type devpts (rw,gid=5,mode=620)
usbfs on /proc/bus/usb type usbfs (rw)
tmpfs on /var/volatile type tmpfs (rw)
tmpfs on /dev/shm type tmpfs (rw,mode=777)
tmpfs on /media/ram type tmpfs (rw)
ubi1:boot on /boot type ubifs (rw)
/dev/mmcblk1 on /media/disk type vfat (rw,sync,nosuid,nodev,uid=1000,fmask=0022,dmask=0022,codepage=cp437,iocharset=iso8859-1,shortname=winnt)
/dev/loop0 on /mnt/pnd/rootextend type iso9660 (ro)
none on /mnt/utmp/rootextend type aufs (rw,si=603d1dd7,noplink)
/dev/loop1 on /mnt/utmp/rootextend/mounts type ext2 (rw,errors=continue)
aufs on /bin type aufs (rw,si=635bb857)
aufs on /etc type aufs (rw,si=635bb657)
aufs on /lib type aufs (rw,si=635bb757)
aufs on /sbin type aufs (rw,si=635bb457)
aufs on /usr/arm-angstrom-linux-gnueabi type aufs (rw,si=635bb957)
aufs on /usr/bin type aufs (rw,si=635bb357)
aufs on /usr/etc type aufs (rw,si=635bb057)
aufs on /usr/games type aufs (rw,si=63577777)
aufs on /usr/include type aufs (rw,si=63577477)
aufs on /usr/lib type aufs (rw,si=63577577)
aufs on /usr/libexec type aufs (rw,si=63577277)
aufs on /usr/sbin type aufs (rw,si=600d7dd7)
aufs on /usr/share type aufs (rw,si=610bc477)
aufs on /usr/src type aufs (rw,si=610b9837)
aufs on /var/backups type aufs (rw,si=659812d7)
aufs on /var/lib type aufs (rw,si=610bc777)
aufs on /var/local type aufs (rw,si=603cd557)
aufs on /var/openldap-data type aufs (rw,si=603cdd57)
aufs on /var/spool type aufs (rw,si=603cd957)

Wait, it seems to be working this time. I have Geany on my menu.

Sorry :)

Edited by SomeGuy99, 19 June 2010 - 09:26 PM.


#11 Stuckie

Stuckie

    GP Mania

  • GP32 Hardcore
  • PipPipPipPipPip
  • 432 posts
  • Gender:Male
  • Location:Tired, and sleeping in the basement...

Posted 19 June 2010 - 09:30 PM

That's working fine then... I don't see how it could have installed direct to NAND as it's re-routing everything to the loop back image.

Can you talk me through how you tested this, please.. so I can try track down what went wrong.
Was it essentially:
Bind the dev.extend.
Install Firefox.
Try Firefox to see if it works.
Reboot.
Try Firefox before binding and it was there?

#12 SomeGuy99

SomeGuy99

    :)

  • GP32 Hardcore
  • PipPipPipPipPipPip
  • 2186 posts
  • Gender:Male
  • Location::|
  • Interests::D
    :/

Posted 19 June 2010 - 09:48 PM

That's working fine then... I don't see how it could have installed direct to NAND as it's re-routing everything to the loop back image.

Can you talk me through how you tested this, please.. so I can try track down what went wrong.
Was it essentially:
Bind the dev.extend.
Install Firefox.
Try Firefox to see if it works.
Reboot.
Try Firefox before binding and it was there?


Yes. I just removed Firefox and repeated the whole thing again, and this time it it all works. I did nothing differently!

I could tell something was wrong when the SD light wasn't flashing when installing the first time. Anyway, thanks for this! Loading up the PND and going through all the menus is kind of a pain, but it's a nice and safe way to do it. Thanks for the loopback files (I followed your original guide and sacrificed a card in etx2 format) too.

Now I'm off to go mad with the Angstrom repo. Wish me luck! Then it's Adventure in Recompilation Land.

#13 Stuckie

Stuckie

    GP Mania

  • GP32 Hardcore
  • PipPipPipPipPip
  • 432 posts
  • Gender:Male
  • Location:Tired, and sleeping in the basement...

Posted 19 June 2010 - 09:55 PM

hmm... glad it's not up on one of the archives yet, so as long as people have to come here to grab it, I can track things like this :)
So, if anyone manages to get this to not work like SomeGuy99, let me know exactly what you did, and give me as much information as you can!
I have a feeling it silently failed to mount, but made the mount points for next time without telling you, so I shall be having another look at my script to be sure.

Good Luck with the Angstrom Repo.. it's a bit mad itself ;) been using this to find stuff: http://www.angstrom-distribution.org/repo/
I do prefer this setup to having a separate install on SD though.. if only that I can have a bunch of "default" applications installed and shared amongst my dev environments, rather than having to re-create the environments for every SD card. But, the SD card is possibly safer, as this can still fail it seems.. needs more testing!

#14 SomeGuy99

SomeGuy99

    :)

  • GP32 Hardcore
  • PipPipPipPipPipPip
  • 2186 posts
  • Gender:Male
  • Location::|
  • Interests::D
    :/

Posted 19 June 2010 - 10:13 PM

Yeah, that's what I've been using (the repo page). I've held back on installing big stuff because space was running low.

This way I can back up the loopback files to a standard fat32 or ntfs drive!

Is there any way to increase their size later? I'm guessing not. At some point I'd quite like the contents of the extension pnd - as it's quite small, I plan to install in on my nand. Is it a shell script? Does it accept arguments? I can mod it if not. My ideal would be to make a Thunar action to right-click 'mount extension' on extension files and forego all the password stuff (add to the sudoers file I guess), then add a little notify popup to say 'extension mounted' or somesuch. I'll probably post it up in Software Hacking (I'm behind on writing guides atm).

Edited by SomeGuy99, 19 June 2010 - 10:14 PM.


#15 Stuckie

Stuckie

    GP Mania

  • GP32 Hardcore
  • PipPipPipPipPip
  • 432 posts
  • Gender:Male
  • Location:Tired, and sleeping in the basement...

Posted 19 June 2010 - 10:22 PM

Not easily no, but you should be able to get away with using an empty extend file to mount as root as it will create the folders for you, so you could use the 4gig one on fat32.. or create a giant one for your NTFS drive, if you prefer!
The pre-made dev one is just for convenience of people wanting to get started quickly :)

It is just a simple script that does it, here it is in it's entirety:
Spoiler


And the home mount is essentially the same:
Spoiler


So you probably could get away with some Thunar scripts to do the same thing.