真正成功的theos环境配置

2023-11-01 21:18

本文主要是介绍真正成功的theos环境配置,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!


学习并实战开发越狱后的IOS程序已经快两个月了,中文资料除了CocoaChina上有少数资料以外,其他地方还比较难找,所以这里翻译一点基础教程(文字功底不好,见谅~),希望能给读者带来帮助。

参考文章:

  • Jailbroken Development : Starter Pack
  • Beginning Jailbroken iOS Development – Getting The Tools
  • Theos/Getting Started

首先,要对IOS进行越狱开发,我们要先做好一些准备工作

  • 一台越狱后的IOS设备(iPad/iPhone/iTouch)
  • Mac OS X 10.6+ (或IOS 3.0+)
  • TheOS
  • Objective-C编程能力(起码也要开发过一点正常的IOS简单应用)

准备好这些以后,接下来我们就要开始了(大家肯定一眼就能看出,我们的重点是在TheOS上了,其实开发Jailbroken IOS app的方法有很多,但比较有名、比较系统化同时相对比较好用的就是TheOS了,因此本文以此为限)。

 

TheOS介绍

TheOS被设计为一个在基于Unix平台(Mac OS X、IOS…)和大多数的Linux平台下开发IOS程序的集成开发环境。说是集成开发环境,其实就是给我们准备好了一些代码模板、预置一些基本的Makefile脚本,我们还是要在Terminal(如果还不会用这个的话值得去学习一下)中完成一些关键操作。

 

安装TheOS(以Mac OS介绍)

