Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Make xygine depend on a release build of Box2D (preferably 2.3.2) #21

Open
select-this opened this issue Jan 17, 2017 · 6 comments
Open

Comments

@select-this
Copy link

Getting some build errors in g++ 5.4.1 on Linux; just wanted to make you aware just in case you weren't already. I can create a pull request if you like but most likely won't be able to until the weekend.

include/xygine/MultiRenderTexture.hpp:142:14: error: ‘bool xy::MultiRenderTexture::activate(bool)’ marked ‘override’, but does not override
         bool activate(bool) override;
include/xygine/mesh/DepthRenderTexture.hpp:112:14: error: ‘bool xy::DepthRenderTexture::activate(bool)’ marked ‘override’, but does not override
         bool activate(bool) override;
include/xygine/physics/DebugDrawer.hpp:67:18: error: ‘void xy::Physics::DebugDraw::DrawPoint(const b2Vec2&, float32, const b2Color&)’ marked ‘override’, but does not override
             void DrawPoint(const b2Vec2& p, float32 size, const b2Color& color) override;
src/mesh/DepthRenderTexture.cpp:51:21: error: ‘ensureGlContext’ was not declared in this scope
     ensureGlContext();
src/physics/PhysicsJointWheel.cpp:66:60: error: ‘class b2WheelJoint’ has no member named ‘GetJointAngularSpeed’
     return World::boxToSfFloat(getJointAs<b2WheelJoint>()->GetJointAngularSpeed());

I'm also getting some warnings - I can put those into a separate issue if you like or just create a pull request in the future.

@fallahn
Copy link
Owner

fallahn commented Jan 18, 2017

This is caused by version mismatches of the dependencies. The SFML errors appeared with the release of 2.4.1, reverting to 2.4.0 should fix these. Currently I'm waiting on the 2.4.2 release before modifying xygine. Box2D is a slightly different problem, however, caused by the fact I used a revision newer than the latest official release (which was 2.3.2 iirc) that breaks the API. I should address this by making xygine depend on the 2.3.2 release of Box2D rather than an arbitrary revision of the repo

@fallahn fallahn changed the title Build errors (g++ 5.4.1, Ubuntu 16.04) Make xygine depend on a release build of Box2D (preferably 2.3.2) Jan 18, 2017
@fallahn fallahn self-assigned this Jan 19, 2017
@fallahn
Copy link
Owner

fallahn commented Feb 6, 2017

For anyone wishing to work around this until it is fixed erincatto/box2d@2cb4e26 has been tested to work

@fallahn fallahn added the Legacy label Oct 1, 2017
@fallahn fallahn removed their assignment Oct 9, 2017
@Clever-Boy
Copy link

Hi, I am getting this error on Mac OS while linking. I checked at the work around above but src/physics/PhysicsJointWheel.cpp does not seem to be updated.

Undefined symbols for architecture x86_64:
"b2WheelJoint::GetJointAngularSpeed() const", referenced from:
xy::Physics::WheelJoint::getSpeed() const in PhysicsJointWheel.cpp.o
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
make[2]: *** [libxygine.dylib] Error 1
make[1]: *** [CMakeFiles/xygine.dir/all] Error 2
make: *** [all] Error 2

@fallahn
Copy link
Owner

fallahn commented Nov 22, 2017

How odd. The wheel joint update was in this commit - dated 4 days before the work-around commit. Did you check out all the files to that revision or just the debug-draw files?

@Clever-Boy
Copy link

Thanks. I did not get all the files. On a seperate note, I took the latest master build of xygine and getting this error..

/Users/Projects/xygine/xyginext/src/network/NetHost.cpp:128:21: error: no member named 'connectedPeers' in
'_ENetHost'
if (m_host->connectedPeers > 0)
~~~~~~ ^
/Users/Projects/xygine/xyginext/src/network/NetHost.cpp:130:43: error: no member named 'connectedPeers' in
'_ENetHost'
for (auto i = 0u; i < m_host->connectedPeers; ++i)
~~~~~~ ^
/Users/Projects/xygine/xyginext/src/network/NetHost.cpp:213:31: error: no member named 'connectedPeers' in
'_ENetHost'
return (m_host) ? m_host->connectedPeers : 0;
~~~~~~ ^
3 errors generated.
make[2]: *** [CMakeFiles/xyginext.dir/src/network/NetHost.cpp.o] Error 1
make[1]: *** [CMakeFiles/xyginext.dir/all] Error 2
make: *** [all] Error 2

@fallahn
Copy link
Owner

fallahn commented Nov 23, 2017

OK glad the box2D issue is working. I've moved the enet one to #43

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants