草庐IT

linux - ubuntu 上的 Scons/Doom 3 编译错误

coder 2023-06-19 原文

当我从提取的源代码树中的 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' )

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

谢谢!

最佳答案

sudo apt-get install m4

那个对我来说已经解决的问题...

然后我得到:

scons: done reading SConscript files. scons: Building targets ... scons: building associated VariantDir targets: build/debug/core/glimp build/debug/core build/debug/game build/debug/d3xp g++ -o build/debug/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 In file included from d3xp/../idlib/precompiled.h:142:0, from d3xp/AF.cpp:29: d3xp/../idlib/../renderer/qgl.h:51:19: fatal error: GL/gl.h: No such file or directory compilation terminated. scons: *** [build/debug/d3xp/d3xp/AF.os] Error 1 scons: building terminated because of errors.

修复者:

sudo apt-get install libgl1-mesa-dev

然后得到:

In file included from build/debug/core/glimp/sys/linux/glimp_dlopen.cpp:3:0: ./sys/linux/local.h:40:38: fatal error: X11/extensions/xf86vmode.h: No such file or directory compilation terminated. scons: *** [build/debug/core/glimp/sys/linux/glimp_dlopen.o] Error 1 scons: building terminated because of errors.

修复者:

sudo apt-get install libxxf86vm-dev

然后得到:

In file included from openal/stubs.cpp:29:0: openal/../sound/snd_local.h:44:19: fatal error: AL/al.h: No such file or directory compilation terminated.

修复者:

sudo apt-get install libopenal-dev

然后得到:

In file included from sys/linux/sound.cpp:42:0: sys/linux/sound.h:90:28: fatal error: alsa/asoundlib.h: No such file or directory compilation terminated. scons: *** [build/debug/core/sys/linux/sound.o] Error 1 scons: building terminated because of errors.

修复者:

sudo apt-get install libasound2-dev

然后得到:

/usr/bin/ld: cannot find -lz collect2: ld returned 1 exit status scons: *** [build/debug/core/sys/scons/doom] Error 1 scons: building terminated because of errors.

修复者:

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

最后:

Install file: "build/debug/core/sys/scons/doom" as "doom.x86" Install file: "build/debug/game/sys/scons/libgame.so" as "gamex86-base.so" Install file: "build/debug/d3xp/sys/scons/libgame.so" as "gamex86-d3xp.so" scons: done building targets.

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

关于linux - ubuntu 上的 Scons/Doom 3 编译错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8254095/

