在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>

Outils d'IA chauds

Undresser.AI Undress
Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover
Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool
Images de déshabillage gratuites

Clothoff.io
Dissolvant de vêtements AI

AI Hentai Generator
Générez AI Hentai gratuitement.

Article chaud

Outils chauds

Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Introduction : Dans cet article, ce site Web vous présentera le contenu pertinent sur le clavier Mac qui ne répond pas lors de la saisie des mots de passe. J'espère que cela vous sera utile, jetons un coup d'œil. Comment résoudre le problème de l'impossibilité de saisir le mot de passe sur le système Apple Mac ? Vous pouvez également essayer de connecter ce clavier à d'autres ordinateurs pour voir s'il fonctionne normalement ? Si le même problème se produit sur un autre ordinateur, il s'agit probablement d'un problème lié au clavier lui-même. Vous pouvez envisager de remplacer le clavier ou de le réparer. La première fois que vous vous connectez à Alipay avec votre ordinateur Mac, vous trouverez l'interface de connexion et ne pourrez pas saisir votre mot de passe. Le champ de saisie du mot de passe affiche : « Veuillez cliquer ici pour installer le contrôle », la connexion Alipay nécessite donc l'installation de contrôles de sécurité. Les contrôles de sécurité peuvent crypter et protéger les informations que vous saisissez (montant, mot de passe, etc.) pour améliorer la sécurité du compte. Cravate