因为TheOS必备的三个工具(subversion/git、curl和perl)在Mac OS下默认都已经存在,因此我们就不用费心去找这些东西了。接下来看步骤:

  1. 安装官方SDK(相信开发IOS应用的朋友们这个东西肯定已经不需要准备了)
  2. 打开Terminal,先设置一个环境变量(这个仅仅只是为了输入方便,不是必须的),命令如下(其中的路径就是你准备安装TheOS的位置,如果你没有更好的选择那就按照例子中的来吧):
    export THEOS=/opt/theos
  3. 接着,我们从网上下载最新的TheOS版本:
    svn co http://svn.howett.net/svn/theos/trunk $THEOS
    git clone git://github.com/DHowett/theos.git $THEOS
    (据说修改版本的thoes更好 git clone git://github.com/rpetrich/theos.git $THEOS)
  4. 按照上述命令,肯定绝大多数朋友会出现提示svn: Can’t make directory ‘/opt/theos’: Permission denied,这是因为/opt/theos这个路径需要管理员授权才有写权限。在命令名前田间sudo即可,重新输入后如下:
    sudo svn co http://svn.howett.net/svn/theos/trunk $THEOS

    输入密码回车,等待自动下载完成即可。

  5. 安装ldid(这是一个模拟签名的工具,需要单独下载),命令如下(因权限问题,本人对iphonedevwiki上的命令做了一些修改以达到目的):
    sudo curl -s http://dl.dropbox.com/u/3157793/ldid > /tmp/ldid
    sudo cp /tmp/ldid $THEOS/bin/
    sudo chmod +x $THEOS/bin/ldid
    rm /tmp/ldid

6、git clone git://github.com/rpetrich/iphoneheaders.git

好了,TheOS到这里就安装结束了,接下来,就可以开始IOS越狱开发之旅了。
  1. 打开Terminal(如果用上个阶段没有关闭的Terminal请直接跳转到第3步)
  2. 设置环境变量
    export THEOS=/opt/theos
  3. 进入你打算放置项目的文件夹
    cd ~/myprg
  4. 创建工程
    $THEOS/bin/nic.pl
  5. 此时会看到命令行中的文本提示如下:
    NIC 1.0 - New Instance Creator
    ------------------------------[1.] iphone/application[2.] iphone/library[3.] iphone/preference_bundle[4.] iphone/tool[5.] iphone/tweak
  6. 这里对这五种类型做个简单介绍,application是创建普通应用程序的,library是创建库文件,preference_bundle是创建设置束,tool是开发那种没有界面的,就好像hello world那种程序的,tweak就是最精华的部分了,我们这里姑且翻译为外挂程序,关于tweak的开发介绍我打算再单独开一篇文章用来描述。接着,根据提示,分别输入模版类型、工程名、包名、作者名等参数回车,等待初始化完成即可进入工程文件夹,编辑源文件了。如下:
    Choose a Template (required): 1
    Project Name (required): iPhoneDevWiki
    Package Name [com.yourcompany.iphonedevwiki]: net.howett.iphonedevwiki
    Authour/Maintainer Name [Dustin L. Howett]:
    Instantiating iphone/application in iphonedevwiki/...
    Done.

 

好了,起步教程就介绍到这里了,剩下的编码任务就看各位的了,至于你是要写hello world还是touch me那就是仁者见仁,智者见智了。

如果需要转载,大家记得把原文链接加上哦~Thx


转自:http://www.thising.com/blog/2012/01/ios%E8%B6%8A%E7%8B%B1%E5%BC%80%E5%8F%91%E8%B5%B7%E6%AD%A5%E6%95%99%E7%A8%8B/









这篇关于真正成功的theos环境配置的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/325807

相关文章

Java使用jar命令配置服务器端口的完整指南

《Java使用jar命令配置服务器端口的完整指南》本文将详细介绍如何使用java-jar命令启动应用,并重点讲解如何配置服务器端口,同时提供一个实用的Web工具来简化这一过程,希望对大家有所帮助... 目录1. Java Jar文件简介1.1 什么是Jar文件1.2 创建可执行Jar文件2. 使用java

SpringBoot 多环境开发实战(从配置、管理与控制)

《SpringBoot多环境开发实战(从配置、管理与控制)》本文详解SpringBoot多环境配置,涵盖单文件YAML、多文件模式、MavenProfile分组及激活策略,通过优先级控制灵活切换环境... 目录一、多环境开发基础(单文件 YAML 版)(一)配置原理与优势(二)实操示例二、多环境开发多文件版

Vite 打包目录结构自定义配置小结

《Vite打包目录结构自定义配置小结》在Vite工程开发中,默认打包后的dist目录资源常集中在asset目录下,不利于资源管理,本文基于Rollup配置原理,本文就来介绍一下通过Vite配置自定义... 目录一、实现原理二、具体配置步骤1. 基础配置文件2. 配置说明(1)js 资源分离(2)非 JS 资

使用docker搭建嵌入式Linux开发环境

《使用docker搭建嵌入式Linux开发环境》本文主要介绍了使用docker搭建嵌入式Linux开发环境,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面... 目录1、前言2、安装docker3、编写容器管理脚本4、创建容器1、前言在日常开发全志、rk等不同

MySQL8 密码强度评估与配置详解

《MySQL8密码强度评估与配置详解》MySQL8默认启用密码强度插件,实施MEDIUM策略(长度8、含数字/字母/特殊字符),支持动态调整与配置文件设置,推荐使用STRONG策略并定期更新密码以提... 目录一、mysql 8 密码强度评估机制1.核心插件:validate_password2.密码策略级

ShardingProxy读写分离之原理、配置与实践过程

《ShardingProxy读写分离之原理、配置与实践过程》ShardingProxy是ApacheShardingSphere的数据库中间件,通过三层架构实现读写分离,解决高并发场景下数据库性能瓶... 目录一、ShardingProxy技术定位与读写分离核心价值1.1 技术定位1.2 读写分离核心价值二

QT Creator配置Kit的实现示例

《QTCreator配置Kit的实现示例》本文主要介绍了使用Qt5.12.12与VS2022时,因MSVC编译器版本不匹配及WindowsSDK缺失导致配置错误的问题解决,感兴趣的可以了解一下... 目录0、背景:qt5.12.12+vs2022一、症状:二、原因:(可以跳过,直奔后面的解决方法)三、解决方

SpringBoot路径映射配置的实现步骤

《SpringBoot路径映射配置的实现步骤》本文介绍了如何在SpringBoot项目中配置路径映射,使得除static目录外的资源可被访问,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一... 目录SpringBoot路径映射补:springboot 配置虚拟路径映射 @RequestMapp

Nginx中配置使用非默认80端口进行服务的完整指南

《Nginx中配置使用非默认80端口进行服务的完整指南》在实际生产环境中,我们经常需要将Nginx配置在其他端口上运行,本文将详细介绍如何在Nginx中配置使用非默认端口进行服务,希望对大家有所帮助... 目录一、为什么需要使用非默认端口二、配置Nginx使用非默认端口的基本方法2.1 修改listen指令

mysql5.7.15winx64配置全过程

《mysql5.7.15winx64配置全过程》文章详细介绍了MySQL5.7.15免安装版的配置步骤,包括解压安装包、设置环境变量、修改配置文件、初始化数据目录、安装服务、启动数据库、登录及密码修改... 目录前言一、首先下载安装包二、安android装步骤1.第一步解压文件2.配置环境变量3.复制my-