有关linux - ubuntu 上的 Scons/Doom 3 编译错误的更多相关文章

  1. ruby-on-rails - Rails 常用字符串(用于通知和错误信息等) - 2

    大约一年前,我决定确保每个包含非唯一文本的Flash通知都将从模块中的方法中获取文本。我这样做的最初原因是为了避免一遍又一遍地输入相同的字符串。如果我想更改措辞,我可以在一个地方轻松完成,而且一遍又一遍地重复同一件事而出现拼写错误的可能性也会降低。我最终得到的是这样的:moduleMessagesdefformat_error_messages(errors)errors.map{|attribute,message|"Error:#{attribute.to_s.titleize}#{message}."}enddeferror_message_could_not_find(obje

  2. ruby-on-rails - date_field_tag,如何设置默认日期? [ rails 上的 ruby ] - 2

    我想设置一个默认日期,例如实际日期,我该如何设置?还有如何在组合框中设置默认值顺便问一下,date_field_tag和date_field之间有什么区别? 最佳答案 试试这个:将默认日期作为第二个参数传递。youcorrectlysetthedefaultvalueofcomboboxasshowninyourquestion. 关于ruby-on-rails-date_field_tag,如何设置默认日期?[rails上的ruby],我们在StackOverflow上找到一个类似的问

  3. ruby-on-rails - openshift 上的 rails 控制台 - 2

    我将我的Rails应用程序部署到OpenShift,它运行良好,但我无法在生产服务器上运行“Rails控制台”。它给了我这个错误。我该如何解决这个问题?我尝试更新ruby​​gems,但它也给出了权限被拒绝的错误,我也无法做到。railsc错误:Warning:You'reusingRubygems1.8.24withSpring.UpgradetoatleastRubygems2.1.0andrun`gempristine--all`forbetterstartupperformance./opt/rh/ruby193/root/usr/share/rubygems/rubygems

  4. ruby-on-rails - 迷你测试错误 : "NameError: uninitialized constant" - 2

    我遵循MichaelHartl的“RubyonRails教程:学习Web开发”,并创建了检查用户名和电子邮件长度有效性的测试(名称最多50个字符,电子邮件最多255个字符)。test/helpers/application_helper_test.rb的内容是:require'test_helper'classApplicationHelperTest在运行bundleexecraketest时,所有测试都通过了,但我看到以下消息在最后被标记为错误:ERROR["test_full_title_helper",ApplicationHelperTest,1.820016791]test

  5. ruby-on-rails - 相关表上的范围为 "WHERE ... LIKE" - 2

    我正在尝试从Postgresql表(table1)中获取数据,该表由另一个相关表(property)的字段(table2)过滤。在纯SQL中,我会这样编写查询:SELECT*FROMtable1JOINtable2USING(table2_id)WHEREtable2.propertyLIKE'query%'这工作正常:scope:my_scope,->(query){includes(:table2).where("table2.property":query)}但我真正需要的是使用LIKE运算符进行过滤,而不是严格相等。然而,这是行不通的:scope:my_scope,->(que

  6. ruby-on-rails - 如何在 Rails View 上显示错误消息? - 2

    我是rails的新手,想在form字段上应用验证。myviewsnew.html.erb.....模拟.rbclassSimulation{:in=>1..25,:message=>'Therowmustbebetween1and25'}end模拟Controller.rbclassSimulationsController我想检查模型类中row字段的整数范围,如果不在范围内则返回错误信息。我可以检查上面代码的范围,但无法返回错误消息提前致谢 最佳答案 关键是您使用的是模型表单,一种显示ActiveRecord模型实例属性的表单。c

  7. 使用 ACL 调用 upload_file 时出现 Ruby S3 "Access Denied"错误 - 2

    我正在尝试编写一个将文件上传到AWS并公开该文件的Ruby脚本。我做了以下事情:s3=Aws::S3::Resource.new(credentials:Aws::Credentials.new(KEY,SECRET),region:'us-west-2')obj=s3.bucket('stg-db').object('key')obj.upload_file(filename)这似乎工作正常,除了该文件不是公开可用的,而且我无法获得它的公共(public)URL。但是当我登录到S3时,我可以正常查看我的文件。为了使其公开可用,我将最后一行更改为obj.upload_file(file

  8. ruby-on-rails - 错误 : Error installing pg: ERROR: Failed to build gem native extension - 2

    我克隆了一个rails仓库,我现在正尝试捆绑安装背景:OSXElCapitanruby2.2.3p173(2015-08-18修订版51636)[x86_64-darwin15]rails-v在您的Gemfile中列出的或native可用的任何gem源中找不到gem'pg(>=0)ruby​​'。运行bundleinstall以安装缺少的gem。bundleinstallFetchinggemmetadatafromhttps://rubygems.org/............Fetchingversionmetadatafromhttps://rubygems.org/...Fe

  9. ruby - #之间? Cooper 的 *Beginning Ruby* 中的错误或异常 - 2

    在Cooper的书BeginningRuby中,第166页有一个我无法重现的示例。classSongincludeComparableattr_accessor:lengthdef(other)@lengthother.lengthenddefinitialize(song_name,length)@song_name=song_name@length=lengthendenda=Song.new('Rockaroundtheclock',143)b=Song.new('BohemianRhapsody',544)c=Song.new('MinuteWaltz',60)a.betwee

  10. ruby-on-rails - 每次我尝试部署时,我都会得到 - (gcloud.preview.app.deploy) 错误响应 : [4] DEADLINE_EXCEEDED - 2

    我是Google云的新手,我正在尝试对其进行首次部署。我的第一个部署是RubyonRails项目。我基本上是在关注thisguideinthegoogleclouddocumentation.唯一的区别是我使用的是我自己的项目,而不是他们提供的“helloworld”项目。这是我的app.yaml文件runtime:customvm:trueentrypoint:bundleexecrackup-p8080-Eproductionconfig.ruresources:cpu:0.5memory_gb:1.3disk_size_gb:10当我转到我的项目目录并运行gcloudprevie

随机推荐