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

Fix Linux rpath. #1242

Merged
merged 2 commits into from Mar 8, 2015

Conversation

Projects
None yet
4 participants
@LuisAntonRebollo
Contributor

LuisAntonRebollo commented Mar 7, 2015

Necesary for distribute binaries.

@LuisAntonRebollo LuisAntonRebollo added this to the 3.7 milestone Mar 7, 2015

@crabmusket

This comment has been minimized.

Show comment
Hide comment
@crabmusket

crabmusket Mar 7, 2015

Contributor

@bpay (I think it was) advised that rpath should be set to $ORIGIN, not . for security reasons. I'm not fully aware of the differences, though.

Contributor

crabmusket commented Mar 7, 2015

@bpay (I think it was) advised that rpath should be set to $ORIGIN, not . for security reasons. I'm not fully aware of the differences, though.

@LuisAntonRebollo

This comment has been minimized.

Show comment
Hide comment
@LuisAntonRebollo

LuisAntonRebollo Mar 7, 2015

Contributor

Changed.

I have curiosity about diference. Anyone can post some link with info? Plz :P

Contributor

LuisAntonRebollo commented Mar 7, 2015

Changed.

I have curiosity about diference. Anyone can post some link with info? Plz :P

@bpay

This comment has been minimized.

Show comment
Hide comment
@bpay

bpay Mar 7, 2015

Contributor

see discussion on #1158

Contributor

bpay commented Mar 7, 2015

see discussion on #1158

@LuisAntonRebollo

This comment has been minimized.

Show comment
Hide comment
@LuisAntonRebollo

LuisAntonRebollo Mar 7, 2015

Contributor

wow... i miss some important talk :P

Thx a lot.

Failed on Clang :(

Contributor

LuisAntonRebollo commented Mar 7, 2015

wow... i miss some important talk :P

Thx a lot.

Failed on Clang :(

@crabmusket

This comment has been minimized.

Show comment
Hide comment
@crabmusket

crabmusket Mar 8, 2015

Contributor

Thanks Ben. Yeah it failed when I tried it as well. For now, maybe we should rely on documentation, or run scripts that provide the correct path at runtime. Can anyone verify that IDEs aren't doing something about this when you build with them? I've only built from the command-line. AFAIR Terminal Overload is providing users with a script they run instead of the executable directly. @fr1tz could comment.

Contributor

crabmusket commented Mar 8, 2015

Thanks Ben. Yeah it failed when I tried it as well. For now, maybe we should rely on documentation, or run scripts that provide the correct path at runtime. Can anyone verify that IDEs aren't doing something about this when you build with them? I've only built from the command-line. AFAIR Terminal Overload is providing users with a script they run instead of the executable directly. @fr1tz could comment.

@fr1tz

This comment has been minimized.

Show comment
Hide comment
@fr1tz

fr1tz Mar 8, 2015

I assume using "." instead of "$origin" causes the linker to search for the libs relative to the current working dir. If that's the case it would be a potential security risk (a bit like having "." in your PATH).
For Terminal Overload releases I use '$ORIGIN/lib' as rpath (set using the "chrpath" utility). The script @eightyeight mentioned just checks if a 32-bit version of libGL is available, because that's the only dependency not included in the release distribution (which even includes a 32-bit version of Linux' dynamic linker). The script is located at https://github.com/fr1tz/terminal-overload/blob/master/My%20Projects/main/game/overload.sh and it seems to work. Or at least there's a lack of feedback that it doesn't work ;)

fr1tz commented Mar 8, 2015

I assume using "." instead of "$origin" causes the linker to search for the libs relative to the current working dir. If that's the case it would be a potential security risk (a bit like having "." in your PATH).
For Terminal Overload releases I use '$ORIGIN/lib' as rpath (set using the "chrpath" utility). The script @eightyeight mentioned just checks if a 32-bit version of libGL is available, because that's the only dependency not included in the release distribution (which even includes a 32-bit version of Linux' dynamic linker). The script is located at https://github.com/fr1tz/terminal-overload/blob/master/My%20Projects/main/game/overload.sh and it seems to work. Or at least there's a lack of feedback that it doesn't work ;)

@LuisAntonRebollo

This comment has been minimized.

Show comment
Hide comment
@LuisAntonRebollo

LuisAntonRebollo Mar 8, 2015

Contributor

Fixed Clang.

Contributor

LuisAntonRebollo commented Mar 8, 2015

Fixed Clang.

LuisAntonRebollo added a commit that referenced this pull request Mar 8, 2015

@LuisAntonRebollo LuisAntonRebollo merged commit 946e748 into GarageGames:development Mar 8, 2015

1 check passed

default Merged build finished.
Details

@LuisAntonRebollo LuisAntonRebollo deleted the BeamNG:fix_rpath branch Mar 8, 2015

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