2015-10-02 12 views
10

बस एल कैप्टन 10.11 करने के लिए अपने मैक अपडेट किया गया। मैं अजवाइन 3.1 के साथ Django 1.6 भागने की कोशिश कर रहा हूँ और मैं इस त्रुटि अब हो रही है:OSError: dlopen (libSystem.dylib, 6): छवि नहीं मिला

Unhandled exception in thread started by <function wrapper at 0x10f861050> 
Traceback (most recent call last): 
    File "/Library/Python/2.7/site-packages/django/utils/autoreload.py", line 93, in wrapper 
    fn(*args, **kwargs) 
    File "/Library/Python/2.7/site-packages/django/core/management/commands/runserver.py", line 101, in inner_run 
    self.validate(display_num_errors=True) 
    File "/Library/Python/2.7/site-packages/django/core/management/base.py", line 310, in validate 
    num_errors = get_validation_errors(s, app) 
    File "/Library/Python/2.7/site-packages/django/core/management/validation.py", line 34, in get_validation_errors 
    for (app_name, error) in get_app_errors().items(): 
    File "/Library/Python/2.7/site-packages/django/db/models/loading.py", line 196, in get_app_errors 
    self._populate() 
    File "/Library/Python/2.7/site-packages/django/db/models/loading.py", line 75, in _populate 
    self.load_app(app_name, True) 
    File "/Library/Python/2.7/site-packages/django/db/models/loading.py", line 99, in load_app 
    models = import_module('%s.models' % app_name) 
    File "/Library/Python/2.7/site-packages/django/utils/importlib.py", line 40, in import_module 
    __import__(name) 
    File "/Library/Python/2.7/site-packages/debug_toolbar/models.py", line 9, in <module> 
    dt_settings.patch_all() 
    File "/Library/Python/2.7/site-packages/debug_toolbar/settings.py", line 215, in patch_all 
    patch_root_urlconf() 
    File "/Library/Python/2.7/site-packages/debug_toolbar/settings.py", line 203, in patch_root_urlconf 
    reverse('djdt:render_panel') 
    File "/Library/Python/2.7/site-packages/django/core/urlresolvers.py", line 503, in reverse 
    app_list = resolver.app_dict[ns] 
    File "/Library/Python/2.7/site-packages/django/core/urlresolvers.py", line 329, in app_dict 
    self._populate() 
    File "/Library/Python/2.7/site-packages/django/core/urlresolvers.py", line 267, in _populate 
    for pattern in reversed(self.url_patterns): 
    File "/Library/Python/2.7/site-packages/django/core/urlresolvers.py", line 365, in url_patterns 
    patterns = getattr(self.urlconf_module, "urlpatterns", self.urlconf_module) 
    File "/Library/Python/2.7/site-packages/django/core/urlresolvers.py", line 360, in urlconf_module 
    self._urlconf_module = import_module(self.urlconf_name) 
    File "/Library/Python/2.7/site-packages/django/utils/importlib.py", line 40, in import_module 
    __import__(name) 
    File "/Users/pedrotorres/Documents/work/projects/bparts/netpecasv2/urls.py", line 10, in <module> 
    url(r'', include('Common.urls')), 
    File "/Library/Python/2.7/site-packages/django/conf/urls/__init__.py", line 26, in include 
    urlconf_module = import_module(urlconf_module) 
    File "/Library/Python/2.7/site-packages/django/utils/importlib.py", line 40, in import_module 
    __import__(name) 
    File "/Users/pedrotorres/Documents/work/projects/bparts/Common/urls.py", line 3, in <module> 
    from APIMobile.views import request_product_info_by_qrcode 
    File "/Users/pedrotorres/Documents/work/projects/bparts/APIMobile/views.py", line 9, in <module> 
    from Common.views import resizeImage, token_generator, getWatermarkImage, filterProductsByBrandModelVersionYear, \ 
    File "/Users/pedrotorres/Documents/work/projects/bparts/Common/views.py", line 34, in <module> 
    from Common.tasks import turn_off_demo_mode_new_workshop 
    File "/Users/pedrotorres/Documents/work/projects/bparts/Common/tasks.py", line 3, in <module> 
    from netpecasv2.celeryapp import app 
    File "/Users/pedrotorres/Documents/work/projects/bparts/netpecasv2/celeryapp.py", line 5, in <module> 
    from celery import Celery 
    File "/Library/Python/2.7/site-packages/celery/__init__.py", line 130, in <module> 
    from celery import five 
    File "/Library/Python/2.7/site-packages/celery/five.py", line 51, in <module> 
    from kombu.five import monotonic 
    File "/Library/Python/2.7/site-packages/kombu/five.py", line 52, in <module> 
    libSystem = ctypes.CDLL('libSystem.dylib') 
    File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/ctypes/__init__.py", line 365, in __init__ 
    self._handle = _dlopen(self._name, mode) 
