如何为C、linux安装此库(最好在代码块中使用,但如果不是,则您可以这样做)

如何为C、linux安装此库(最好在代码块中使用,但如果不是,则您可以这样做),c,codeblocks,linux-mint,firmata,C,Codeblocks,Linux Mint,Firmata,我正在尝试在LinuxMint上安装它,但是我不知道如何安装它来使用。我已经下载了这些文件,并在代码块中的“项目”中包含了头文件和源文件,但它没有编译,不断地进入文件中越来越多的未找到的包含。就我个人而言,我总是发现在windows/linux上使用或安装github项目/库文件夹非常困难。如果这是安装这些库的通用方法,我该如何做 错误: main.c:(.text+0x1b): undefined reference to `firmata_new' /usr/bin/ld: main.c:(

我正在尝试在LinuxMint上安装它,但是我不知道如何安装它来使用。我已经下载了这些文件,并在代码块中的“项目”中包含了头文件和源文件,但它没有编译,不断地进入文件中越来越多的未找到的包含。就我个人而言,我总是发现在windows/linux上使用或安装github项目/库文件夹非常困难。如果这是安装这些库的通用方法,我该如何做

错误:

main.c:(.text+0x1b): undefined reference to `firmata_new'
/usr/bin/ld: main.c:(.text+0x2d): undefined reference to `firmata_pull'
/usr/bin/ld: main.c:(.text+0x51): undefined reference to `firmata_pinMode'
/usr/bin/ld: main.c:(.text+0x86): undefined reference to `firmata_digitalWrite'
/usr/bin/ld: main.c:(.text+0x9e): undefined reference to `firmata_digitalWrite'

FirmataC项目附带了一个
Makefile
,它允许您构建库。为此,请克隆项目并在项目目录中运行
make
。然后,您可以在编译时通过运行
gcc main.c-L-I/includes-lfirmatac-o main
链接到此库,其中`是您克隆FirmataC项目的路径


还值得注意的是,许多
Makefile
s(但不是这一个)将提供
makeinstall
命令,允许您在系统级别安装库。如果您使用的是一个允许它的库,那么运行
makeinstall
可以简单地执行
gcc main.c-l-omain

它不会编译。显示您所做的工作以及确切的错误。请添加您在尝试编译project.gcc main.c-o main时使用的命令行。您可能还想提及
make install
,它安装到标准化的include目录,之后命令行
gcc main.c-lfirmatac-o main
就足够了。@nanofarad,这个库实际上没有在它们的makefile中提供安装目标,但我肯定会添加它作为其他库的注释。谢谢!这很有效。只是一个附带的问题,当运行
makeinstall
时,如果它在系统级安装它,这是否意味着在
新项目中
在code::blocks中,我不必做任何包含或链接器的工作,
#include
将识别
firmatac.h
我从未使用过code::blocks,但是我猜您仍然需要将
-l
添加到编译器标志中。IDE可能会自动完成这项工作,但我不确定这一点。我发现了一件奇怪的事情。一小段代码可以正常工作,几秒钟后就会停止工作。这是一个简单的“每秒钟打开和关闭LED灯”。程序运行了几个循环,然后就停止了工作