netbeans - 如何在 NetBeans 工具链模块中指定与 MinGW 不同的目录中的编译器
问题描述
我正在尝试根据 Apache 网站上的说明使用 Pharlap 扩展器为 Borland 4.5 编译器制作一个简单的 ToolChain:https ://netbeans.apache.org/kb/docs/cnd/toolchain.html
我将 ToolChain 基于 MinGW,以便我可以使用这些工具进行制作。
我无法以自动发现 MinGW 的方式获得新的工具集来查找 Borland 编译器。如果我使用 g++ 作为编译器名称,Netbeans 会发现没问题。问题似乎与目录有关。我假设安装目录为 C:\BC45\BIN 并试图在该目录中找到 BCC32.EXE。
当我运行(清理、构建、然后运行)netbeans 模块的测试安装时,我在 C/C++ 中看到了我的新工具链,但 C++ 编译器的字段始终为空,除非我在 c:\mingw 中指定程序\bin(基本)目录。
我在我的 cpp xml 文件中尝试了以下内容的变体,以确保不时使用 g++ 作为名称它可以正常工作:
<cpp>
<compiler name="bcc32.exe"/>
<recognizer pattern=".*[\\/]bc45.*[\\/]bin[\\/]?$"/>
除了 Apache 网站,我还没有找到文档。我的猜测基于我发现的内容:%appdata%\NetBeans\12.4\config\CND\ToolChain\MinGW.xml
解决方案
就目前而言,上面的 XML 还可以。apache.org 上的示例只填写了 c++ (cpp) 的子类。当我还对 c、汇编器和链接器进行子类化时,我最终会按预期自动填充 C++ 选项中的字段。
vcc4n ( https://sourceforge.net/p/vcc4n/wiki/Home/ ) 有一个很好的例子来实现这些构建工具的四个重要类,但实际上只是继续这个例子来创建和填写指定的附加 XML layer.xml 中的内容很简单。
推荐阅读
- javascript - 页面刷新后反应路由器不起作用
- java - Set 实现中的 addAll() 方法不起作用
- java - 在 Akka HTTP 中保持 WebSocket 连接处于活动状态的最佳方法?
- php - 如何在 PHP 类中使用 HTMLPurifier?
- javascript - 在 Vue.js 中访问导出的组件 data()
- angular - 如何合并来自 2 个 ngrx 效果的数据
- audio - ALSA-loop(aloop内核模块)发送和接收挂钩点
- node.js - 跳过collection.find()上的字段不起作用
- tomcat - Tomcat_user.xml 更改不影响本地主机登录?
- ios - Apple Watch 扩展只为特定用户安装