Nyeilim 2019-10-25 12:20 采纳率: 0%
浏览 504

Windows 下使用 Flex 时链接静态库 libfl.lib 失败?

(1). 编译技术的一个小实验... 老师直接给的 libfl.lib 和 flex.exe,没经过什么安装步骤

(2). 代码如下

// lex.yy.c
// 其他都是flex自己生成的... 没啥好看的
#define FLEX_SCANNER
#define YY_FLEX_MAJOR_VERSION 2
#define YY_FLEX_MINOR_VERSION 5

#include <stdio.h>
#pragma commit(lib, "./libfl.lib")
#pragma commit(linker, "/NODEFAULTLIB:LIBC.lib")

(3). 我的尝试

#pragma commit(lib, "./libfl.lib") + gcc 直接编译
结果如下截图

尝试1

注释掉#pragma commit(lib, "./libfl.lib") + gcc 带参数编译
结果如下截图

尝试2

(4) 备注:mingw64 编译器环境变量设置正确; libfl.lib 资源已经在属性中解除锁定

这个问题通过自己在 lex.yy.c 中重写 int yywrap(){return 1;} 得到解决..
但是就是想知道为啥链接不上库... 先提前谢谢各位大佬了..

  • 写回答

1条回答 默认 最新

  • zqbnqsdsmd 2019-10-25 14:02
    关注
    评论

报告相同问题?

悬赏问题

  • ¥15 数值计算均差系数编程
  • ¥15 redis-full-check比较 两个集群的数据出错
  • ¥15 Matlab编程问题
  • ¥15 训练的多模态特征融合模型准确度很低怎么办
  • ¥15 kylin启动报错log4j类冲突
  • ¥15 超声波模块测距控制点灯,灯的闪烁很不稳定,经过调试发现测的距离偏大
  • ¥15 import arcpy出现importing _arcgisscripting 找不到相关程序
  • ¥15 onvif+openssl,vs2022编译openssl64
  • ¥15 iOS 自定义输入法-第三方输入法
  • ¥15 很想要一个很好的答案或提示