将Commande Line Linux转换为makefile

时间:2019-05-06 15:16:32

标签: c linux makefile

有没有人可以帮助我将此命令行转换为makefile:

  

gcc -o hello_ps hello_ps.c -DMODELDIR = \“ pkg-config --variable = modeldir pocketsphinx \” pkg-config --cflags --libs pocketsphinx sphinxbase

谢谢。

1 个答案:

答案 0 :(得分:2)

在源代码和可执行文件之间创建依赖项:

hello_ps: hello_ps.c
    gcc -o hello_ps hello_ps.c -DMODELDIR=\"pkg-config --variable=modeldir pocketsphinx\" pkg-config --cflags --libs pocketsphinx sphinxbase

警告 gcc 前面有一个标签,而不是空格

示例(我没有使用这些选项进行编译的环境):

pi@raspberrypi:/tmp $ echo "whatever I do not compile" > hello_ps.c
pi@raspberrypi:/tmp $ make -n
gcc -o hello_ps hello_ps.c -DMODELDIR=\"pkg-config --variable=modeldir pocketsphinx\" pkg-config --cflags --libs pocketsphinx sphinxbase
pi@raspberrypi:/tmp $ touch hello_ps
pi@raspberrypi:/tmp $ make -n
make: « hello_ps » is up to date.
pi@raspberrypi:/tmp $ touch hello_ps.c 
pi@raspberrypi:/tmp $ make -n
gcc -o hello_ps hello_ps.c -DMODELDIR=\"pkg-config --variable=modeldir pocketsphinx\" pkg-config --cflags --libs pocketsphinx sphinxbase

当然,您可以添加更多的依赖项,包括附带的头文件,libs等。