什么是 cflags?

什么是 cflags?

我对 Gentoo 有一些经验,所以我知道 CFLAGS 的编译器含义,但是当我尝试配置https://github.com/OpenSC/pam_pkcs11

# ./bootstrap&&./configure&&make clean&&make&&make install
...
checking for winscard.h... no
configure: error: winscard.h not found, install pcsc-lite, or use PCSC_CFLAGS=... ./configure

我确实有 pcsc(repo 版本):

# dpkg -l pcscd
Desired=Unknown/Install/Remove/Purge/Hold
| Status=Not/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aWait/Trig-pend
|/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad)
||/ Name                                   Version                  Architecture             Description
+++-======================================-========================-========================-==================================================================================
ii  pcscd                                  1.8.10-1ubuntu1          amd64                    Middleware to access a smart card using PC/SC (daemon side)

不过我不想安装 pcsc_lite,因为我在让智能卡读卡器工作时遇到了很多麻烦,我真的不想再经历那样的麻烦。这就是我对 CFLAGS 感兴趣的原因。有没有办法可以将其指向 pcscd ./compile

答案1

引自维基百科

CFLAGS 是环境变量或 Makefile 变量的名称,可以设置它来指定在构建计算机软件的过程中要传递给编译器的附加开关。

这些变量通常在 Makefile 中设置,然后在调用编译器时附加到命令行。如果 Makefile 中未指定这些变量,则将从环境中读取这些变量(如果存在)。

您可以轻松地从存储库而不是源代码安装它

sudo apt-get install libpcsclite-dev

相关内容