Makefile段错误

Make后报错 段错误。文件夹里面include是头文件文件夹,libord_sdk.a包含库文件 Makefile 和 sdk_demo.cpp四个文件。
修改了头文件库文件地址也还是段错误,cpp代码应该没问题,之前厂家提供,cmake可以生成可执行文件

cpp文件
#include <iostream>
#include "ord/ord_driver.h"
#include "ord/lidar_address.h"
#include "ord/ord_types.h"
#include <string.h>
#ifdef __linux__
#include <arpa/inet.h>
#include <unistd.h>
#endif
int main()
{
printf("this is oradar lidar sdk test demo \n")
//ms500 lidar factory default IP:192.168.1.100,Port:2007
in_addr_t ip_addr = inet_addr("192.168.1.100");
in_port_t port = htons(2007);
ord_sdk::LidarAddress sensor(ip_addr, port);
ord_sdk::OrdDriver drv(sensor);
ord_sdk::ScanFrameData scan_frame_data;
if (drv.open() != ord_sdk::no_error){
std::cerr << "unable to open device" << std::endl;
return -1;
}
if(drv.trackConnect() != ord_sdk::no_error){
std::cerr << "unable to connect ms500 lidar" << std::endl;
return -1;
}
while (true) {
if (drv.getScanFrameData(scan_frame_data) == ord_sdk::no_error){
int count = scan_frame_data.layers[0].ranges.size();
std::cout << "scan_frame_data count size is " << \
scan_frame_data.layers[0].ranges.size() << std::endl;
std::cout << "scan_frame_data.layers.szie = " << \
scan_frame_data.layers.size() << std::endl;
std::cout << "scan_frame_data.layers[0].ranges.szie = " << \
scan_frame_data.layers[0].ranges.size() << std::endl;
std::cout << "scan_frame_data.layers[0].intensities.szie = " << \
scan_frame_data.layers[0].intensities.size() << std::endl;
std::cout << "timestamp is " << scan_frame_data.timestamp << std::endl;
}else{
std::cerr << "unable to get point cloud data\n";
break;
}
}
drv.close();
return 0;
}
 
 
 
 Makefile文件
CC = g++
CFLAGS = -g -std=c++11
SOURCES = $(wildcard *.cpp)
INCLUDE_DIRS = -I ./include/
LIB_DIRS = -L .
ifeq ($(LANG),)
CLIBS = -lord_sdk -lpthread -lwsock32 -lws2_32
else
CLIBS = -lord_sdk -lpthread
endif
ARGET = sdk_demo
OBJECTS = $(patsubst %.cpp,%.o,$(SOURCES))
$(TARGET):$(OBJECTS)
$(CC)$(LDFLAGS) $^ -o $@ $(LIB_DIRS) $(CLIBS)
$(OBJECTS):%.o:%.cpp
$(CC) -c $(CFLAGS) $^ -o $@ $(INCLUDE_DIRS)
.PHONY:clean
clean:
ifeq ($(LANG),)
del $(TARGET).exe $(OBJECTS)
else
rm -rf $(TARGET) $(OBJECTS)
endif

img

提醒:makefile里的Tab必须是真Tab而不能用空格代替