Comments (5)
Turns out DYLD_LIBRARY_PATH
is silently ignored on OS X Sierra due to System Integrity Protection (SIP), which can be turned off by booting into recovery mode by holding Cmd+R while booting. Open Terminal via Utilities and enter:
csrutil disable
Restart again. To re-enable repeat with, csrutil enable
from europa.
When I try to build Europa from source by calling ant release-dist
, I get "Env variable DYLD_BIND_AT_LAUNCH=YES must be set to build shared libraries" despite export
showing that DYLD_BIND_AT_LAUNCH=YES
:
ant release-dist ✔ 5963 01:09:53
Buildfile: /Users/petrus/Projects/europa/build.xml
findPlatform:
[echo] os.name='Mac OS X' os.arch='x86_64'
[echo] Running build for : family=unix os=mac 64bit=true
init:
init-unix:
release-dist:
findPlatform:
[echo] os.name='Mac OS X' os.arch='x86_64'
[echo] Running build for : family=unix os=mac 64bit=true
init:
init-unix:
build-cpp:
build-cpp-unix:
[echo] jam -s64BIT=1 -sLOGGER_TYPE= -sVARIANTS=DEV -sLIBRARIES=SHARED -sPLATFORM_FLAGS="" -sLINKLIBS="" -j1 build
[exec] Fatal build error:
[exec] Env variable DYLD_BIND_AT_LAUNCH=YES must be set to build shared libraries.
[exec]
Something weird with environment variables. Could this be related to SIP on OS X Sierra?
from europa.
Workaround
Copy the .dylib files in lib
folder to /usr/local/lib
. Not ideal, obviously.
from europa.
Any thoughts on resolving this issue folks?
from europa.
I've looked into this a couple of times, and I haven't come up with a "good" resolution using the ant/jam/make build. It seems like you can:
- Disable SIP as @theronic suggests.
- Set DYLD_LIBRARY_PATH in main via setenv()
- Link statically
- Use otool to fix up the paths
Building using CMake seems not to have this problem for some reason.
from europa.
Related Issues (20)
- Set up some sort of continuous integration HOT 1
- Better NDDL error reporting in PSUI
- Clarify if singleton base domain means "specified"
- Redundancies (and lack of type-safety) in ConstraintEngine::ChangeType and DomainListener::ChangeType HOT 2
- Complete quoting for parameters of some CMake commands
- reserved identifier violation HOT 2
- Remove unnecessary null pointer checks HOT 3
- Learn More Link 404 HOT 1
- How to build head of master?
- Cannot run program "jam" (in directory "/home/ubuntu/europa/src/PLASMA" HOT 10
- Compilation fails. HOT 11
- Symbol not found when launching europa. HOT 3
- Is this project maintained? HOT 4
- Potential bug in InputHandler.java
- Links for Barreiro and Tristan Smith broken on "What is Europa" page
- Figures are missing from wiki pages
- The documentation link is broken
- Original Error: Error during checkout at ./autobuild line 370.
- Rover core dumps HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from europa.