首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用png资源构建.dll (VST插件)的代码块/mingw& windres问题

使用png资源构建.dll (VST插件)的代码块/mingw& windres问题
EN

Stack Overflow用户
提问于 2011-10-23 19:07:44
回答 1查看 726关注 0票数 0

我有一个VST插件,可以很好地编译VS200X / MSVC。我正在尝试做一个Codeblock/MinGW项目,也是为那些喜欢那个环境的用户准备的。

当我使用代码块构建动态链接库时,它可以在VST主机上运行,直到我开始尝试包含资源(.png文件)。

我在代码块项目中包含了.rc文件。我的resource.h中的资源路径没有空格。

如果我尝试复制构建的.dll文件,操作系统会将其锁定。这几乎就像是windres没有成功编译资源,并保留了文件的句柄-尽管从.dll的大小来看,资源看起来就在那里。如果我尝试通过GDB在vst主机上运行dll,它不会命中任何断点……假设主机不能加载.dll。

以下是代码块cbp编译器设置...

代码语言:javascript
复制
<Target title="Release Win32">
<Option output="build-win-cb\IPlugEffect" prefix_auto="1" extension_auto="1" />
<Option working_dir="build-win-cb\" />
<Option object_output="build-win-cb\Release" />
<Option type="3" />
<Option compiler="gcc" />
<Option parameters="IPlugEffect.dll" />
<Option host_application="C:\Program Files\vsthost\vsthost.exe" />
<Compiler>
<Add option="-O3" />
<Add option="-msse2" />
<Add option="-ffast-math" />
<Add option="-DVST_API" />
<Add option="-DWIN32" />
<Add option="-D_WIN32_WINNT=0x0501" />
<Add option="-DWINVER=0x0501" />
<Add option="-D_CRT_SECURE_NO_DEPRECATE" />
<Add option="-DPNG_NO_ASSEMBLER_CODE" />
<Add option="-DPNG_LIBPNG_SPECIALBUILD" />
<Add option="-DDLL_BUILD" />
</Compiler>
</Target>

resource.h

...
// Unique IDs for each image resource.
#define KNOB_ID       101
// Image resource locations for this plug.
...

IPlugEffect.rc

#include "resource.h"

KNOB_ID       PNG KNOB_FN
#define KNOB_FN       "resources/img/knob.png"
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2011-10-25 21:23:05

问题解决了。我的dll符号导出/可见性对于gcc不正确。

http://forum.cockos.com/showpost.php?p=835609&postcount=21

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/7865757

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档