検索
ホームページコンピューターのチュートリアルコンピュータ知識ubuntuサーバー上で異なるシステムの実行可能プログラムをクロスコンパイルするにはどうすればよいですか?

多くの C プログラマーは「サーバーの gcc バージョンが異なる場合はどうなるのですか? 相互に影響を及ぼしますか?」という疑問を抱いたことがあると思います。

答えは「はい」です。通常、gcc を使用してソース ファイルをコンパイルする場合、この gcc はシステム環境変数 PATH で最初に見つかる gcc です。

異なるシステム用にプログラムをクロスコンパイルしたい場合はどうすればよいでしょうか?これには、複数のコンパイル ツール チェーンのセットが必要であり、対応するツール チェーンを使用してターゲット システムのプログラムをコンパイルします。

デフォルトのパス

  • コンパイラ パス: 通常は /usr/bin ディレクトリに配置されます。
  • ヘッダー ファイル パス: システム レベルのヘッダー ファイルは通常、/usr/include に配置され、標準ライブラリのヘッダー ファイルは通常、/usr/local/include に配置されます。
  • ライブラリ パス: システムの動的ライブラリは通常、/usr/lib および /lib に配置され、静的ライブラリは通常、ここまたは /usr/local/lib に配置されます。 ###。

パスを手動で設定する

コンパイラ パス

/usr/bin はすでに PATH 環境変数に含まれているはずなので、通常はコンパイラ パスの環境変数を変更する必要はありません。別のコンパイラを使用する必要がある場合は、その完全パスを直接使用するか、PATH 環境変数を変更してコンパイラを指すようにすることができます。例: リーリー

これにより、指定したパスが既存の

PATH の前に追加され、システムは最初にここで実行可能ファイルを検索します。

クロスコンパイラのセットアップ

Marvell が提供するツール チェーンを使用して、Ubuntu 上で ARM アーキテクチャ プログラムをコンパイルする必要があります。このツールチェーンには、ARM アーキテクチャ プログラムをクロスコンパイルするための gcc およびその他のツールが含まれており、すべて同じプレフィックスが付いています。

リーリー

ubuntuサーバー上で異なるシステムの実行可能プログラムをクロスコンパイルするにはどうすればよいですか?

実行可能プログラムのシステム アーキテクチャを表示するubuntuサーバー上で異なるシステムの実行可能プログラムをクロスコンパイルするにはどうすればよいですか?

次に、これら 2 つのプログラムをそれぞれ実行します。

ubuntuサーバー上で異なるシステムの実行可能プログラムをクロスコンパイルするにはどうすればよいですか?

現在のシステム アーキテクチャ: uname -m

ubuntuサーバー上で異なるシステムの実行可能プログラムをクロスコンパイルするにはどうすればよいですか?

通常、

gcc はシステムのデフォルトの PATH パスに従い、コンパイルに必要な対応するツール コンポーネント を見つけます。

したがって、異なるアーキテクチャでプログラムをコンパイルしたい場合は、複数のツール チェーンのセットが必要です。

これらのツール チェーンのパスをシステム環境変数 PATH に追加すると、競合が発生します ,前のパスで同じ名前のツールを使用します。たとえば、PATH は次のように設定されます: リーリー

/path/arm_toolchain/bin と /usr/bin、/path/x86_toolchain/bin にはすべて gcc という名前のツールがあります。

その後、前のものは次の を上書きし、各実行が優先されます最も古い一致する gcc ツールを使用します

欠点: 異なるアーキテクチャのコンパイル ツール チェーンを動的に指定することができず、PATH 環境変数を頻繁に変更する必要があります。

改善方法:

ツールチェーンごとに対応する環境変数を指定することで、異なるコンパイラを動的に区別できるようになります。 この方法は、ツール チェーンを一時的に切り替えたり、異なるアーキテクチャでプログラムをコンパイルしたりする場合に適しています。大規模な C プログラムの場合は、コンパイラへのパスを設定ファイルで指定し、make、meson などのビルドを使用してビルドするのが一般的です。ツール。

以上がubuntuサーバー上で異なるシステムの実行可能プログラムをクロスコンパイルするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明
この記事は每日运维で複製されています。侵害がある場合は、admin@php.cn までご連絡ください。
バイオハザード4セーブを見つけてバックアップする方法は?これがガイドです! - ミニトールバイオハザード4セーブを見つけてバックアップする方法は?これがガイドです! - ミニトールApr 14, 2025 am 12:50 AM

