web-dev-qa-db-ja.com

VisualStudioでサードパーティライブラリをコンパイルしてリンクする

私はCプログラミングにかなり慣れておらず、これまでVisualStudioやサードパーティのライブラリを使用したことがありません。 FMODで簡単なことをしようとしていますが、fmodvclibfmod.h、そしてもちろんfmod.dllをリンクする必要があります。

fmodex_vc.libを追加の依存関係に入れ、インクルードディレクトリとライブラリディレクトリの低レベルライブラリへのパス、および追加のインクルードライブラリを追加しましたが、ビルドすると次のようになります。

"cannot open source file "fmod.h"
identifier "FSOUND_SAMPLE" is undefined
Cannot open include file: 'fmod.h': No such file or directory

しかし、さらに奇妙なのは:

cannot open source file "stdio.h"

コードは次のとおりです。

#include "fmod.h"
#include <stdio.h>

FSOUND_SAMPLE* handle;

int main(void)
{
    int input;

    FSOUND_Init(44100, 32, 0);

    handle = FSOUND_Sample_Load(0, "test.ogg", 0, 0, 0);
    FSOUND_PlaySound(0, handle);

    while (input != 0)
    {
        scanf_s("&d", &input);
    }

    FSOUND_Sample_Free(handle);
    FSOUND_Close();
}

どんな助けでもいただければ幸いです!

9
user5840403

サードパーティのライブラリとリンクするには、通常、次の3つのことを行う必要があります。

1。インクルードディレクトリを追加する必要があります。

Project > Properties > C/C++->General > Additional Include Directories

[編集]をクリックして、ファイル「fmod.h」が配置されているディレクトリへのパスを入力します。

2。* .libファイルに対してリンクする必要があります。

Project > Properties > Linker > General > Additional Library Directoriesで、[編集]をクリックして、ライブラリファイルへのパスを入力します。

Project > Properties > Linker > Input > Additional Dependenciesで、[編集]をクリックし、リンク先のライブラリのファイル名を追加します(この場合、これは「fmodvc.lib」である可能性が高いです)。

。プロジェクトディレクトリに* .dllを指定する必要があります

プログラムが正常に実行されるためには、実行時に*.dllファイルを見つける必要があります。 PATH変数によって参照されるフォルダー、またはプロセスのPWDに配置できます。これは、右のあなたの*.vcxprojファイルの横になります。

静的にリンクしている場合は、手順3をスキップできます。動的にdllファイルをロードしている場合は、手順2をスキップできます。

21
EGOrecords