linux环境下配置makefile,生成可执行文件出现段错误的问题

CFLAGS:=-g -Wall -std=c++11 -fPIC

CXX = g++

LD = g++

SRCS = $(wildcard *.cpp)

OBJS = $(patsubst %.cpp, %.o, $(SRCS))

DIR_SRCS = ./src/
DIR_OBJS = obj
DIR_EXEC = bin

D_SRCS   = $(addprefix $(DIR_SRCS),$(SRCS))



# -I指定头文件目录

INCLUDE = -I./include -I/usr/local/include -I/usr/local/include/opencv4 -I/usr/local/include/opencv4/opencv2

# -L指定库文件目录,-l指定静态库名字(去掉文件名中的lib前缀和.a后缀)

LIB = -L./lib -L/usr/local/lib -lopencv_core -lopencv_highgui -lopencv_imgproc -lopencv_imgcodecs -fopenmp 

# 开启编译warning和设置优化等级



TARGET = output



.PHONY:all clean



all: $(TARGET)

# 链接时候指定库文件目录及库文件名

$(TARGET): $(OBJS)

	g++ -o $@ $^ $(LIB)

 

# 编译时候指定头文件目录

%.o:%.cpp

	g++ -shared -g -c $^ $(INCLUDE) $(CFLAGS)



clean:

	rm -f $(OBJS) $(TARGET)


第一个原因:开头的路径指定错了没找到文件
第二个原因:通过.o文件,链接生成可执行文件的时候加的-g什么的玩意删了就好了

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值