我现在已经在两台计算机上重现了这种症状,自从将计算机升级到macOS Mojave以来,cmake似乎不再寻找/usr/local/lib(或更恰当地是$(brew --prefix)/lib)由Homebrew提供的库。
尽管有一些方法可以避免这种情况(例如,使用EXECUTE_PROCESS; 搜索结果,然后将结果添加到LINK_LIBRARIES(...)命令中),但都没有理想的方法。莫哈韦沙漠(Mojave)发生了什么变化以打破这种行为?
临时解决方法是将以下内容添加到CMakeLists.txt:
# WARNING: Don't hard-code this path
LINK_DIRECTORIES(/usr/local/lib)
Run Code Online (Sandbox Code Playgroud)
我已经尝试brew doctor并更新了所有自制软件包,但无济于事。
cmake(make)显示的特定错误是:
ld: library not found for -l<somelib>
Run Code Online (Sandbox Code Playgroud)
我正在尝试将Django应用程序迁移到postgresql,但我无法让Django认识到实际安装了postgres.我已将它安装在我的机器上,并且它在我的计算机上正常运行,但是当我尝试将其设置为我的默认设置时settings.py,我收到错误:
错误是:没有名为postgresql.base的模块
我已经完成了两次演练,在这里和这里使用Django运行postgresql ,但我继续得到这个错误.我应该在我的虚拟环境中安装postgresql吗?我试过这样做,但没有运气.
settings.py
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.postgresql_psycopg2',
'NAME': 'pygamers',
'USER': 'myusername',
'PASSWORD': '',
'HOST': 'localhost',
'PORT': '5432',
}
}
Run Code Online (Sandbox Code Playgroud)
完整的追溯
Unhandled exception in thread started by <function wrapper at 0x10ab64410>
Traceback (most recent call last):
File "/Users/tomeldridge/Desktop/Misc/Hobbies/Programming/Projects/Pygamers/venv/lib/python2.7/site-packages/django/utils/autoreload.py", line 226, in wrapper
fn(*args, **kwargs)
File "/Users/tomeldridge/Desktop/Misc/Hobbies/Programming/Projects/Pygamers/venv/lib/python2.7/site-packages/django/core/management/commands/runserver.py", line 109, in inner_run
autoreload.raise_last_exception()
File "/Users/tomeldridge/Desktop/Misc/Hobbies/Programming/Projects/Pygamers/venv/lib/python2.7/site-packages/django/utils/autoreload.py", line 249, in raise_last_exception
six.reraise(*_exception)
File "/Users/tomeldridge/Desktop/Misc/Hobbies/Programming/Projects/Pygamers/venv/lib/python2.7/site-packages/django/utils/autoreload.py", line 226, in wrapper
fn(*args, **kwargs)
File "/Users/tomeldridge/Desktop/Misc/Hobbies/Programming/Projects/Pygamers/venv/lib/python2.7/site-packages/django/__init__.py", line 18, …Run Code Online (Sandbox Code Playgroud)