OSError: dlopen(libSystem.dylib, 6): image not found 

सब कुछ पहले ठीक काम किया। इसे ठीक करने का समाधान नहीं मिल रहा है। मैंने यह धागा देखा है लेकिन काम नहीं करता है: "OSError: dlopen(libSystem.dylib, 6): image not found" (OS X + macports + Celery 3.1.7)

मेरे पास पहले कोई DYLD_FALLBACK_LIBRARY_PATH नहीं था।

export DYLD_FALLBACK_LIBRARY_PATH="/usr/lib":$DYLD_FALLBACK_LIBRARY_PATH 

लेकिन अजगर लाइब्रेरी नहीं मिल सकता है के बावजूद यह अंतर्गत स्थित किया जा रहा "/ usr/lib"

किसी को भी इस तरह एक समस्या थी गया है: मैं करने की कोशिश की?

उत्तर

12

मुझे संदेह है (लेकिन पुष्टि नहीं कर सकता) ओएसएक्स एल कैपिटन के System Integrity Protection (SIP) आपके /usr/lib फ़ोल्डर तक पहुंच को रोक रहा है।

यह सुरक्षा सुविधा के उद्देश्य को चरम और पराजित करेगा, लेकिन आप ओएस एक्स रिकवरी विभाजन में बूट करके एसआईपी को अक्षम करने का प्रयास कर सकते हैं, csrutil disable निष्पादित कर रहे हैं और रिबूट कर रहे हैं ... कम से कम एक और विकल्प/कार्य-आसपास तक पाया जा सकता है ।

ArsTechnica एक लेख यहां है: http://arstechnica.com/apple/2015/09/os-x-10-11-el-capitan-the-ars-technica-review/9/

और एक ऐसी ही यहां मुद्दा यह वर्णित है: http://blog.honekamp.net/blog/2015/09/07/el-cap-and-my-printer/

अधिक पर हैकर समाचार यहाँ चर्चा: https://news.ycombinator.com/item?id=10309576

+2

ठीक है, उस समाधान के बावजूद, मैंने कोशिश की और यह काम किया। अभी तक का सबसे अच्छा समाधान। – pedrotorres

+0

@ जो यंग: एल कैपिटन में अपग्रेड करने के बाद से यह मेरे लिए भी मामला हो सकता है मैं अब अजवाइन नहीं चला सकता। मैं स्थानीय विकास के लिए व्यापक रूप से अजवाइन का उपयोग कर रहा हूं और मुझे वास्तव में इसकी आवश्यकता है, लेकिन जैसा कि आपने बताया है, एसआईपी को पूरी तरह अक्षम करने के लिए यह एक चरम उपाय है। क्या कोई अन्य समाधान है जो आप सुझा सकते हैं? – SpiXel

+1

बस एल कैपिटन में अपग्रेड किया गया। मेरे लिए भी काम किया। उन लोगों के लिए जो पहले से नहीं जानते हैं, आप बूट-अप के दौरान सीएमडी + आर धारण करके अपने मैक के लिए रिकवरी मोड खोल सकते हैं। धन्यवाद जो! –

