那个Embest IDE,为什么编译example里面的一些项目时就出现cygwin1.dll not found的问题,可是cygwin1.dll就在拷贝的文件夹中的一个目录下面?而且我看了Embest的论坛里面有说cygwin和embest IDE最好不要同时安装的问题,而我的环境中没有cygwin,是不是还需要设置什么变量?
问题解决:
将EmbedIDE\Build\xgcc-arm-elf\bin下的cygwin1.dll拷贝至system32目录下,ok了。
测试Examples\arm\thumb,build输出:
--------------------------------------------------------------------------------
arm-elf-gcc -gdwarf -c C:\EmbedIDE\Examples\arm\thumb\bcopy.c -o.\debug\bcopy.o
arm-elf-gcc -gdwarf -c C:\EmbedIDE\Examples\arm\thumb\bits.c -o.\debug\bits.o
arm-elf-gcc -gdwarf -c C:\EmbedIDE\Examples\arm\thumb\divc.c -o.\debug\divc.o
C:/EmbedIDE/Examples/arm/thumb/divc.c:16: warning: redefinition of `uint'
/cygdrive/c/EmbedIDE/Build/xgcc-arm-elf/arm-elf/include/sys/types.h:60: warning: `uint' previously declared here
arm-elf-gcc -gdwarf -c C:\EmbedIDE\Examples\arm\thumb\list.c -o.\debug\list.o
arm-elf-ld -e__main -Ttext 0x02000000 -L..\..\..\Build\xgcc-arm-elf\arm-elf\lib\arm-inter -L..\..\..\build\xgcc-arm-elf\lib\gcc-lib\arm-elf\3.0.2\arm-inter
-o.\debug\divc.elf .\debug\divc.o .\debug\bcopy.o .\debug\bits.o .\debug\list.o -lc -lgcc
Command(s) successfully executed.
cygwin1.dll问题是个经典问题:
--------------------------------------------------------------------------------
cygwin1.dll是cygwin之仿真UNIX POSIX接口(包括命令和API)和win32api接口之间的stick层。通常在执行很UNIX的调用时,一定会访问该DLL。
cygwin1.dll的问题有两类
(1)cannot find cygwin1.dll
(2)_entry_point or _start_ 等函数入口error
其中:
第一个问题的原因是cygwin1.dll没有安装,或安装位置不在cygwin的搜索路径上(参考 cygpath.exe);第二个问题的发生原因通常是多个/类cygwin版本混装的原因。
或许这个帖子对你会有帮助