我在Visual Stuio 2012 Express中有一个项目,我希望包含一个静态库,使用来自gcc
的{{1}}编译。我在项目的项目选项中包含了库。
无效。接下来,我尝试使用模型最小库。
test.c的
MinGW
CMD:
int foo(){return 5;}
objdump的:
gcc -c test.c
ar rcs libtest.a test.o
但是VS2010仍然会返回相同的错误:
C:\ARM_Workpsace - Legacy\HardwareEmulation\build>objdump -t test.o
test.o: file format pe-i386
SYMBOL TABLE:
[ 0](sec -2)(fl 0x00)(ty 0)(scl 103) (nx 1) 0x00000000 test.c
File
[ 2](sec 1)(fl 0x00)(ty 20)(scl 2) (nx 1) 0x00000000 _testfun2
AUX tagndx 0 ttlsiz 0x0 lnnos 0 next 0
[ 4](sec 1)(fl 0x00)(ty 0)(scl 3) (nx 1) 0x00000000 .text
AUX scnlen 0xa nreloc 0 nlnno 0
[ 6](sec 2)(fl 0x00)(ty 0)(scl 3) (nx 1) 0x00000000 .data
AUX scnlen 0x0 nreloc 0 nlnno 0
[ 8](sec 3)(fl 0x00)(ty 0)(scl 3) (nx 1) 0x00000000 .bss
AUX scnlen 0x0 nreloc 0 nlnno 0
[ 10](sec 4)(fl 0x00)(ty 0)(scl 3) (nx 1) 0x00000000 .rdata$zzz
AUX scnlen 0x11 nreloc 0 nlnno 0
[ 12](sec 5)(fl 0x00)(ty 0)(scl 3) (nx 1) 0x00000000 .eh_frame
AUX scnlen 0x38 nreloc 1 nlnno 0
答案 0 :(得分:1)
MinGW有关于在Visual Studio项目中使用MinGW库的说明:
http://www.mingw.org/wiki/MSVC_and_MinGW_DLLs
由于不同编译器提供的库不一定兼容的原因,请参阅:
http://www.mingw.org/wiki/Interoperability_of_Libraries_Created_by_Different_Compiler_Brands