問題タブ [carthage]
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.
ios - 同じコードを 2 つの方法で呼び出すと、テスト ケースでアーキテクチャの問題が発生する
問題
uint テスト ケースでコード ブロックを直接呼び出しているか、そのコードのラッパーを呼び出しているという奇妙な状況に陥っています。ラッパーの場合、テストはコンパイルされます - 直接呼び出す場合、アーキテクチャの問題が発生します。
誰かが洞察を提供できるかどうか疑問に思っています
概要
SFTPアクションを実行するiOSアプリケーションを作成しており、SFTPを可能にするNMSSHライブラリを使用しています。Carthage経由で含めましたが、すべてうまく機能しています。
私の状況では、SFTP 機能をテストするためにメイン ターゲットにいくつかのコードをまとめました。
プロジェクトコード
https://github.com/jeeftor/compileBug
ソースコード
テストコード
私のテスト ケースでは、3 つの異なる方法で SFTP ロジックを呼び出そうとしました。実際にコンパイルする唯一の方法は、次のように呼び出す場合です。
これらの人のいずれかのコメントを外した場合:
次のエラーが表示されます。
ld: アーキテクチャ x86_64 のフレームワークが見つかりません NMSSH
単体テストをコンパイルして実行しようとすると
私が知る限り、この 2 つの「悪い」呼び出しは、基本的に呼び出しとまったく同じことを行っているため、ここではやや途方に暮れています。どちらも同じコードを呼び出していますが、そのうちの 2 つはコードのコンパイルを許可しません。
ここで私が見逃している明らかなものはありますか?誰かが同様の問題に遭遇しましたか?
ios - carthage を使用して Swift で動的フレームワークを作成する際の問題
こんにちは、この問題の解決に役立つ人はいますか。
私は迅速に動的フレームワークを作成しました。私のフレームワークは、alamofire、xcglogger などのいくつかの外部フレームワークを私のフレームワーク プロジェクトに参照しています。この目的のためにカルタゴを使用しています。
それは完全に機能します。しかし、フレームワークを作成して別のプロジェクトで使用すると、フレームワークでエラーが発生します
必要なモジュールがありません:「Alamofire」、「XCGlogger」
誰でもこれで私を助けることができますか?
カルタゴ 0.16.2 xcode 7.3.1 Swift を使用しています
ios - 別のアプリケーションで動的ライブラリを実行中に必要なモジュールが見つからない
上記は私のカートファイルの構造です。これらすべてのフレームワークを含む動的フレームワークを作成しています。私の動的フレームワークは適切にビルドされました。しかし、アプリ プロジェクトで動的フレームワークを使用すると、次のエラーが発生します。
carthage> build > ios frameworks
プロジェクトにリンクするために何か特別なことをする必要がありますか?
swift - Swift 3 は Carthage と統合された動的フレームワークを壊しますか?
すぐに Apple は Swift の 3 番目のイテレーションをリリースしますが、これは非常にエキサイティングで恐ろしいものです。
以前のバージョンとの下位互換性がないことがわかりました.Swiftの進化リポジトリを調べたところ、i++がサポートされていないなどの構文の変更や、関数のパラメーターの変更などが原因で壊れることがわかりました.
しかし、これは非常に簡単に採用できます。私がもっと恐れているのは、プロジェクト管理がコンパイルされないことです (終了コード 1)。Carthage と統合された動的フレームワークを使用する場合と同様に、特定のビルド パラメーターをターゲットにするか、ブリッジ ヘッダーで objc ライブラリを使用します。
古い構文とは別に、Swift 3 が Carthage フレームワークについて不平を言うかどうかは誰にもわかりませんか? または、上記の段落に記載されている他のすべてのポイントですか?
ios - Carthage からフレームワークをアーカイブ/ビルドできません
私の Objective-C プロジェクトでは SDWebImage フレームワーク ( https://github.com/rs/SDWebImage ) を使用しています。Carthage ( https://github.com/Carthage/Carthage ) を使用してこのフレームワークをインストールしました。しかし、ビルド フェーズで「スクリプトの実行」を構成しようとすると、「インストール時にのみスクリプトを実行する」をチェックしないと、アプリが機能せず、「そのようなファイルやディレクトリはありません」というエラーが表示されます。
「インストール時にのみスクリプトを実行する」をチェックすると、アプリを実行して必要なすべての開発を行うことができますが、アーカイブ時にエラーが発生します。
アプリをアーカイブして Apple に送信しようとすると、「bin/sh: bad interpreter: no such file or directory」というエラーが表示されます。
なぜこうなった?フレームワークをインストールしようとするとき、何が間違っていますか? それを修正することは可能ですか?
ios - 依存関係ごとに異なるカルタゴ オプション?
私はCartfile
別の方法で扱いたい依存関係があります。ある依存関係のオプションで Carthage を実行することは可能ですが、別の依存関係は異なりますか?
たとえば、ここに私のがありますCartfile
:
carthage update --platform iOS
forNVActivityIndicatorView
とを実行できますが、 forをSkyFloatingLabelTextField
使用できますか? Cartfile から依存関係を除外して、代わりにコマンド ラインから直接実行できる場合はどうですか?carthage update --no-build --platform iOS
PermissionScope
swift - CocoaPods と Carthage
Carthage と Cocoapods の両方を使ったプロジェクトがありました。どちらも 1 つの共通の依存関係 (正確には PureLayout) を持っています。奇妙ですが、プロジェクトはクラスの再宣言などに関するエラーなしで正常にコンパイルされます。問題は、なぜそれが機能し、PureLayout のメソッド (Carthage または Cocoapods のメソッド) を呼び出すときに実際に使用される依存関係のバージョンはどれかということです。
ios - Carthage または CocoaPods を使用してフレームワークをリンクできない
CocoaPods と Carthage の両方を使用して、Cocoa Touch Framework にいくつかのアイコンフォント プロジェクトを追加しようとしましたが、取得し続けます。ld: framework not found SomeIconFont
私がやろうとしたこと:
.framework
リンクされたフレームワークとライブラリに最新のものをドラッグ アンド ドロップ- リンク バイナリとライブラリフェーズの前に、ビルド フェーズで宛先フレームワークを含むファイルのコピーを追加しようとしました。
- フレームワークの
carthage copy-frameworks
実行スクリプトを追加しました$(SRCROOT)/Carthage/Build/iOS/SomeIconFont.framework
- プロジェクト レベルとターゲットの両方で、Build Active Architecture OnlyをYesに設定している
- 両方のアーキテクチャは標準です
- プロジェクトとターゲットの両方のフレームワーク検索パス
$(SRCROOT)/Carthage/Build/iOS
を$(PROJECT_DIR)/Carthage/Build/iOS
それぞれに設定しました - クリーニング、DerivedDataのリセットを試みました
私の最後のオプションは、動物の犠牲と水中ハンドスタンドですが、もちろん、Xcode とその数 GB を再インストールするのに次ぐものです。この質問を投稿しているのは、正直なところ、過去 48 時間、この問題に完全に打ちのめされているからです。