Embarcadero C++Builder 12.1社区版Indy IdHTTPWebBrokerBridge链接器错误求助
解决C++Builder 12.1 Indy链接错误的办法
1. 先确认Indy到底装没装好
组件面板显示有Indy组件,不代表编译用的库文件到位了,你可以这么检查:
- 打开Tools > Options > Environment Options > Delphi Options > Library,切换到你用的C++平台(比如Win32/Win64),看看Library path和Debug library path里有没有Indy的路径,比如
$(BDS)\source\Indy\*或者$(BDS)\lib\Indy\*。 - 去
$(BDS)\lib\Win32\Release(对应你的平台目录)里找IdHTTPWebBrokerBridge.lib和IdHTTPWebBrokerBridge.o,要是找不到,就是编译库确实没装。
2. 手动重新编译Indy组件
C++Builder的Indy得针对当前版本重新编译,步骤如下:
- 关掉所有项目,打开
$(BDS)\source\Indy\Indy10.groupproj这个Delphi项目组。 - 切换到目标平台,右键点项目组选Build All,把所有Indy包编译一遍。
- 编译完再打开
$(BDS)\source\Indy\CBuilder\IndyCB.groupproj,同样编译所有C++相关的包和库。 - 之后再去对应lib目录看看,应该就能找到
IdHTTPWebBrokerBridge.o了。
3. 解决GetIt里找不到Indy的问题
GetIt里没Indy选项,大概率是缓存或者索引出问题了:
- 打开Tools > GetIt Package Manager,点右上角的Refresh刷新列表,看看会不会出来。
- 要是还没有,就手动下载和C++Builder 12.1匹配的Indy安装包,解压后覆盖到
$(BDS)\source\Indy目录,然后再按步骤2重新编译。
4. 检查项目的链接配置
确保项目正确引用了Indy的库:
- 打开Project > Options,切到C++ Linker页面,在Additional libraries to link里加上
IdHTTPWebBrokerBridge.lib(对应你用的平台版本)。 - 同时在C++ Compiler > Include path里加上Indy头文件的路径,比如
$(BDS)\source\Indy\Protocols。
5. 重置C++Builder的组件配置
要是前面的办法都没用,试试重置组件配置:
- 关掉C++Builder,删掉
$(APPDATA)\Embarcadero\BDS\23.0目录下的组件配置文件(比如bds.config)。 - 重新打开C++Builder,再装一遍Indy设计期包——打开
$(BDS)\source\Indy\Indy10.groupproj,右键点设计期包选Install就行。
内容的提问来源于stack exchange,提问作者Robert Price
相关产品推荐
相关产品推荐

