【问题标题】:Start with MonetDB development从 MonetDB 开发开始
【发布时间】:2017-12-04 15:25:34
【问题描述】:

我想将功能集成到 MonetDB 中,更具体地说是集成到其中的字典部分。我找到了一些信息here,但这并不是很详细。

我想集成的具体功能在我的问题中是次要的。我目前最大的障碍是:如何开始开发 MonetDB?

我能够下载源代码并按照here 的描述构建它。但是从那里去哪里呢?

我的首选方式是:以某种形式的 IDE 获取 MonetDB,设置各种断点,发送 SQL 查询并从那里探索代码。

这可能吗?你使用什么开发环境? gdb调试是唯一的可能性吗?你是怎么调试的?

【问题讨论】:

    标签: development-environment monetdb


    【解决方案1】:

    与此同时,我自己想通了。也许,其他人会面临这个问题,因此我回答我自己的问题。我最终使用 Eclipse 并描述了一种可能的方式来开始 MonetDB 开发/调试:

    • 从官方仓库克隆 MonetDB 仓库,例如,from Github
    • 下载current Eclipse release的C++版本
    • 在 Eclipse 中单击 File > New > C/C++ > Makefile Project with Existing Code > Next。将克隆的存储库字典插入为Existing Code Location 并选择GNU Autotools Toolchain
    • 现在您应该能够在 Eclipse 中构建 MonetDB
    • 成功构建后,您可以从项目资源管理器中选择Binaries。在那里,您可以右键单击不同的二进制文件并使用 run asdebug as

    这样就完成了 Eclipse 中 MonetDB 的设置。现在,这取决于您要调试的内容。如果您想在服务器上更改某些内容,您可能需要调试monetdbd。我的建议是:

    • 如前所述,每次右键单击开始调试monetdbd
    • 关闭调试会话并调整调试配置
    • Arguments 选项卡上,插入参数:start -n <path to your dbfarm>。这将防止数据库守护进程进入后台
    • Debugger 选项卡上,选择Automatically debug forked process 和可选Non-stop mode
    • 新的调试会话现在将自动停止在 monetdbd 的主线程,并且还将显示分叉的 mserver5 进程的线程

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2010-09-29
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-01-05
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多