ICode9

精准搜索请尝试: 精确搜索
首页 > 系统相关> 文章详细

DLL:在Windows版Linux上用MinGW编译C时,无法识别文件格式

2019-10-28 23:50:26  阅读:242  来源: 互联网

标签:dll mingw c-3 linux windows


我正在Linux(特别是Ubuntu)上使用MinGW来编译Windows的C程序.我正在使用一个名为SFML的库,它的绑定称为CSFML.我正在使用-L和-l来查找库,但是在编译时出现此错误:

win32/dll/csfml-audio-2.dll: file not recognized: File format not recognised

我不知道为什么.这是我用来编译的命令:

sudo i686-w64-mingw32-gcc -o wandering src/main.c src/constants.c src/Display/display.c **...some more c files in here...** src/Generation/perlinnoise.c $(pkg-config --libs --cflags glib-2.0) $(pkg-config --libs --cflags gee-1.0) -Iwin32/CSFML-2.1/include -Lwin32/dll -lcsfml-audio-

有人知道为什么会这样吗?我可以在没有SFML的情况下编译C程序,但是在MinGW的情况下可以…

解决方法:

DLL具有PE32可执行文件头.它不用于链接器.您应该改为使用导入库.该文件的扩展名为LIB.

我听说那里有一些gcc编译器版本,而不是动态从DLL生成导入库.看来您的版本没有.

标签:dll,mingw,c-3,linux,windows
来源: https://codeday.me/bug/20191028/1955987.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有