問題タブ [swiften]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c++ - iPhone sdk 用の swiften ライブラリのコンパイル
ライブラリの簡単な説明 : ライブラリのリンク
iPhone sdk 用の迅速なライブラリ (つまりhttp://swift.im/git/swift/tag/?id=swift-2.0beta1 )をコンパイルしたい。そのドキュメント フォルダとコンパイル方法を確認しましたが、Windows と Unix のコンパイル手順しか記載されていません (つまり、このページにはコンパイル ファイルへのリンクが含まれていますhttp://swift.im/download/#apt )。しかし、iPhone sdk 用にコンパイルする方法がわかりません。彼らが言及した手順が得られていません。だから、誰でも私を説明できますか?ファイルの 1 つを確認したところ、iPhone 用にコンパイルできるはずであることがわかりました。
彼らが言及したもう1つの質問は、GNU General public license v3の下にあるので、商用アプリケーション、特にアップルが承認したものを使用できますか?
どんな助けでも大歓迎です。ありがとう
android - SCons makery を使用した ARM 組み込み用の Swiften ライブラリのクロスコンパイル
Swiften は XMPP クライアント ライブラリです。私の目的は、Linux を実行する ARM 組み込みターゲット用にビルドすることでした。
SCons の知識がほとんどない状態で、クロスコンパイルを成功させる方法をハッキングしました。2 つの makery ファイルSConscript.boot
とSConstruct
.
私には2つのタスクがありました(どちらも満足に達成できませんでした):
- ツール チェーンをネイティブ コンパイルからクロス コンパイルに正常に切り替える
- OpenSSL ライブラリが正常にリンクされていることを確認します ( swiftimプロジェクトでは提供されません
3rdParty
。フォルダーにインストールしてビルドする必要があります)。
ツール チェーンをネイティブ コンパイルから ARM のクロス コンパイルに切り替える
私の ARM クロス ツール チェーン コンポーネント、gcc、g++、ld などはここにあります。
scons
ネイティブ ツール (通常の場所) の代わりにクロス ツール チェーン (上記の場所から) を使用するように指示する方法が見つかりませんでした/usr/bin
。呼び出し ( ./scons Swiften
) の前に環境変数の完全修飾値を指定すると、CC と CXX は機能しませんでした (推奨されませんが、1 か所で言及されています)。
Scons は、makery に多くのアドホックな変更を加えた後でも、ネイティブツール チェーンのみを選択します。
そのため、ハックとして、ネイティブ ツール チェーンをクロス ツール チェーンを指すように変更する必要がありました。
ARM の最初のコンパイル ブレークは、以下の行をビルド スクリプトのデフォルト部分に追加することで修正されましたSConscript.boot
。
次のコンパイル中断は、OpenSSL ヘッダー ファイルが見つからないことに関係しています。場所の問題を修正するには、以下の行を SConscript.boot に導入する必要がありました。
OpenSSLとの連携
サンプルの Switften プログラムを OpenSSL ライブラリとリンクするには、それらがビルドされた場所からツールチェーン ライブラリの場所に移動libssl.a
し(個別にビルド) する必要がありました。libcrypto.a
ヘルプ
scons の動作を理解していないので、動作させるためにいくつかのハックを行いました。
次のことを手伝ってほしい:
- 他のターゲットと同様に、ARM-embedded と呼ばれる新しいターゲットを導入します。アイフォン、アンドロイドなど
- OpenSSL をビルドに統合するクリーンな方法。
更新 dirkbaechle ごとに、以下のスクリプトを再試行すると動作します
build - scons を使用して Swiften を構築する
http://swift.im/swiften/guide/#Example-EchoBot1の例に従って、swiften ライブラリを使用して単純な XMPP クライアントを構築しようとしています。
上記の例にはファイル Swiften.h が必要です。swiften メーリング リストによると、swiften のビルド時にこのファイルが生成されます。それで、 http://swift.im/git/swift-contrib/tree/Documentation/BuildingOnWindows.txtの指示に従って、Windowsマシンでビルドしようとしました。
Qt と open ssl はオプションであると記載されているので、scons を実行してビルドに直行します。
これは私が得る出力です:
自分のバージョンの Visual Studio を見つけるようにスクリプトを設定するにはどうすればよいですか?
ありがとう、
よろしくお願いします、
c
c++ - Boost を iOS プロジェクトにリンクします。boost::filesystem::detail::utf8_codecvt_facet の vtable
iOS プロジェクト用にSwiftenライブラリをコンパイルできましたが、 Boostライブラリに関連するリンク エラーが発生しています。
これらの手順Boost
に従ってコンパイルしました。リンク中に発生するエラーは次のとおりです。
いくつかのコンパイルパラメーターを含めることを提案する記事をいくつか読みましたが、どのパラメーターまたはどこに配置すればよいかわかりません。私も解決策なしでこのスレッドにたどり着きました。他の誰かがこの問題に直面しましたか? Swiften for iOS のコンパイルと実行に成功した人はいますか? 正しい方向へのヒントは大歓迎です。
更新 1
ライブラリはオブジェクトを共有しているようfilesystem
で、ビルド中に一方が他方をオーバーライドしていました。最後に、ライブラリ全体をコンパイルすることができましたが、それを使用しようとすると、さらにリンクエラーが発生します:(メインクラスでオブジェクトを宣言すると、このエラーが発生します:program_options
utf8_codecvt_facet
boost
Swiften
JID
c++ - Boost.ASIO で動作する XMPP ライブラリ
Boost.ASIO を使用して作成したプログラムがあります。一緒に使用できる C++ XMPP クライアント ライブラリを探しています。つまり、すでに Boost.ASIO を使用していて、内部の io_service インスタンスを公開するライブラリ、または独自の既存の io_service インスタンスで初期化できるライブラリを探しています。 io_service で run() を呼び出すだけです。
Swiften ( https://swift.im/swiften.html ) は内部で Boost を使用しているようですが、内部の io_service を取得する方法の例が見つかりません。
ポインターはありますか?