【问题标题】:Scons/Doom 3 compile error on ubuntuScons/Doom 3 在 ubuntu 上编译错误
【发布时间】:2011-11-24 08:33:16
【问题描述】:

当我从提取的源代码树中的 neo 文件夹中运行 scons 命令时,我得到以下输出:

nroach44@ASUS-P5G43T-U1110:~/Source/doom3engine/neo$ scons
scons: Reading SConscript files ...
Loading build configuration from site.conf:
  BUILD_GAMEPAK='0'
  JOBS='1'
  DEDICATED='0'
  SILENT='0'
  GL_HARDLINK='0'
  ID_MCHECK='2'
  BUILD_ROOT='build'
  ALSA='1'
  CC='gcc'
  TARGET_D3XP='1'
  TARGET_CORE='1'
  BUILD='debug'
  TARGET_GAME='1'
  TARGET_MONO='0'
  BASEFLAGS=''
  CXX='g++'
  NOCURL='0'
  DEBUG_MEMORY='0'
  IDNET_HOST=''
  LIBC_MALLOC='1'
  ID_NOLANADDRESS='0'
  TARGET_DEMO='0'
AttributeError: 'SConsEnvironment' object has no attribute 'M4':
  File "/home/nroach44/Source/doom3engine/neo/SConstruct", line 422:
    SConscript( g_build + '/core/glimp/sys/scons/SConscript.gl' )
  File "/usr/lib/scons/SCons/Script/SConscript.py", line 614:
    return method(*args, **kw)
  File "/usr/lib/scons/SCons/Script/SConscript.py", line 551:
    return _SConscript(self.fs, *files, **subst_kw)
  File "/usr/lib/scons/SCons/Script/SConscript.py", line 260:
    exec _file_ in call_stack[-1].globals
  File     "/home/nroach44/Source/doom3engine/neo/build/debug/core/glimp/sys/scons/SConscript.gl", line 69:
gl_env.M4( i_m4, i_m4 + '.m4' )

我不知道它是否缺少某些东西,没有引用某些东西或什么。这确实发生在从新提取到新文件夹中的情况下。

谢谢!

【问题讨论】:

    标签: linux compilation


    【解决方案1】:

    sudo apt-get install m4

    对我来说已解决的问题...

    然后我得到了:

    scons:完成读取 SConscript 文件。 scons:建立目标...... scons:构建相关的 VariantDir 目标:build/debug/core/glimp 构建/调试/核心构建/调试/游戏构建/调试/d3xp g++ -o 构建/调试/d3xp/d3xp/AF.os -c -fPIC -pipe -Wall -Wno-unknown-pragmas -fmessage-length=0 -fpermissive -fvisibility=hidden -m32 -g -O1 -D_DEBUG -fno-strict-aliasing -D_D3XP -DCTF -DGAME_DLL d3xp/AF.cpp 在 d3xp/../idlib/预编译的文件中。小时:142:0, 来自 d3xp/AF.cpp:29: d3xp/../idlib/../renderer/qgl.h:51:19: 致命错误: GL/gl.h: 没有 文件或目录编译终止。斯康斯:*** [build/debug/d3xp/d3xp/AF.os] 错误 1 ​​scons:构建终止 因为错误。

    修复者:

    sudo apt-get install libgl1-mesa-dev

    然后得到:

    在包含的文件中 构建/调试/核心/glimp/sys/linux/glimp_dlopen.cpp:3:0: ./sys/linux/local.h:40:38:致命错误:X11/extensions/xf86vmode.h:否 此类文件或目录编译终止。斯康斯:*** [build/debug/core/glimp/sys/linux/glimp_dlopen.o] 错误 1 ​​scons: 建筑物因错误而终止。

    修复者:

    sudo apt-get install libxxf86vm-dev

    然后得到:

    在 openal/stubs.cpp:29:0 包含的文件中: openal/../sound/snd_local.h:44:19: 致命错误: AL/al.h: 没有这样的文件 或目录编译终止。

    修复者:

    sudo apt-get install libopenal-dev

    然后得到:

    在 sys/linux/sound.cpp:42:0 包含的文件中: sys/linux/sound.h:90:28:致命错误:alsa/asoundlib.h:没有这样的文件 或目录编译终止。斯康斯:*** [build/debug/core/sys/linux/sound.o] 错误 1 ​​scons:正在构建 因错误而终止。

    修复者:

    sudo apt-get install libasound2-dev

    然后得到:

    /usr/bin/ld: 找不到 -lz collect2: ld 返回 1 退出状态 scons: *** [build/debug/core/sys/scons/doom] 错误 1 ​​scons: building 因错误而终止。

    修复者:

    sudo apt-get install g++-multilib gcc-multilib sudo apt-get install zlib1g-dev

    最后:

    安装文件:“build/debug/core/sys/scons/doom”为“doom.x86”安装 文件:“build/debug/game/sys/scons/libgame.so”为“gamex86-base.so” 安装文件:“build/debug/d3xp/sys/scons/libgame.so”为 "gamex86-d3xp.so" scons:完成构建目标。

    还请检查: http://mapopa.blogspot.com/2011/11/building-doom3-gpl-code-on-ubuntu.html

    【讨论】:

    【解决方案2】:

    尝试安装m4 宏包——也许scons 正在寻找它,这是它报告缺少工具的方式?

    【讨论】:

    • 那会是通过 apt-get 吗?
    • 刚通过apt-cache找到的。我会回来报告的。
    猜你喜欢
    • 1970-01-01
    • 2018-12-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-02-03
    • 1970-01-01
    相关资源
    最近更新 更多