我在Windows计算机上为Pi(raspberry-gcc4.6.3-nosysroot.exe)设置了this工具链,然后按照here的说明进行了sysroot的同步。
我在项目中使用了一个名为WiringPi的库,并且已经确认它在同步的sysroot中:
然后我尝试编译它:
arm-linux-gnueabihf-gcc -Wall -O -c main.c
但是我收到以下错误:
fatal error: wiringPi.h: No such file or directory
我该怎么做才能使编译器找到头文件?我以为同步sysroot的全部目的是使这种工作正常进行?
最佳答案
您必须通过 -I
参数让gcc知道在哪里寻找包含文件。在上述情况下,为-IC:\SysGCC\Raspberry\...\usr\local
。您可能必须添加多个包含路径,具体取决于所需文件的分散位置。您也可以尝试设置gcc的environment variable(s)。
找出正确的包含路径可能有点繁琐(请参见上文:应该是local\
还是local\include\
吗?)。也许您可以在Pi上找到所有默认包含路径的环境设置,然后将其复制到Windows机器上。
编辑:认为我明白了: echo | gcc -v -E -