バイオハザード4のセーブを見つける方法を疑問に思いますか?バイオハザード4セーブをバックアップする方法は? PHP.CNからのこの投稿は、バイオハザード4セーブをバックアップするための3つの方法を提供します。今、あなたの読書を続けてください。

Windowsでのログイン試行回数を制限する方法Windowsでのログイン試行回数を制限する方法Apr 14, 2025 am 12:49 AM

誰かが多数の重要な組み合わせを入力してコンピューターにアクセスしようとすると、コンピューターは開かれるリスクが高くなります。したがって、ログインの試行回数を制限する必要があります。それをする方法は?このphp.cn投稿を読んでください。

cfgmgr32.dllが見つかりませんか?簡単な方法で問題を簡単に修正しますcfgmgr32.dllが見つかりませんか?簡単な方法で問題を簡単に修正しますApr 14, 2025 am 12:48 AM

cfgmgr32.dllエラーの欠落は、多くの場合、人々をたくさん悩ませ、ウィンドウにさらに深刻な問題を残します。それで、CFGMGR32.DLLに遭遇したときに何をすべきでしょうか? PHP.CN Webサイトのこの投稿では、いくつかの方法がわかります。

修正:ロック画面タイムアウトが機能していません修正:ロック画面タイムアウトが機能していませんApr 14, 2025 am 12:47 AM

Windowsロック画面のタイムアウトが機能していない問題に遭遇したことがありますか?幸いなことに、この投稿では、php.cnからいくつかの実行可能なソリューションがあります。これらの修正を適用すると、この迷惑な問題に効果的に対処できます。

Windows 11 23H2がリリースされます! PCで入手する方法は?Windows 11 23H2がリリースされます! PCで入手する方法は?Apr 14, 2025 am 12:46 AM

Microsoftは、しばらくの間、Windows 11 23H2(Windows 11 2023アップデート)をリリースしています。この更新プログラムをデバイスにインストールしますか?その中の新機能は何ですか?すぐにこの更新を取得する方法は?これで、このphp.cnから情報を取得できます

Windows Defender Windows 10/11をバイパスする方法は? - ミニトールWindows Defender Windows 10/11をバイパスする方法は? - ミニトールApr 14, 2025 am 12:45 AM

Windowsのディフェンダーは、マルウェアやウイルスの攻撃や感染から、デバイス上のコンピューターとファイルを保護できます。ただし、何らかの理由でWindowsのディフェンダーをバイパスする必要がある場合があります。 PHP.CN Webサイトのこの投稿では、3 Wを紹介します

提供されるデータに最適な6つの方法は、PCで間違ったタイプです提供されるデータに最適な6つの方法は、PCで間違ったタイプですApr 14, 2025 am 12:44 AM

ファイルを携帯電話からコンピューターにコピーしたり転送したりしようとすると、データが誤ったエラーメッセージを提供する場合があります。どのように対処するかわからない場合は、PHP.CN Webサイトのこの投稿が役立ちます。

Excelをデフォルト設定に簡単にリセットする方法を発見してくださいExcelをデフォルト設定に簡単にリセットする方法を発見してくださいApr 14, 2025 am 12:43 AM

Microsoft Excelに行った変更を元に戻したいですか?ここでは、PHP.CNソフトウェアに関するこの記事では、最も効果的な方法でWindows 10のデフォルト設定にExcelをリセットする方法を示すことを目指しています。

See all articles

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

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

AI Clothes Remover

AI Clothes Remover

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

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

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

ホットツール

SecLists

SecLists

SecLists は、セキュリティ テスターの究極の相棒です。これは、セキュリティ評価中に頻繁に使用されるさまざまな種類のリストを 1 か所にまとめたものです。 SecLists は、セキュリティ テスターが必要とする可能性のあるすべてのリストを便利に提供することで、セキュリティ テストをより効率的かつ生産的にするのに役立ちます。リストの種類には、ユーザー名、パスワード、URL、ファジング ペイロード、機密データ パターン、Web シェルなどが含まれます。テスターはこのリポジトリを新しいテスト マシンにプルするだけで、必要なあらゆる種類のリストにアクセスできるようになります。

ZendStudio 13.5.1 Mac

ZendStudio 13.5.1 Mac

強力な PHP 統合開発環境

AtomエディタMac版ダウンロード

AtomエディタMac版ダウンロード

最も人気のあるオープンソースエディター

PhpStorm Mac バージョン

PhpStorm Mac バージョン

最新(2018.2.1)のプロフェッショナル向けPHP統合開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

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