Seems like everybody is (re)starting to look on the Vita since last friday and the HENkaku release (a huge thx to Molecule team for that), and that's more than cool
As some people have pointed out, it may be difficult to install the SDK and toolchain from the source, with errors depending on the distro you're using, the version of the tools (make 4.x caused me some trouble with libelf build for instance). If you want to go the easy way, you also have the solution of the pre-built toolchain. And I propose a third option
!! WARNING !! I have tested both methods and it worked for me, BUT this is still a first draft and it may have bugs. Obviously, no warranty provided. But you can ask questions, and I will try to answer as quick as possible (so not that quick
Archlinux Packages
As I prefer to go with packaged software as often as possible, I decided to package all the toolchain (host libs included) for Archlinux (cause that's the distro I use), and as I don't wanted to stop so early I also ported vitasdk's vita.patch to recent versions of binutils / gcc / libelf.
Note that my work is based on vitasdk's buildscripts
I separated the toolchain in two package groups:
- vita-toolchain-hostlibs (needed to rebuilt the toolchain)
vita-toolchain (the toolchain itself)
Packages are available on my personal repo at https://repo.bullekeup.net/x86_64 (only for 64 bits installs, don't have time to build it for 32 bits sorry
To use it, add this to your /etc/pacman.conf
Code: Select all
[bullekeup.net]
Server = https://repo.bullekeup.net/$arch
SigLevel = Never
Code: Select all
$ pacman -Sy vita-toolchain
$ pacman -Sy vita-toolchain-hostlibsPKGBUILDs
If you prefer rebuild the package yourself, or need to (32 bits install for example), the PKGBUILDS are on my github.
If you don't have Archlinux installed, don't worry, I've get you covered with a docker container.
Docker
If you don't know what docker is, that's more or less like a stripped down VM. Or a chroot on steroids, depends on your point of view, more here. I won't cover details of docker installation, as a lot of guys and girls already done it on the web. Refer to your distro install guide (or ask Google to find out
So how it works ?
I made an Archlinux based docker image and simply installed the packages I've made into it.
First step: pull the image
Code: Select all
$ docker pull bullekeup/arch-vita-toolchainSecond step: launch the image
You need to replace <your_workdir> with the path to your actual work directory on your computer to allow the container to find your code. Then you should see <your_workdir> content in /home/workspace in the container.
Code: Select all
$ docker run -ti -v <your_workdir>:/home/workspace --name=vita-tool bullekeup/arch-vita-toolchain:latestTip: If you want to launch a second terminal, no need to spawn a new container, exec a new terminal in the running one with following command:
Code: Select all
$ docker exec -ti -u devuser vita-tool /usr/bin/zshTesting
First, try printing arm-vita-eabi-gcc's version
Code: Select all
$ arm-vita-eabi-gcc --versionCode: Select all
arm-vita-eabi-gcc (GNU Tools for embedded ARM processor - PSVita toolchain build) 6.1.1 20160707
Copyright (C) 2016 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.In either your Archlinux term or your Docker term, launch the script with
Code: Select all
$ vita-testsuiteVitahelloworld sample code will be copied into the current directory and compiled. Then the script will ask you the Vita's IP on your network to transfer vitahelloworld.vpk. After the transfer, just stop the FTP server on your console, select the VPK in molecularShell and press X two times to install. Go back to the LiveArea and try to launch vitahelloworld, it should work. Et voilà !
Note that vitahelloworld code is available as it was when package was built in
Code: Select all
/opt/vita-toolchain/arm-vita-eabi/usr/samples/src/vitahelloworld/Code: Select all
/opt/vita-toolchain/arm-vita-eabi/usr/samples/vpk/vitahelloworld.vpkLinks
https://github.com/bullekeup
https://github.com/vitasdk
https://github.com/henkaku
https://github.com/xerpi
https://docker.com
Advertising