Linuxを実行しているVMでObjective-Cで書かれたコードを使用するスワップ・プログラムをコンパイルしようとしています(Ubuntu 16.0.4 、Swift 4.0.3)。Linux上でのSwift Objective-Cの相互運用性、エラー: 'Foundation/Foundation.h'ファイルが見つかりません。
コンパイルするとき、私はこのエラーを取得:
fatal error: 'Foundation/Foundation.h' file not found
#import <Foundation/Foundation.h>
^
1 error generated.
同じプログラムは、Mac OS上で完璧に動作
Mac OSで。私は何を試しましたか?
私はスイフト3.1.1に復帰しようとしました(これは以前のスイフト3で動作していたことを覚えています)。
私は問題を広範囲に捜したが、成功しなかった。
私は、Linux上でのObjective-Cランタイムをインストールする方法についての指示に従っなしの成功とのGNUstep(http://www.techotopia.com/index.php/Installing_and_Using_GNUstep_and_Objective-C_on_Linuxを参照)
すべてをインストールしました。
なぜ私はobjective-Cを使用していますか?
(この質問を予期しています)。
私はプログラムからpythonスクリプトを呼び出す必要があります。 PythonにはC用のライブラリがあります。これはCまたはObjective-Cでしか使用できません。実際に
、ライン#import <Foundation/Foundation.h>
をコメントアウトすると、Pythonライブラリをインポートするときにコンパイルが失敗します:Linux上
fatal error: 'Python/Python.h' file not found
#include <Python/Python.h>
^
1 error generated.
あなたの基盤とPythonフレームワークのコピーは、システムヘッダパスにないようです。 –
@JoshCaswell、ありがとうございます。これをどのように確認できますか? – kmn