forked from Danniez/toolchain4
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathREADME
150 lines (123 loc) · 5.24 KB
/
README
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
1. Ubuntu 10.10 iPhone Toolchain 4
If you use Ubuntu 11.04, please see wiki on how to use gcc-4.4 to compile
2. Install the following packages in Ubuntu
sudo apt-get update
sudo apt-get install bison flex build-essential wget patch
sudo apt-get install git autoconf gawk libssl-dev libxml2-dev uuid-dev
sudo apt-get install clang
3. Clone Project
cd /
sudo git clone git://github.com/javacom/toolchain4.git
sudo chown -R <yourusername>:<yourusername> /toolchain4
4. Put iPhoneOS4.2.sdk.tgz to /toolchain4/sdks/
or build xar
sudo apt-get install libxml2-dev
./toolchain.sh xar
then put iPhoneSDK4_2.pkg to /toolchain4/sdks/
./toolchain.sh buildsys
to build sys
Put iPhoneSDK5_0.pkg to /toolchain4/sdks/
./toolchain.sh buildsys50
to build sys50 folder
Put iPhoneSDK4_3.pkg to /toolchain4/sdks/
./toolchain.sh buildsys43
to build sys43 folder
Put iPhoneSDKHeadersAndLibs.pkg to /toolchain4/sdks/
./toolchain.sh build313
to build sys313 folder
Put iPhoneSDKHeadersAndLibs_32.pkg to /toolchain4/sdks/
./toolchain.sh build32
to build sys32 folder
5. Build headers tools and gcc
cd /toolchain4
./toolchain.sh buildsys
./toolchain.sh cctools
./toolchain.sh llvmgcc
./toolchain.sh ldid
6. Install as_driver
cd /toolchain4/as_driver
make
cd /usr/bin
sudo mv as i686-linux-gnu-as
sudo cp -p /toolchain4/as_driver/as_driver as
sudo ln -s /toolchain4/pre/bin/arm-apple-darwin9-as .
sudo mv ld i686-linux-gnu-ld
sudo cp -p /toolchain4/as_driver/as_driver ld
sudo ln -s /toolchain4/pre/bin/arm-apple-darwin9-ld .
7. Test iOS4 sample code
cd /toolchain4/Projects/LocalPush
make
make dist
(LocalPush.app & LocalPush.ipa will be in build/4.0/ folder)
8. Checkout the updated UICatalog in svn here
sudo apt-get install subversion
cd /toolchain4/Projects
svn checkout http://apiexplorer.googlecode.com/svn/trunk/UICatalog UICatalog-read-only
cd UICatalog-read-only
make -f Makefile.ios4
make -f Makefile.ios4 dist
(Then install the build/4.0/UICatalog.ipa to iPhone for testing)
Enjoy.
----------------------------------------------------
Instructions to add theos build system to toolchain4
----------------------------------------------------
1. Installation
cd /toolchain4
git submodule add git://github.com/DHowett/theos.git theos
mv /toolchain4/theos/include /toolchain4/theos/include.bak
git submodule add -f git://github.com/DHowett/theos-nic-templates.git theos/templates/theos-nic-templates
git submodule add -f git://github.com/rpetrich/iphoneheaders.git theos/include
for FILE in /toolchain4/theos/include.bak/*.h; do mv $FILE /toolchain4/theos/include/; done
rmdir /toolchain4/theos/include.bak
cp /toolchain4/Projects/IOSurfaceAPI.h /toolchain4/theos/include/IOSurface/.
cp /toolchain4/pre/bin/ldid /toolchain4/theos/bin/.
2. This is how to create theos project
cd /toolchain4/Projects
/toolchain4/theos/bin/nic.pl
3. Test iOS5 sample notification center widget (requires sys50)
cd /toolchain4/Projects/widgettest/
make && make package
4. Test mobilesubstrate extension (requires sys32)
cd /toolchain4
git submodule add git://github.com/DHowett/preferenceloader.git Projects/preferenceloader
cd /toolchain4/Projects/preferenceloader
cp /toolchain4/Projects/Makefile_for_preferenceloader Makefile
make && make package
Enjoy.
----------------------------------------------------
Instructions to add Telesphoreo to toolchain4
----------------------------------------------------
1. Introduction
Telesphoreo is an APT-based distribution of Unix Software for iOS started by Jay Freeman (saurik). For details, please refer to http://www.telephoreo.org/
2. Installation
# update the toolchain4 git project
# install additional required packages
sudo apt-get install pkg-config realpath texinfo
sudo apt-get install subversion
# build headers for sys42 and sys32, please refer to wiki for downloads
cd /toolchain4
./toolchain.sh buildsys
mv /toolchain4/sys /toolchain4/sys42
./toolchain.sh build32
ln -s /toolchain4/sys32 sys
# update some header files
cp /toolchain4/sys42/usr/include/mach/mach_interface.h /toolchain4/sys32/usr/include/mach/.
cp /toolchain4/sys42/usr/include/mach/mach_host.h /toolchain4/sys32/usr/include/mach/.
cp /toolchain4/sys42/usr/include/mach/mach_vm.h /toolchain4/sys32/usr/include/mach/.
cp /toolchain4/sys42/usr/include/mach/mach_init.h /toolchain4/sys32/usr/include/mach/.
cp /toolchain4/sys42/usr/include/mach/host_info.h /toolchain4/sys32/usr/include/mach/.
mkdir -p /toolchain4/telesphoreo/debs
mkdir -p /toolchain4/telesphoreo/data
2. Test build p7zip
cd /toolchain4/telesphoreo/data
svn co http://svn.telesphoreo.org/trunk/data/p7zip
cd /toolchain4/telesphoreo
export PATH=$PATH:/toolchain4/pre/bin
export PKG_ARCH=iphoneos-arm; ./package.sh p7zip
3. Test build odcctools-782
cd /toolchain4/telesphoreo/data
svn co http://svn.telesphoreo.org/trunk/data/openssl
svn co http://svn.telesphoreo.org/trunk/data/uuid
cd /toolchain4/telesphoreo
export PKG_ARCH=iphoneos-arm; ./package.sh odcctools
Enjoy.