php扩展开发 怎么引用其他.c.h

我编写了其他的.c.h,是需要在makefile中增加相应文件吗?

在编写PHP扩展时,如果需要引用其他的.c.h文件,可以在扩展的主文件中使用#include语句来引用。例如:

#include "other_file.h"

在makefile中,需要将其他的.c和.h文件都添加到扩展的编译列表中。例如:

extension_name_la_SOURCES = \
        main_file.c \
        other_file.c \
        other_file.h

需要注意的是,如果其他的.h文件依赖于其他的库文件,还需要在makefile中添加相应的库文件链接选项。例如:

extension_name_la_LDFLAGS = -lmylib

其中,-lmylib表示链接名为libmylib.so的库文件。

  • 帮你找了个相似的问题, 你可以看下: https://ask.csdn.net/questions/1021191
  • 这篇博客也不错, 你可以看下c语言中的makefile编写步骤详解
  • 除此之外, 这篇博客: 从零开始写一个通用的Makefile中的 第一部分 部分也许能够解决你的问题, 你可以仔细阅读以下内容或跳转源博客中阅读:
  • 先来看一下我们此时要编译的代码

    • main.h
    #ifndef _MAIN_H_
    #define _MAIN_H_
    
    #define NUM 3
    
    #endif
    
    • main.c
    #include <stdio.h>
    #include "main.h" 
    
    int main(int argc, char *argv[])
    {
    
    	printf("%d\n", NUM);
    
    	return 0;
    }
    

    这段代码没有什么可以讲的,只是简单的一个打印语句而已,下面我们来讲一下Makefile。