在MAC 10.5.5 上 编译给 iPhoneOS2
Compilation guide for pjsip on iPhone OS 2.X. Introduction This article describes the steps to generate pjsip on Mac OS X 10.5.5 Details Get pjsip source code Get PjSIP from subversion repository: svn checkout http : //svn.pjsip.org/repos/
Compilation guide for pjsip on iPhone OS 2.X.
Introduction
This article describes the steps to generate pjsip on Mac OS X 10.5.5
Details
Get pjsip source code
Get PjSIP from subversion repository:
<span><span>svn checkout http</span> <span>:</span> <span>//svn.pjsip.org/repos/pjproject/trunk pjproject</span> </span>
Modify some files
aconfigure.ac
In aconfigure.ac file add the lines below displayed with '+'. Of course copy without '+' ;-)
<span><span> </span> <span>if</span> <span> test </span> <span>"$enable_sound"</span> <span>=</span> <span>"no"</span> <span>;</span> <span>then</span> </span> <span><br> <span> </span> </span> <span><span>true</span> <span>;</span> </span> <span><br> <span> </span> </span> <span><span>else</span> </span> <span><br> <span> </span> </span> <span><span>case</span> <span> $target </span> <span>in</span> </span> <span><br> </span> <span><span>+</span> <span> arm</span> <span>-</span> <span>apple</span> <span>-</span> <span>darwin</span> <span>*)</span> </span> <span><br> </span> <span><span>+</span> <span> LIBS</span> <span>=</span> <span>"$LIBS -framework CoreAudio -framework CoreFoundation -framework AudioToolbox"</span> </span> <span><br> </span> <span><span>+</span> <span> ac_pjmedia_snd</span> <span>=</span> </span> <span><span>iphone<br> </span> <span>+</span> <span> AC_MSG_RESULT</span> <span>([</span> <span>Checking</span> <span> sound device backend</span> <span>...</span> <span>AudioQueue</span> <span>])</span> </span> <span><br> </span> <span><span>+</span> <span> </span> <span>;;</span> </span> <span><br> <span> </span> </span> <span><span>*</span> <span>darwin</span> <span>*)</span> </span> <span><br> <span> LIBS</span> </span> <span><span>=</span> <span>"$LIBS -framework CoreAudio -framework CoreServices -framework AudioUnit -framework AudioToolbox"</span> </span> <span><br> <span> </span> </span> <span><span>if</span> <span> test </span> <span>"`uname -r`"</span> <span>=</span> <span>"6.8"</span> <span>;</span> <span>then</span> </span>
build/rules.mak
In rules.mak modify, remove lines with '-' and add lines with '+':
<span><span> $</span> <span>(</span> <span>LIB</span> <span>):</span> <span> $</span> <span>(</span> <span>OBJDIRS</span> <span>)</span> <span> $</span> <span>(</span> <span>OBJS</span> <span>)</span> <span> $</span> <span>(</span> <span>$</span> <span>(</span> <span>APP</span> <span>)</span> <span>_EXTRA_DEP</span> <span>)</span> </span> <span><br> <span> </span> </span> <span><span>if</span> <span> test </span> <span>!</span> <span>-</span> <span>d $</span> <span>(</span> <span>LIBDIR</span> <span>);</span> <span>then</span> <span> $</span> <span>(</span> <span>subst </span> <span>@@,</span> <span>$</span> <span>(</span> <span>subst </span> <span>/,</span> <span>$</span> <span>(</span> <span>HOST_PSEP</span> <span>),</span> <span>$</span> <span>(</span> <span>LIBDIR</span> <span>)),</span> <span>$</span> <span>(</span> <span>HOST_MKDIR</span> <span>));</span> <span>fi</span> </span> <span><br> </span> <span><span>-</span> <span> $</span> <span>(</span> <span>AR</span> <span>)</span> <span> $</span> <span>(</span> <span>LIB</span> <span>)</span> <span> $</span> <span>(</span> <span>OBJS</span> <span>)</span> </span> <span><br> </span> <span><span>-</span> <span> $</span> <span>(</span> <span>RANLIB</span> <span>)</span> <span> $</span> <span>(</span> <span>LIB</span> <span>)</span> </span> <span><br> </span> <span><span>+</span> <span> $</span> <span>(</span> <span>RANLIB</span> <span>)</span> <span>-</span> <span>static</span> <span>-</span> <span>o $</span> <span>(</span> <span>LIB</span> <span>)</span> <span> $</span> <span>(</span> <span>OBJS</span> <span>)</span> </span>
pjlib/include/pj/compat/os_darwinos.h
In os_darwinos.h find and comment the following lines :
<span><span>/*<br> * Socket related<br> */</span> </span> <span><br> </span> <span><span>//typedef int socklen_t;</span> </span>
Without this, you will get an error when you will compile, because socklen_t is redefined.
pjlib/include/pj/config_site.h
It can be necessary to define some macro. For example :
<span><span>#undef PJ_HAS_FLOATING_POINT</span> </span> <span><br> </span> <span><span>#define PJ_HAS_FLOATING_POINT 1</span> </span> <span><br> <br> </span> <span><span>/* SRTP has not been ported to iPhone yet */</span> </span> <span><br> </span> <span><span># undef PJMEDIA_HAS_SRTP</span> </span> <span><br> </span> <span><span># define PJMEDIA_HAS_SRTP 0</span> </span> <span><br> <br> </span> <span><span>/* Disable some codecs for now */</span> </span> <span><br> </span> <span><span># define PJMEDIA_HAS_GSM_CODEC 1</span> </span> <span><br> </span> <span><span># define PJMEDIA_HAS_L16_CODEC 0</span> </span> <span><br> </span> <span><span># define PJMEDIA_HAS_ILBC_CODEC 0</span> </span> <span><br> </span> <span><span># define PJMEDIA_HAS_SPEEX_CODEC 0</span> </span> <span><br> </span> <span><span># define PJMEDIA_HAS_G722_CODEC 0</span> </span>
pjmedia/build/os-auto.mak.in
In os-auto.mak.in , add the line with '+'
<span><span> </span> <span># - ds: Win32 DirectSound (dsound.c)</span> </span> <span><br> </span> <span><span>+</span> <span># - iphone: iPhone AudioQueue (iphonesound.c)</span> </span> <span><br> <span> </span> </span> <span><span># - null: Null sound device (nullsound.c)</span> </span>
Add the line below, for example between "Win 32 Direct Sound" and " Null Sound Device"
<span><span>#</span> </span> <span><br> </span> <span><span># iPod/iPhone</span> </span> <span><br> </span> <span><span>#</span> </span> <span><br> <span>ifeq </span> </span> <span><span>(</span> <span>$</span> <span>(</span> <span>AC_PJMEDIA_SND</span> <span>),</span> <span>iphone</span> <span>)</span> </span> <span><br> </span> <span><span>export</span> <span> SOUND_OBJS </span> <span>=</span> <span> iphonesound</span> <span>.</span> </span> <span><span>o<br> </span> <span>export</span> <span> CFLAGS </span> <span>+=</span> <span>-</span> <span>DPJMEDIA_SOUND_IMPLEMENTATION</span> <span>=</span> </span> <span><span>PJMEDIA_SOUND_IPHONE_SOUND<br> endif<br> </span> </span>
We have defined a new target for sound device.
pjmedia/include/pjmedia/config.h
in config.h add the lines below with '+':
<span><span> </span> <span>/** Constant for Win32 MME sound backend. */</span> </span> <span><br> <span> </span> </span> <span><span>#define PJMEDIA_SOUND_WIN32_MME_SOUND 3</span> </span> <span><br> <br> </span> <span><span>+</span> <span>/** Constant for AudioQueue sound backend. */</span> </span> <span><br> </span> <span><span>+</span> <span>#define PJMEDIA_SOUND_IPHONE_SOUND 4</span> </span>
pjmedia/src/pjmedia
For the moment I didn't upload iphonesound.c so we need to compile with null_sound.
Configuration
Generate configuration script
<span><span>autoconf aconfigure</span> <span>.</span> <span>ac </span> <span>></span> <span> aconfigure</span> </span>
Compilation
iPhone SDK doesn't provide some programs without version number, so we create symbolic link. We should test before create link, but we are very lazy. Copy the lines below in file with name like compile.sh in the root of pjsip.
<span><span>#!/bin/sh</span> </span> <span><br> <br> </span> <span><span>export</span> <span> DEV</span> <span>=</span> <span>/Developer/</span> <span>Platforms</span> <span>/</span> <span>iPhoneOS</span> <span>.</span> <span>platform</span> <span>/</span> <span>Developer</span> </span> <span><br> </span> <span><span>export</span> <span> SDK</span> <span>=</span> <span>$</span> <span>{</span> <span>DEV</span> <span>}/</span> <span>SDKs</span> <span>/</span> <span>iPhoneOS2</span> <span>.</span> <span>1.sdk</span> </span> <span><br> <br> <span>pushd $</span> </span> <span><span>{</span> <span>DEV</span> <span>}/</span> <span>usr</span> <span>/</span> </span> <span><span>bin<br> ln </span> <span>-</span> <span>s arm</span> <span>-</span> <span>apple</span> <span>-</span> <span>darwin9</span> <span>-</span> <span>gcc</span> <span>-</span> <span>4.0</span> <span>.</span> <span>1</span> <span> arm</span> <span>-</span> <span>apple</span> <span>-</span> <span>darwin9</span> <span>-</span> </span> <span><span>gcc<br> ln </span> <span>-</span> <span>s arm</span> <span>-</span> <span>apple</span> <span>-</span> <span>darwin9</span> <span>-</span> <span>g</span> <span>++-</span> <span>4.0</span> <span>.</span> <span>1</span> <span> arm</span> <span>-</span> <span>apple</span> <span>-</span> <span>darwin9</span> <span>-</span> <span>g</span> <span>++</span> </span> <span><br> <span>ln </span> </span> <span><span>-</span> <span>s ranlib arm</span> <span>-</span> <span>apple</span> <span>-</span> <span>darwin9</span> <span>-</span> </span> <span><span>ranlib<br> popd<br> <br> </span> <span>export</span> <span> PATH</span> <span>=</span> <span>$</span> <span>{</span> <span>DEV</span> <span>}/</span> <span>usr</span> <span>/</span> <span>bin</span> <span>:</span> <span>$</span> <span>{</span> <span>PATH</span> <span>}</span> </span> <span><br> <br> </span> <span><span>export</span> <span> CFLAGS</span> <span>=</span> <span>"-O2 -arch armv6 -isysroot ${SDK}"</span> </span> <span><br> <br> </span> <span><span>export</span> <span> LDFLAGS</span> <span>=</span> <span>"-O2 -arch armv6 -isysroot ${SDK}"</span> </span> <span><br> <br> </span> <span><span>export</span> <span> CPP</span> <span>=</span> <span>"${DEV}/usr/bin/cpp"</span> </span> <span><br> <br> </span> <span><span>./</span> <span>aconfigure </span> <span>--</span> <span>host</span> <span>=</span> <span>arm</span> <span>-</span> <span>apple</span> <span>-</span> <span>darwin9 </span> <span>--</span> <span>disable</span> <span>-</span> <span>speex</span> <span>-</span> <span>aec </span> <span>/</span> </span> <span><br> <span> </span> </span> <span><span>--</span> <span>disable</span> <span>-</span> <span>speex</span> <span>-</span> <span>codec </span> <span>--</span> <span>disable</span> <span>-</span> <span>l16</span> <span>-</span> <span>codec </span> <span>--</span> <span>disable</span> <span>-</span> <span>g722</span> <span>-</span> <span>codec </span> <span>/</span> </span> <span><br> <span> </span> </span> <span><span>--</span> <span>disable</span> <span>-</span> <span>ilbc</span> <span>-</span> <span>codec </span> <span>--</span> <span>disable</span> <span>-</span> <span>ssl </span> <span>--</span> <span>disable</span> <span>-</span> </span> <span><span>sound<br> <br> make dep<br> make</span> </span>
We must not forget to change access right to allow execution. We can run compile.sh after some minutes pjsip is compiled.
Siphon Compilation
Getting siphon source code
Get Siphon from subversion repository:
<span><span>svn checkout http</span> <span>:</span> <span>//siphon.googlecode.com/svn/trunk/ siphon-read-only</span> </span>
Installation pjsip
Create directory to install pjsip in Siphon:
<span><span>mkdir </span> <span>-</span> <span>p pjsip</span> <span>/</span> </span> <span><span>include<br> mkdir </span> <span>-</span> <span>p pjsip</span> <span>/</span> <span>lib</span> </span>
Put these pjsip include directories in the pjsip/include path:
- pjlib/include
- pjlib-util/include
- pjmedia/include
- pjnath/include
- pjsip/include
Put these pjsip library directories in the pjsip/lib path:
- pjlib/lib
- pjlib-util/lib
- pjmedia/lib
- pjnath/lib
- pjsip/lib
- third_party/lib
Compilation
<span><span>pushd settings<br> make<br> popd<br> pushd src<br> make<br> popd</span> </span>
For installation read the Manual .
ManualInstallation
Manual installation instructions.
Manual Installation
The preferred method of installing Siphon is through the AppTapp Installer . However, if you are unable to or prefer not to use the Installer, you can follow the steps below to install Siphon manually.
NOTE: Siphon requires firmware version 1.1.X.
Manual Installation after compilation
- Compile Siphon.
The three directories are in 'dist' directory.
- Copy Siphon.app into /Applications or /Widgets on your device. You may see some error messages during this process, are there are several symbolic links in here that the Installer source would normally deal with. You can safely ignore these errors as we will copy the files manually.
- Copy SiphonSettings.bundle into /System/Library/PreferenceBundles/SiphonSettings.bundle on your device.
- Copy SpringBoard.app into /System/Library/CoreServices/SpringBoard.app on your device.
Manual Installation after download
- Download the last version on this page .
- Unzip downloaded file in /Applications or /Widgets on your device. You may see some error messages during this process, are there are several symbolic links in here that the Installer source would normally deal with. You can safely ignore these errors as we will copy the files manually.
- Copy SiphonSettings.bundle into /System/Library/PreferenceBundles/SiphonSettings.bundle on your device.
- Copy SpringBoard.app into /System/Library/CoreServices/SpringBoard.app on your device.
Last operations
Next, run the following command to complete the installation:
<span><span>/Applications/</span> <span>Siphon</span> <span>.</span> <span>app</span> <span>/</span> <span>Siphon</span> <span>--</span> <span>installPrefBundle</span> </span>
Finally, restart the SpringBoard:
<span><span>killall </span> <span>SpringBoard</span> </span>

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック









はじめに: このウェブサイトでは、Mac のキーボードがパスワードを入力しても反応しないことに関する関連コンテンツを紹介しますので、お役に立てれば幸いです。 Apple Mac システムでパスワードを入力できない問題を解決するにはどうすればよいですか? このキーボードを他のコンピュータに接続して、正常に動作するかどうかを確認することもできます。別のコンピューターでも同じ問題が発生する場合は、キーボード自体に問題がある可能性が高くなります。キーボードを交換するか修理することを検討してください。 Mac コンピュータで初めて Alipay にログインすると、ログイン インターフェイスが表示され、パスワードを入力できません。パスワード入力フィールドには「コントロールをインストールするにはここをクリックしてください」と表示されるため、Alipay ログインにはセキュリティ コントロールのインストールが必要です。セキュリティ制御により、入力した情報 (金額、パスワードなど) を暗号化して保護し、アカウントのセキュリティを向上させることができます。ネクタイ

多くの Mac ユーザーはデバイスのデフォルト名をそのまま使用する傾向があり、それを変更することを決して考えないかもしれません。多くの人は、「Johnny's MacBook Air」または単に「iMac」など、初期設定の名前をそのまま使用することを選択します。 Mac の名前を変更する方法を学ぶことは、特に複数のデバイスを持っている場合に、デバイスをすばやく区別して管理するのに役立つため、非常に便利なスキルです。次に、macOS システムでコンピューター名、ホスト名、Bonjour 名 (ローカルホスト名) を変更する方法を段階的に説明します。 Mac 名を変更する必要があるのはなぜですか? Mac の名前を変更すると、あなたの個性が表れるだけでなく、ユーザー エクスペリエンスの向上にも役立ちます。 Mac をカスタマイズする: デフォルトの名前は好みに合わない場合がありますので、お好みの名前に変更してください。

