我认为是Geany与nanopi M1

时间:2017-10-07 21:05:27

标签: gpio geany nanopi

你好吗?我在Geany中使用Debian jessie在nanopi M1中遇到了一个大问题(至少我不知道如何解决)。

历史如下:

我正在尝试运行nanopi M1附带的一些修改过的演示代码来控制GPIO端口,因此,当我在编译后“编译”程序时,它会显示以下错误:

在函数main中,它说:

/tmp/ccwWOISx.o in function 'main'
......                  undefined reference to 'boardinit'
......                  undefined reference to 'pintoGPIO'
......                  undefined reference to 'openHW'
......                  undefined reference to 'selectHW'
......                  undefined reference to 'readHW'
......                  undefined reference to 'closeHW'
......
......
and about two or tree more errors of the same type "undefined reference" all 
related a functions of the hardware

我正在使用gcc,命令在geany中预先充电,并且是:

编译:

gcc -Wall -c "%f"

构建

gcc -Wall -o "%f" "%e"

所以我认为(如果我已经理解了我在stackoverflow中的其他帖子中的内容)这是一个链接错误,但不知道如何解决它。

之后,我将Build命令修改为:

gcc -Wall -c -o "%f" "%e"

这使得没有错误,但生成的文件现在是“对象代码”类型(这是错误的)因为我需要“可执行”文件(没有扩展名)和终端给出以下消息:

bash: ./Matrix-ir_receiver: cannot execute binary file: Exec format error

我不知道如何解决这个问题,请帮助!

1 个答案:

答案 0 :(得分:0)

正如我所说,这是一个链接器问题,我需要使用-lfahw和-lm选项来构建可执行文件。我认为第一个选项是针对ARM设备的;之后程序运行完美。

相关问题