gpt4 book ai didi

virtual-machine - 如何在没有镜像的情况下编译 Pharo VM?

转载 作者:行者123 更新时间:2023-12-04 07:22:29 27 4
gpt4 key购买 nike

我已经克隆了 VM 并为我的平台安装了所有依赖项。现在我有点困惑,因为几个 guides建议应该启动 Pharo 图像来生成从 Slang 翻译过来的 C 源代码。

"Unix"
PharoVMBuilder buildUnix32.
"OSX"
PharoVMBuilder buildMacOSX32.
"Windows"
PharoVMBuilder buildWin32.

但是,当您无法在您的平台中启动 VM 时,您如何生成 VM?这听起来像鸡和蛋的问题。

这意味着如果您无法在该平台上启动镜像,则无法构建 VM?

最佳答案

如果您按照 Esteban 的建议从 CI 服务器下载预先生成的源代码,则不需要从任何存储库克隆的 pharo-vm 源代码。只需在一个新文件夹中解压缩并从那里构建。

假设您在 c:\phs 中有新的源代码,打开 directory.cmake 并按如下方式重命名硬编码路径:

set(topDir "c:/phs/")
set(buildDir "c:/phs/build")
set(thirdpartyDir "${buildDir}/thirdparty")
set(platformsDir "c:/phs/platforms")
set(srcDir "c:/phs/src")
set(srcPluginsDir "${srcDir}/plugins")
set(srcVMDir "${srcDir}/vm")
set(platformName "win32")
set(targetPlatform ${platformsDir}/${platformName})
set(crossDir "${platformsDir}/Cross")
set(platformVMDir "${targetPlatform}/vm")
set(outputDir "c:/phs/results")

由于您无法启动 VM,我想您至少需要更改用于在 CI 服务器中生成源的编译标志。它们在 c:\phs\build\CMakeLists.txt 中,特别是以下标志:
  • -march=...(您的处理器架构,搜索 Safe Cflags)
  • 删除禁止调试选项的 -g0
  • 删除 -O2(优化)
  • 删除 -DNDEBUG
  • 将 -DDEBUGVM=0 修改为 -DDEBUGVM=1

  • 最后启动构建脚本
    cd /c/phs/build
    bash build.sh

    关于virtual-machine - 如何在没有镜像的情况下编译 Pharo VM?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22433599/

    27 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com