はじめに: 今日、このサイトでは、Mac への pkg ファイルのインストールに関する関連コンテンツを共有します。現在直面している問題を解決できる場合は、このサイトをフォローして今すぐ開始することを忘れないでください。以前のバージョンの macos pkg をインストールしてオペレーティング システムをアップグレードすることはできません。ラップトップが古いオペレーティング システム バージョンを使用している場合は、最新のオペレーティング システム バージョンにアップグレードすることをお勧めします。古いバージョンでは最新の macOS システムのインストールがサポートされていない可能性があるためです。ディスクユーティリティで「消去」を選択し、フォーマットでMacos拡張子を選択し、暗号化オプションをチェックせず、apfsフォーマットを選択せず、最後に「消去」ボタンをクリックすると、消去を完了できない問題が解決されます。 macOSのインストール。アプリケーションのアイコンを「App」で始まるファイルにドラッグします。

最近、一部の友人が、音声メッセージを自動的にテキストに変換するための WeChat Mac の設定方法について編集者に相談しました。以下は、音声メッセージを自動的にテキストに変換するための WeChat Mac の設定方法です。必要な友人は来て、詳細を学ぶことができます。ステップ 1: まず、Mac バージョンの WeChat を開きます。図に示すように: ステップ 2: 次に、「設定」をクリックします。図に示すように: ステップ 3: 次に、「一般」をクリックします。図に示すように: ステップ 4: 次に、「チャットの音声メッセージを自動的にテキストに変換する」オプションをチェックします。図に示すように: ステップ 5: 最後に、ウィンドウを閉じます。図に示すように:

はじめに: この記事では、Mac 設定ファイルが有効にならないことに関する関連コンテンツを紹介します。 Macで環境変数が有効にならない問題の解決策. Macのシステムで環境変数を設定した後、現在の端末でのみ有効であり、端末を切り替えると無効になることがわかりました。問い合わせた結果、Mac システムには Ultimate Shell-zsh というツールがプリインストールされており、環境変数の読み取りを .zshrc ファイルに設定する必要があることがわかりました。 2. 構成ファイルを有効にするには、上記の構成を .zshrc に追加するだけです。上記の設定を行わないと、~/.bash_profile をソースするたびにのみ有効になることがわかります。次回、z を再度開きます。

デフォルトでは、iPhone はカメラから HEIC 形式で写真を取得します。 HEIC は High Efficiency Image Container の略で、PNG や JPG ファイルよりも多くのピクセル データを保持できるため、他の形式に比べて iPhone ストレージ上の占有スペースが大幅に少なくなります。これらのファイルは iPhone で最もよく機能しますが、Apple 以外のデバイスと共有すると画像がぼやけたり粗くなったりすることが多いため、インターネットではあまり受け入れられていません。 HEIC 画像が他のデバイスと互換性があることを確認するには、画像を JPG 形式に変換する必要がある場合があります。この記事では、MacでHEIC画像をJPGに変換する方法を紹介します。 MacでHEIC写真をJPGに変換する方法【3つの方法】

はじめに: vmmac 仮想マシンの全画面表示について多くの友人から質問がありました。この記事では、参考のために詳細な回答を提供します。お役に立てば幸いです。見てみましょう! Mac 仮想マシン オーバーウォッチに画面上の理由はありません: グラフィックス カードの互換性の問題です。以前はオーバーウォッチを正常に実行していたのに、現在は黒い画面が表示されている場合は、グラフィックス ドライバーの欠陥が原因である可能性があります。解決策: グラフィック カードがゲーム要件をサポートしているかどうかを確認します。グラフィックカードドライバーを更新します。 2 番目の可能性を排除するために、別の電源を使用してみてください。マザーボードに異常がないか、コンデンサの膨れ(故障の可能性あり)がないか、マザーボード表面に明らかな損傷がないか、回路が遮断されていないかなどを確認してください。マザーボードを修理ステーションに送って検査を受けることをお勧めしますが、状況が許せば、別のマザーボードと交換することを検討できます。

はじめに: この記事では、Mac の圧縮ファイルが開けない場合の関連コンテンツをご紹介しますので、お役に立てれば幸いです。 Mac で解凍した rar ファイルが開けないのはなぜですか? Mac 解凍ソフトをお持ちでないので、皆さんに Mac 版の解凍ソフトをお勧めします。これは、360 Compression などの Windows で一般的に使用される圧縮ソフトウェアに似ています。ファイルを開いて簡単に解凍するだけです。 RAR ファイルを開けない Apple Mac コンピュータの操作手順は次のとおりです。 まず、RAR ファイル解凍アプリケーションをインストールします。インストールを完了するには、Apple ID アカウントとパスワードを入力する必要があります。 2 番目のステップでは、インストールが完了した後、Mac デスクトップに戻り、RAR ファイルをダブルクリックしてファイルの内容を開いて解凍します。 3. 電源を入れます
