CCompilerDriver`
CCompilerDriver`

CreateObjectFile

CreateObjectFile[source,name]

Cコード文字列をコンパイルし,オブジェクトファイル name.ext を作成する.

CreateObjectFile[{file},name]

Cソースファイルをコンパイルし,オブジェクトファイル name.ext を作成する.

詳細とオプション

  • CreateObjectFileを使うにはまずNeeds["CCompilerDriver`"]でCCompilerDriverパッケージをロードしなければならない.
  • source が文字列の場合, CreateObjectFileはそれをCコードとして扱う.source が1つまたは複数の文字列のリストの場合は,Cコードを含むファイルのリストとして扱う.
  • CreateObjectFileはCコンパイラを見付けることができないときは,メッセージを生成し,$Failedを返す.
  • オブジェクトファイルに与えられる拡張子は,それが作成されたプラットフォームに依存する.
  • 以下のオプションが使える:
  • "CleanIntermediate"Automatic一時ファイルを削除するかどうか
    "CompileOptions"""コンパイラに渡すオプション
    "Compiler"Automatic使用するコンパイラ
    "CompilerInstallation"Automaticコンパイラソフトウェアの場所
    "CompilerName"Automaticどのコンパイルコマンドを使うか
    "CreateBinary"Trueオブジェクトファイルを作るかどうか
    "Debug"Falseデバッグ情報を使ってコンパイルし,中間出力は削除せず,コンパイルコマンドと出力を表示する
    "Defines"{}ビルドで使用するCプリプロセッサの定義
    "IncludeDirectories"{}includeパスに加えるディレクトリ
    "Language"Automaticソースコードの言語(自動検出を利用するのではなく,ソースがCまたはC++であることを前提とするのに使うことができる)
    "PostCompileCommands"""コンパイルの後に実行するシェルコマンド
    "PreCompileCommands"""コンパイルの前に実行するシェルコマンド
    "ShellCommandFunction"Noneコンパイルで使用するシェルコマンドで呼び出す関数
    "ShellOutputFunction"Noneコンパイルコマンドの実行によるシェル出力で呼び出す関数
    "SystemCompileOptions"{}"CompileOptions"の前にコンパイラに渡すオプション
    "SystemIncludeDirectories"AutomaticWolfram言語ヘッダファイルを置くディレクトリ
    "TargetDirectory"Automatic実行ファイルが作られるディレクトリ
    "TargetSystemID"$SystemIDどのシステム用の出力を生成するか
    "TransferProtocolLibrary"Automatic使用するリンクライブラリ(WSTPまたはMathLink)
    "WorkingDirectory"Automatic一時ファイルを生成するためのディレクトリ

例題

  (1)

まずCCompilerDriverパッケージをロードする:

C関数を定義し,それをオブジェクトファイルにコンパイルする:

オブジェクトファイルを使用するmainを持つファイルをインクルードし、それらすべてを実行可能ファイルにコンパイルする:

およびで実行ファイルを実行する:

Wolfram言語で計算したものと結果を比較する:

Wolfram Research (2010), CreateObjectFile, Wolfram言語関数, https://reference.wolfram.com/language/CCompilerDriver/ref/CreateObjectFile.html.

テキスト

Wolfram Research (2010), CreateObjectFile, Wolfram言語関数, https://reference.wolfram.com/language/CCompilerDriver/ref/CreateObjectFile.html.

CMS

Wolfram Language. 2010. "CreateObjectFile." Wolfram Language & System Documentation Center. Wolfram Research. https://reference.wolfram.com/language/CCompilerDriver/ref/CreateObjectFile.html.

APA

Wolfram Language. (2010). CreateObjectFile. Wolfram Language & System Documentation Center. Retrieved from https://reference.wolfram.com/language/CCompilerDriver/ref/CreateObjectFile.html

BibTeX

@misc{reference.wolfram_2024_createobjectfile, author="Wolfram Research", title="{CreateObjectFile}", year="2010", howpublished="\url{https://reference.wolfram.com/language/CCompilerDriver/ref/CreateObjectFile.html}", note=[Accessed: 05-November-2024 ]}

BibLaTeX

@online{reference.wolfram_2024_createobjectfile, organization={Wolfram Research}, title={CreateObjectFile}, year={2010}, url={https://reference.wolfram.com/language/CCompilerDriver/ref/CreateObjectFile.html}, note=[Accessed: 05-November-2024 ]}