2

मैं एक ही मुद्दा हो रही अजवाइन में भाग काम करने के लिए।

मैं कुछ त्वरित परीक्षण किया था और यहाँ मैं क्या पाया है, लेकिन अभी तक एक विशेष कारण पर यह पिन नहीं कर सकते है: एक

। ctypes.CDLL ("libSystem.dylib") के साथ स्टॉक पायथन छवि में परिणाम त्रुटि नहीं मिली।

बी। ctypes.CDLL साथ शेयर अजगर ("/ usr/lib/libSystem.dylib") काम करता है

सी। ctypes.CDLL ("libSystem.dylib") के साथ वर्चुअलनव पायथन काम करता है

0

पाइथन को पुनर्स्थापित करने से मेरे लिए समस्या हल हो गई। ब्रू का उपयोग करके आप बस brew install python कर सकते हैं। यह कहता है कि आप /usr/local को लिखने की अनुमति की जरूरत है, से अनुमतियों को परिवर्तित करने का प्रयास करें, और उसके अजगर स्थापित करें।

3

मैं "बिलियर्ड, अजवाइन, कोम्बु, AMQP" उन चार संकुल की स्थापना रद्द करें। फिर github से नवीनतम संस्करण को पुनर्स्थापित करें

+2

'पाइप इंस्टॉल सेलेरी - अपग्रेड' ने एसआईपी को अक्षम किए बिना मेरे लिए किया था। –

2

मैं ओएस एक्स एल कैप्टन को ओएस को अपग्रेड करने के ठीक बाद भी एक ही समस्या में भाग गया। एसआईपी को अक्षम करना चाल करता है, लेकिन अगर कोई आरामदायक नहीं है कि साइट-पैकेज में कुछ मॉड्यूल में पांच.py अपडेट करने में मदद मिलेगी।(मैं जानता हूँ कि यह है कि अच्छा नहीं है, लेकिन यह रूप में लंबे समय के रूप में आप जानते हैं कि आप क्या कर रहे ठीक है)

अद्यतन स्थानों है कि DLL का उपयोग निम्नलिखित मॉड्यूल

line 145 of site-packages/amqp/five.py 
line 52 of site-packages/kombu/five.py 
line 42 of site-packages/billiard/five.py 

अद्यतन करने के लिए निरपेक्ष पथ के लिए:

libSystem = ctypes.CDLL('libSystem.dylib') => libSystem = ctypes.CDLL('/usr/lib/libSystem.dylib') 

आशा है कि यह मदद करता है,)

10
pip install --upgrade billiard 
pip install --upgrade celery 
pip install --upgrade kombu 
pip install --upgrade amqp 

यह काम करना चाहिए।

+2

कृपया कोड-केवल उत्तरों के लिए स्पष्टीकरण जोड़ें। –

+0

धन्यवाद टिएक्सिन गुओ –

+1

इसने इसे मेरे लिए हल किया – Heliodor

0

मैंने जिथब से इन पुस्तकालयों के नवीनतम संस्करणों को अपडेट करने का प्रयास किया, लेकिन इससे मदद नहीं मिली।

python -c "import celery" 

इस ओएस का एक मूलभूत सुरक्षा सुविधा को अक्षम करने के लिए बेहतर लगता है, और virtualenv का अपना है (: सरल समाधान है कि मैं मिल गया है virtualenv

virtualenv myenv 
cd myenv 
source bin/activate 
pip install celery 

उपयोग करने के लिए पुष्टि करने के लिए यह काम किया है अच्छी तरह से प्रलेखित) लाभ।

0

आप वर्तमान अजवाइन संस्करण को हटा सकते हैं, और उसके बाद इसे http://pypi.python.org/pypi/celery/ से डाउनलोड करें, सॉर्स कोड बनाएं और इंस्टॉल करें। यह मेरे लिए सहायक है, और मुझे आशा है कि आप ऐसा करेंगे।

संबंधित मुद्दे