2013-02-27 1 views
0

FFT를 사용하는 C++ 프로그램을 만들었고 FFTW를 사용하기로 결정하기 전에는 제대로 작동했습니다. .def 파일에서 라이브러리를 만들고이를 내 프로젝트에 연결하면 성공적으로 빌드됩니다. 그러나 응용 프로그램을 실행하려고하면 유효한 win32 응용 프로그램이 아니라고 알려줍니다. 생성 된 파일 수익률에 DUMPBIN 실행 :VS2010으로 빌드 된 실행 파일은 유효한 win32 응용 프로그램이 아닙니다. bindump는 DLL이라고 말했습니다.

(편집 참조)

어떤 아이디어 문제가있을 수 있습니다 무엇으로? 실행 파일로 다시 빌드하고 싶습니다.

편집 : 전체 DUMPBIN :

PE signature found 

File Type: DLL 

FILE HEADER VALUES 
      14C machine (x86) 
       7 number of sections 
     512E72CE time date stamp Wed Feb 27 14:55:42 2013 
       0 file pointer to symbol table 
       0 number of symbols 
       E0 size of optional header 
      2102 characteristics 
        Executable 
        32 bit word machine 
        DLL 

OPTIONAL HEADER VALUES 
      10B magiC# (PE32) 
      10.00 linker version 
      1C000 size of code 
      3A000 size of initialized data 
       0 size of uninitialized data 
      1229D entry point (1001229D) @ILT+4760([email protected]) 
      1000 base of code 
      1000 base of data 
     10000000 image base (10000000 to 10069FFF) 
      1000 section alignment 
      200 file alignment 
      5.01 operating system version 
      0.00 image version 
      5.01 subsystem version 
       0 Win32 version 
      6A000 size of image 
      400 size of headers 
      59987 checksum 
       3 subsystem (Windows CUI) 
      140 DLL characteristics 
        Dynamic base 
        NX compatible 
      100000 size of stack reserve 
      1000 size of stack commit 
      100000 size of heap reserve 
      1000 size of heap commit 
       0 loader flags 
       10 number of directories 
      30370 [ 19818] RVA [size] of Export Directory 
      4B000 [  A0] RVA [size] of Import Directory 
      66000 [  1B4] RVA [size] of Resource Directory 
       0 [  0] RVA [size] of Exception Directory 
       0 [  0] RVA [size] of Certificates Directory 
      67000 [ 1EC0] RVA [size] of Base Relocation Directory 
      2D620 [  1C] RVA [size] of Debug Directory 
       0 [  0] RVA [size] of Architecture Directory 
       0 [  0] RVA [size] of Global Pointer Directory 
       0 [  0] RVA [size] of Thread Storage Directory 
       0 [  0] RVA [size] of Load Configuration Directory 
       0 [  0] RVA [size] of Bound Import Directory 
      4E68C [ 35EC] RVA [size] of Import Address Table Directory 
       0 [  0] RVA [size] of Delay Import Directory 
       0 [  0] RVA [size] of COM Descriptor Directory 
       0 [  0] RVA [size] of Reserved Directory 


SECTION HEADER #1 
.textbss name 
    10000 virtual size 
    1000 virtual address (10001000 to 10010FFF) 
     0 size of raw data 
     0 file pointer to raw data 
     0 file pointer to relocation table 
     0 file pointer to line numbers 
     0 number of relocations 
     0 number of line numbers 
E00000A0 flags 
     Code 
     Uninitialized Data 
     Execute Read Write 

SECTION HEADER #2 
    .text name 
    1BE65 virtual size 
    11000 virtual address (10011000 to 1002CE64) 
    1C000 size of raw data 
    400 file pointer to raw data (00000400 to 0001C3FF) 
     0 file pointer to relocation table 
     0 file pointer to line numbers 
     0 number of relocations 
     0 number of line numbers 
60000020 flags 
     Code 
     Execute Read 

SECTION HEADER #3 
    .rdata name 
    1CB88 virtual size 
    2D000 virtual address (1002D000 to 10049B87) 
    1CC00 size of raw data 
    1C400 file pointer to raw data (0001C400 to 00038FFF) 
     0 file pointer to relocation table 
     0 file pointer to line numbers 
     0 number of relocations 
     0 number of line numbers 
40000040 flags 
     Initialized Data 
     Read Only 

    Debug Directories 

     Time Type  Size  RVA Pointer 
    -------- ------ -------- -------- -------- 
    512E72CE cv   7F 0002EA90 1DE90 Format: RSDS, {CC4D0BC3-853A-4 
E8D-97A2-304A29035F04}, 4, C:\...... 

SECTION HEADER #4 
    .data name 
    7AC virtual size 
    4A000 virtual address (1004A000 to 1004A7AB) 
    400 size of raw data 
    39000 file pointer to raw data (00039000 to 000393FF) 
     0 file pointer to relocation table 
     0 file pointer to line numbers 
     0 number of relocations 
     0 number of line numbers 
C0000040 flags 
     Initialized Data 
     Read Write 

SECTION HEADER #5 
    .idata name 
    1A611 virtual size 
    4B000 virtual address (1004B000 to 10065610) 
    1A800 size of raw data 
    39400 file pointer to raw data (00039400 to 00053BFF) 
     0 file pointer to relocation table 
     0 file pointer to line numbers 
     0 number of relocations 
     0 number of line numbers 
C0000040 flags 
     Initialized Data 
     Read Write 

SECTION HEADER #6 
    .rsrc name 
    1B4 virtual size 
    66000 virtual address (10066000 to 100661B3) 
    200 size of raw data 
    53C00 file pointer to raw data (00053C00 to 00053DFF) 
     0 file pointer to relocation table 
     0 file pointer to line numbers 
     0 number of relocations 
     0 number of line numbers 
40000040 flags 
     Initialized Data 
     Read Only 

SECTION HEADER #7 
    .reloc name 
    2593 virtual size 
    67000 virtual address (10067000 to 10069592) 
    2600 size of raw data 
    53E00 file pointer to raw data (00053E00 to 000563FF) 
     0 file pointer to relocation table 
     0 file pointer to line numbers 
     0 number of relocations 
     0 number of line numbers 
42000040 flags 
     Initialized Data 
     Discardable 
     Read Only 

    Summary 

     1000 .data 
     1B000 .idata 
     1D000 .rdata 
     3000 .reloc 
     1000 .rsrc 
     1C000 .text 
     10000 .textbss 
+0

적절한 명령은 dumpbin.exe/headers입니다. 64 비트 프로세스에서 32 비트 DLL을 사용하려고 시도하는 것처럼 보이지만 항상 좋은 결과를 얻을 수는 없습니다. 또는 다른 방법. –

+0

고마워, 나는 덤프 빈 전체를 잡기 위해 그것을 편집했다. 사실 x64 용 .lib 만들기를 시도했지만 컴파일 오류가 발생했습니다. dll은, 다른 한편으로는, x64입니다 ... 그래서 문제가 될 수 있습니다, 나는 x86 것들을 시도합니다 – user2117056

+1

다른 사람이 비슷한 문제가 있다면, 그것을 알아 냈어 : 나는 .exp 파일뿐만 아니라 .lib 파일; .lib 파일 만 연결하고 .dll 파일을 디렉터리에 배치하면 문제가 해결됩니다. – user2117056

답변

0

이 그것을 알아 낸 다른 사람이 비슷한 문제가있는 경우 : 나는 .exp 파일뿐만 아니라 .lib 파일을 링크 한

을; .lib 파일을 연결하고 .dll 파일을 디렉터리에 배치하면 문제가 해결됩니다.

관련 문제