ARM GCC与Windows 8.1上的Cygwin:致命错误:无输入文件

2skhul33  于 2022-12-17  发布在  Windows
关注(0)|答案(4)|浏览(382)

我是Linux和构建系统的新手,我正试图将代码库从Linux转移到Windows。我在构建方面遇到了一些问题。
我已经安装了

当我构建我的应用程序时,我收到以下错误:

arm-none-eabi-gcc.exe: error:
/cygdrive/d/developments/RIOT/examples/ipc_pingpong/main.c: No such file or directory
arm-none-eabi-gcc.exe: fatal error: no input files
compilation terminated.

这看起来像是cygwin(cygdriver)和windows之间的路径问题。我也将CYGPATH设置为c:\cygwin64\bin\cygpath.exe,但结果是相同的。
为什么gcc编译器看不到我的文件?
问候。
穆拉特

yi0zb3m4

yi0zb3m41#

此时https://launchpad.net/gcc-arm-embedded的arm-none-eabi工具链不支持从Cygwin cmake/make调用,因为它不理解Cygwin风格的绝对路径规范。据说它可以使用只包含相对路径的makefile,但是cmake生成的makefile包含绝对路径。
参见https://bugs.launchpad.net/gcc-arm-embedded/+bug/1282943

klr1opcd

klr1opcd2#

检查命令的输出

which gcc

如果您可以找到gcc文件的路径,则表示您没有问题。如果您无法找到,请修改env变量PATH,包括gcc的路径,如下所示。如果gcc文件的完整路径为$/gcc,则必须更正$PATH,如下所示

$PATH:$GCC_PATH

$PATH可以在主目录的.profile文件中定义。

44u64gxh

44u64gxh3#

我尝试了MinGW而不是Cygwin,问题解决了。
以下链接对MinGW设置非常有用:http://www.jann.cc/2013/10/10/embedded_development_with_open_source_tools_on_windows.html
谢谢穆拉特

tgabmvqs

tgabmvqs4#

我今天遇到了同样的问题-a我找到了一种方法,可以说服非cygwin应用程序使用windows符号链接将c:/cygdrive/c/视为指向我的/cygdrive/c文件夹的链接:
(Run cmd作为管理员)

mkdir c:\cygdrive
cd c:\cygdrive
mklink /d c c:\

参见https://cygwin.com/cygwin-ug-net/using-cygwinenv.html CYGWIN环境变量

export CYGWIN=winsymlinks:native
cd c:/cygdrive/c
ln -s c:/VSARM vsarm

相关问题