De nombreux utilisateurs de Mac ont tendance à conserver le nom par défaut de leur appareil et n'envisageront peut-être jamais de le modifier. De nombreuses personnes choisissent de conserver le nom de la configuration initiale, comme « Johnny's MacBook Air » ou simplement « iMac ». Apprendre à changer le nom de votre Mac est une compétence très utile, surtout lorsque vous possédez plusieurs appareils, car cela peut vous aider à les distinguer et à les gérer rapidement. Ensuite, nous vous apprendrons étape par étape comment modifier le nom de l'ordinateur, le nom d'hôte et le nom Bonjour (nom d'hôte local) dans le système macOS. Pourquoi devriez-vous changer le nom de votre Mac ? Changer le nom de votre Mac peut non seulement montrer votre personnalité, mais également contribuer à améliorer l'expérience utilisateur : Personnalisez votre Mac : Le nom par défaut n'est peut-être pas à votre goût, remplacez-le par un nom que vous aimez.

Préface : Aujourd'hui, ce site partagera avec vous le contenu pertinent sur l'installation des fichiers pkg sur Mac. Si cela peut résoudre le problème auquel vous êtes actuellement confronté, n'oubliez pas de suivre ce site et de commencer maintenant ! La version précédente de macos pkg ne peut pas être installée pour mettre à niveau le système d'exploitation : Si votre ordinateur portable utilise une ancienne version du système d'exploitation, il est recommandé de passer à la dernière version du système d'exploitation. Parce que les anciennes versions peuvent ne pas prendre en charge l'installation du dernier système macOS. Sélectionnez "Effacer" dans Utilitaire de disque, puis sélectionnez l'extension Macos dans le format, ne cochez pas l'option de cryptage et ne sélectionnez pas le format apfs, et enfin cliquez sur le bouton "Effacer" pour résoudre le problème de l'impossibilité de terminer le Installation MacOS. Faites glisser l'icône de l'application vers le fichier commençant par App

Récemment, certains amis ont demandé à l'éditeur comment configurer WeChat Mac pour convertir automatiquement les messages vocaux en texte ? Voici une méthode pour configurer WeChat Mac pour convertir automatiquement les messages vocaux en texte. Les amis dans le besoin peuvent venir en savoir plus. Étape 1 : Tout d’abord, ouvrez la version Mac de WeChat. Comme le montre l'image : Étape 2 : Ensuite, cliquez sur « Paramètres ». Comme le montre l'image : Étape 3 : Ensuite, cliquez sur « Général ». Comme le montre l'image : Étape 4 : Cochez ensuite l'option « Convertir automatiquement les messages vocaux du chat en texte ». Comme le montre l'image : Étape 5 : Enfin, fermez la fenêtre. Comme le montre l'image :

Introduction : Cet article vous présentera le contenu pertinent sur le fichier de configuration Mac qui ne prend pas effet. J'espère qu'il vous sera utile, jetons un coup d'œil. La solution au problème selon lequel les variables d'environnement ne peuvent pas prendre effet sous Mac. Après avoir configuré les variables d'environnement dans le système Mac, il s'avère qu'elles ne sont efficaces que dans le terminal actuel et deviendront invalides une fois le terminal commuté. Après enquête, il a été constaté que le système Mac est préinstallé avec un outil appelé Ultimate Shell-zsh et que la lecture des variables d'environnement doit être définie dans le fichier .zshrc. 2. Pour que notre fichier de configuration prenne effet, nous ne pouvons ajouter la configuration ci-dessus que dans .zshrc. Si vous ne définissez pas les paramètres ci-dessus, vous constaterez que cela ne prendra effet qu'à chaque fois que vous sourcez ~/.bash_profile, rouvrez z la prochaine fois.

Par défaut, l'iPhone prend les photos de l'appareil photo au format HEIC. HEIC signifie High Efficiency Image Container et peut contenir plus de données de pixels que les fichiers PNG ou JPG, occupant beaucoup moins d'espace sur le stockage de l'iPhone par rapport aux autres formats. Ces fichiers fonctionnent mieux sur les iPhones, mais ne sont pas largement acceptés sur Internet car ils donnent souvent des images floues/granuleuses lorsque vous les partagez avec des appareils non Apple. Pour vous assurer que les images HEIC sont compatibles sur d'autres appareils, vous devrez peut-être les convertir au format JPG. Cet article explique comment convertir des images HEIC en JPG sur Mac. Comment convertir des photos HEIC en JPG sur Mac [3 méthodes]

Préface : De nombreux amis ont posé des questions sur le plein écran de la machine virtuelle vmmac. Cet article vous donnera une réponse détaillée pour votre référence. J'espère qu'il vous sera utile ! Nous allons jeter un coup d'oeil! La machine virtuelle Mac Overwatch n'a aucune raison d'écran : problème de compatibilité de la carte graphique. Si vous utilisiez Overwatch normalement mais que vous avez maintenant un écran noir, cela peut être dû à un pilote graphique défectueux. Solution : Vérifiez si la carte graphique prend en charge les exigences du jeu. Mettez à jour le pilote de la carte graphique. Essayez d'utiliser une alimentation différente pour exclure la deuxième possibilité. Vérifiez s'il y a des anomalies sur la carte mère, par exemple si le condensateur est bombé (peut-être en panne), s'il y a des dommages évidents à la surface de la carte mère, provoquant une interruption du circuit, etc. Il est recommandé d'envoyer la carte mère à une station de réparation pour inspection. Si les conditions le permettent, vous pouvez envisager de la remplacer par une autre.

Introduction : Cet article est là pour vous présenter le contenu connexe sur les fichiers compressés Mac qui ne peuvent pas être ouverts. J'espère qu'il vous sera utile, jetons-y un coup d'œil. Pourquoi ne puis-je pas ouvrir le fichier rar décompressé sur Mac ? Puisque vous n'avez pas de logiciel de décompression Mac, je voudrais recommander à tout le monde une version Mac du logiciel de décompression. Il est similaire aux logiciels de compression couramment utilisés sous Windows, tels que 360 Compression. Ouvrez simplement le fichier et décompressez-le facilement. Les étapes à suivre pour exploiter un fichier RAR qui ne peut pas être ouvert sur un ordinateur Apple Mac sont les suivantes : La première étape consiste à installer l'application de décompression de fichier RAR, et vous devez saisir votre compte Apple ID et votre mot de passe pour terminer l'installation. Dans la deuxième étape, une fois l'installation terminée, revenez au bureau Mac et double-cliquez sur le fichier RAR pour ouvrir et décompresser le contenu du fichier. 3. Mettez sous tension
