Linux build failing yet again

Linux geeks and Mac OS hipsters unite! A board for discussion of Supermodel on non-Windows platforms.
Forum rules
Keep it classy!

  • No ROM requests or links.
  • Do not ask to be a play tester.
  • Do not ask about release dates.
  • No drama!

Linux build failing yet again

Postby Shoegazer » Sun Jun 17, 2018 5:19 pm

Hello,

Compiling with Mint 18.3 yields the following:

Code: Select all
obj/New3D.o: In function `New3D::CNew3D::Init(unsigned int, unsigned int, unsigned int, unsigned int, unsigned int, unsigned int)':
New3D.cpp:(.text+0x171): undefined reference to `New3D::R3DFrameBuffers::CreateFBO(int, int)'
obj/New3D.o: In function `New3D::CNew3D::~CNew3D()':
New3D.cpp:(.text+0x220): undefined reference to `New3D::R3DFrameBuffers::~R3DFrameBuffers()'
obj/New3D.o: In function `New3D::CNew3D::CNew3D(Util::Config::Node const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >)':
New3D.cpp:(.text+0x30c9): undefined reference to `New3D::R3DFrameBuffers::R3DFrameBuffers()'
obj/New3D.o: In function `New3D::CNew3D::RenderFrame()':
New3D.cpp:(.text+0x79b4): undefined reference to `New3D::R3DFrameBuffers::Clear(unsigned int)'
New3D.cpp:(.text+0x79d4): undefined reference to `New3D::R3DFrameBuffers::SetFBO(New3D::Layer)'
New3D.cpp:(.text+0x7a04): undefined reference to `New3D::R3DFrameBuffers::StoreDepth()'
New3D.cpp:(.text+0x7a11): undefined reference to `New3D::R3DFrameBuffers::SetFBO(New3D::Layer)'
New3D.cpp:(.text+0x7a2c): undefined reference to `New3D::R3DFrameBuffers::RestoreDepth()'
New3D.cpp:(.text+0x7a39): undefined reference to `New3D::R3DFrameBuffers::SetFBO(New3D::Layer)'
New3D.cpp:(.text+0x7ab2): undefined reference to `New3D::R3DFrameBuffers::Draw()'
New3D.cpp:(.text+0x7b30): undefined reference to `New3D::R3DFrameBuffers::DisableFBO()'
collect2: error: ld returned 1 exit status
Makefiles/Makefile.inc:263: recipe for target 'bin/supermodel' failed
make: *** [bin/supermodel] Error 1


Any ideas what's going on?
Shoegazer
 
Posts: 24
Joined: Fri Oct 14, 2016 5:51 pm

Re: Linux build failing yet again

Postby Ian » Mon Jun 18, 2018 4:07 am

You need to add R3DFrameBuffers.cpp to the makefile
and probably GLSLShader.cpp too
Ian
 
Posts: 2044
Joined: Tue Feb 23, 2016 9:23 am

Re: Linux build failing yet again

Postby Shoegazer » Mon Jun 18, 2018 1:33 pm

Thanks, Ian. I'll use this manual process until a fix can be made to the codebase.

I tried adding the following lines to the Makefile:

Code: Select all
include Src/Graphics/New3D/R3DFrameBuffers.cpp
include Src/Graphics/New3D/GLSLShader.cpp


However, compiling now returns the following error:

Code: Select all
Src/Graphics/New3D/R3DFrameBuffers.cpp:6: *** missing separator.  Stop.


Any ideas here?
Shoegazer
 
Posts: 24
Joined: Fri Oct 14, 2016 5:51 pm

Re: Linux build failing yet again

Postby Shoegazer » Fri Jul 20, 2018 12:33 pm

Following up on this one. Looking further, the "missing separator" error seems to be some kind of syntax error related to spacing or tabs in the include files. Not sure if this is because of some Win32-specific code that should be updated to also work on GNU Make, or something else. Can anyone offer any suggestions here? Thanks.
Shoegazer
 
Posts: 24
Joined: Fri Oct 14, 2016 5:51 pm

Re: Linux build failing yet again

Postby Shoegazer » Thu Jul 26, 2018 5:01 pm

Okay, after talking to Ian further about this, the change needs to take place in "makefile.inc" not in the Makefile, as I had originally assumed.

Hopefully the makefile.inc can be changed in the main source in order to avoid this manual process in the future.
Shoegazer
 
Posts: 24
Joined: Fri Oct 14, 2016 5:51 pm


Return to Alternative Fashion

Who is online

Users browsing this forum: No registered users and 1 guest