2013-06-01 3 views
0

Windows 7 (64 비트)에서 CodeBlocks 12.11을 만들고 있습니다. 저는 C로 프로그래밍 중이며 라이브러리를 사용하고 있습니다 : libsndfile (http://www.mega-nerd.com/libsndfile/api.html) .wav를 쉽게 읽고 double 배열로 변환합니다.sndfile.h C CodeBlocks Windows 7

libsndfile (Windows 64 비트 용)의 마법사를 실행하고 Codeblocks의 컴파일러 설정에서 컴파일러 및 링커의 검색 디렉토리를 추가했습니다.

"정의되지 않은 참조 sf_open_fd하는"

이 여기에 코드입니다 : 내가 프로그램을 컴파일 할 때, 유일한 오류가 있습니다

#include <stdio.h> 
#include <stdlib.h> 
#include <sndfile.h> 

int main (int argc, char *argv[]) { 

    FILE* wavf; 
    SF_INFO info; 
    char* name = "example.wav"; 
    wavf = fopen(name, "r"); 
    SNDFILE* source = sf_open_fd(fileno(wavf), SFM_READ, &info, 1); 
    . 
    . 
    . 
} 

어떤 아이디어? 고맙습니다!

답변

0
  1. 라이브러리와 응용 프로그램이 동일한 아키텍처 (예 : x64)를 사용하는지 확인하십시오.
  2. 라이브러리가 앱에 연결되어 있는지 확인하십시오.
  3. 응용 프로그램과 라이브러리가 c 컴파일러를 사용하여 컴파일되었는지 확인하십시오.
-1

당신은 사운드 파일을 라이브러리와 링크해야합니다

방법이 게시물에서이 자세히 설명 할 : C 코드는 C를 연결하는 ++ 코드 : How do I link to a library with Code::Blocks?

는 실패? 아시다시피 C++은 C에 대해 다른 개체 코드 명명 체계를 사용합니다. 따라서이 코드를 찾지 못한 이유 일 수 있습니다.