只打印文名

CMakeLists.txt

c 复制代码
set(CMAKE_C_FLAGS "-O0 -ggdb -D__NOTDIR_FILE__=$(notdir $<)")
// set(CMAKE_C_FLAGS "-O0 -ggdb -D__NOTDIR_FILE__=$(notdir $<) -D__FILENAME__=$(subst $(dir $<),,$<)")

C文件

c 复制代码
#include <stdio.h>

#ifdef __NOTDIR_FILE__
#define M2STR(x) #x
#define M2STR_IMPL(x) M2STR(x)
#define __BFILE__ M2STR_IMPL(__NOTDIR_FILE__)
#else
#define __BFILE__ __FILE__
#endif

void hello()
{
	printf("[%s:%s: %d] hello word\n", "123123", __BFILE__, __LINE__);
}

结果

c 复制代码
liuwen@liuwen-VirtualBox:~/test/cmake/02-1-use_static_lib/build$ ./static_use
[123123:hello.c: 18] hello word
相关推荐
SunnyDays10111 分钟前
C# 实战:从 Word 文档中提取指定页面
c#·提取word文档页面·将word页面复制到另一个文档
骆驼爱记录1 分钟前
Word通配符技巧:高效文档处理指南
开发语言·c#·自动化·word·excel·wps·新人首发
仟濹19 分钟前
【Java加强】2 泛型 | 打卡day1
java·开发语言
人工智能AI技术21 分钟前
智能体元年第一课:使用Microsoft Foundry + AI Toolkit 10分钟构建你的第一个多模态Agent
人工智能·c#
maplewen.21 分钟前
C++11 std::function
开发语言·c++
阿里嘎多学长24 分钟前
2026-02-02 GitHub 热点项目精选
开发语言·程序员·github·代码托管
乔江seven25 分钟前
【python轻量级Web框架 Flask 】1 Flask 初识
开发语言·后端·python·flask
sheji341628 分钟前
【开题答辩全过程】以 基于Java的流浪猫救济中心系统的设计与实现为例,包含答辩的问题和答案
java·开发语言
小小仙。34 分钟前
IT自学第二十天
java·开发语言
柱子jason36 分钟前
基于IOT-Tree Server支持的gRPC服务,使用C#开发自己的设备监控客户端
物联网·rpc·c#·自动化·iiot·iot-tree