Невозможно нормально работать в Mac OS X
Я установил версию сообщества Odoo 9 от Git в моей Mac OS X El Capitan 10.11.2, все мои шаги:
python --version
Python 2.7.10
git clone https://github.com/odoo/odoo.git
Checking out files: 100% (20501/20501), done.
Установлен PostgresApp в Applications
и добавлен путь в ~/.bash_profile
, выполнил то же самое.
export PATH=$PATH:/Applications/Postgres.app/Contents/Versions/latest/bin
Установленный пип
sudo easy_install pip
Finished processing dependencies for pip
У меня есть nodejs
, установленный в моей системе,
node -v
v5.0.0
npm -v
3.3.9
Установлены less
и less-plugin-clean-css
sudo npm install -g less less-plugin-clean-css
У меня установлен последний xcode,
xcode-select --install
xcode-select: error: command line tools are already installed, use "Software Update" to install updates
У меня установлен доморощенный,
/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
It appears Homebrew is already installed. If your intent is to reinstall you
should do the following before running this installer again:
ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/uninstall)"
The current contents of /usr/local are bin Cellar CODEOFCONDUCT.md CONTRIBUTING.md etc include lib Library LICENSE.txt opt README.md sbin share SUPPORTERS.md var .git .gitignore
Установленные другие библиотеки
brew install autoconf automake libtool
brew install libxml2 libxslt libevent
Установленные зависимости Python
sudo easy_install -U setuptools
Finished processing dependencies for setuptools
cd odoo/
sudo pip install --user -r requirements.txt
Successfully installed Mako-1.0.1 Pillow-2.7.0 Werkzeug-0.9.6 argparse-1.2.1 lxml-3.4.1 psutil-2.2.0 psycopg2-2.5.4 pyparsing-2.0.1 python-dateutil-1.5 python-ldap-2.4.19 pytz-2013.7 pyusb-1.0.0b2 qrcode-5.1 six-1.4.1
Запуск odoo
export LC_ALL=en_US.UTF-8
export LANG=en_US.UTF-8
./odoo.py --addons-path=addons --db-filter=mydb
В нем говорится
2016-02-10 16:51:42,351 3389 INFO ? openerp: OpenERP version 9.0c
2016-02-10 16:51:42,351 3389 INFO ? openerp: addons paths: ['/Users/anshad/Library/Application Support/Odoo/addons/9.0', u'/Users/anshad/odoo/addons', '/Users/anshad/odoo/openerp/addons']
2016-02-10 16:51:42,352 3389 INFO ? openerp: database: [email protected]:default
2016-02-10 16:51:42,444 3389 INFO ? openerp.service.server: HTTP service (werkzeug) running on 0.0.0.0:8069
И браузер говорит 500 500 Internal Server Error
и в терминале,
conn = _connect(dsn, connection_factory=connection_factory, async=async)
OperationalError: could not connect to server: No such file or directory
Is the server running locally and accepting
connections on Unix domain socket "/tmp/.s.PGSQL.5432"?
Запустите PostgresApp, чтобы решить эту проблему.
Теперь у меня появилось окно настройки базы данных без CSS, как показано на следующем скриншоте.
Создал базу данных mydbodoo
с паролем admin
и перешел на главную страницу http://localhost:8069/web/
Он показывает пустую страницу с черным заголовком и логотипом odoo, а также некоторые ошибки в терминале.
ImportError: No module named pyPdf
./odoo.py --addons-path=addons --db-filter=mydb
2016-02-10 17:02:12,220 3589 INFO ? openerp: OpenERP version 9.0c
2016-02-10 17:02:12,220 3589 INFO ? openerp: addons paths: ['/Users/anshad/Library/Application Support/Odoo/addons/9.0', u'/Users/anshad/odoo/addons', '/Users/anshad/odoo/openerp/addons']
2016-02-10 17:02:12,221 3589 INFO ? openerp: database: [email protected]:default
2016-02-10 17:02:12,314 3589 INFO ? openerp.service.server: HTTP service (werkzeug) running on 0.0.0.0:8069
2016-02-10 17:02:16,855 3589 INFO ? openerp.addons.bus.models.bus: Bus.loop listen imbus on db postgres
2016-02-10 17:02:16,888 3589 INFO ? werkzeug: 127.0.0.1 - - [10/Feb/2016 17:02:16] "GET /web/ HTTP/1.1" 500 -
2016-02-10 17:02:16,895 3589 ERROR ? werkzeug: Error on request:
Traceback (most recent call last):
File "/Library/Python/2.7/site-packages/werkzeug/serving.py", line 177, in run_wsgi
execute(self.server.app)
File "/Library/Python/2.7/site-packages/werkzeug/serving.py", line 165, in execute
application_iter = app(environ, start_response)
File "/Users/anshad/odoo/openerp/service/server.py", line 245, in app
return self.app(e, s)
File "/Users/anshad/odoo/openerp/service/wsgi_server.py", line 184, in application
return application_unproxied(environ, start_response)
File "/Users/anshad/odoo/openerp/service/wsgi_server.py", line 170, in application_unproxied
result = handler(environ, start_response)
File "/Users/anshad/odoo/openerp/http.py", line 1487, in __call__
self.load_addons()
File "/Users/anshad/odoo/openerp/http.py", line 1508, in load_addons
m = __import__('openerp.addons.' + module)
File "/Users/anshad/odoo/openerp/modules/module.py", line 61, in load_module
mod = imp.load_module('openerp.addons.' + module_part, f, path, descr)
File "/Users/anshad/odoo/addons/document/__init__.py", line 4, in <module>
import models
File "/Users/anshad/odoo/addons/document/models/__init__.py", line 4, in <module>
import ir_attachment
File "/Users/anshad/odoo/addons/document/models/ir_attachment.py", line 8, in <module>
import pyPdf
ImportError: No module named pyPdf
2016-02-10 17:02:17,708 3589 INFO mydbodoo openerp.modules.loading: loading 1 modules...
2016-02-10 17:02:17,716 3589 INFO mydbodoo openerp.modules.loading: 1 modules loaded in 0.01s, 0 queries
2016-02-10 17:02:17,719 3589 INFO mydbodoo openerp.modules.loading: loading 4 modules...
2016-02-10 17:02:17,727 3589 INFO mydbodoo openerp.modules.loading: 4 modules loaded in 0.01s, 0 queries
2016-02-10 17:02:17,899 3589 INFO mydbodoo openerp.modules.loading: Modules loaded.
2016-02-10 17:02:17,900 3589 INFO mydbodoo openerp.addons.base.ir.ir_http: Generating routing map
2016-02-10 17:02:18,249 3589 INFO mydbodoo werkzeug: 127.0.0.1 - - [10/Feb/2016 17:02:18] "GET /web/ HTTP/1.1" 200 -
2016-02-10 17:02:18,308 3589 INFO mydbodoo werkzeug: 127.0.0.1 - - [10/Feb/2016 17:02:18] "GET /web/content/341-42af255/web.assets_common.0.css HTTP/1.1" 304 -
2016-02-10 17:02:18,350 3589 INFO mydbodoo werkzeug: 127.0.0.1 - - [10/Feb/2016 17:02:18] "GET /web/static/src/css/full.css HTTP/1.1" 404 -
2016-02-10 17:02:18,367 3589 INFO mydbodoo werkzeug: 127.0.0.1 - - [10/Feb/2016 17:02:18] "GET /web/content/343-4d5beef/web.assets_backend.0.css HTTP/1.1" 304 -
2016-02-10 17:02:18,411 3589 INFO mydbodoo werkzeug: 127.0.0.1 - - [10/Feb/2016 17:02:18] "GET /web/content/344-4d5beef/web.assets_backend.js HTTP/1.1" 304 -
2016-02-10 17:02:18,428 3589 INFO mydbodoo werkzeug: 127.0.0.1 - - [10/Feb/2016 17:02:18] "GET /web/content/342-42af255/web.assets_common.js HTTP/1.1" 304 -
2016-02-10 17:02:18,663 3589 INFO mydbodoo werkzeug: 127.0.0.1 - - [10/Feb/2016 17:02:18] "GET /web/binary/company_logo HTTP/1.1" 304 -
2016-02-10 17:02:18,838 3589 INFO mydbodoo openerp.service.common: successful login from 'admin' using database 'mydbodoo'
2016-02-10 17:02:18,859 3589 INFO mydbodoo werkzeug: 127.0.0.1 - - [10/Feb/2016 17:02:18] "POST /web/session/get_session_info HTTP/1.1" 200 -
2016-02-10 17:02:18,893 3589 INFO mydbodoo werkzeug: 127.0.0.1 - - [10/Feb/2016 17:02:18] "POST /web/proxy/load HTTP/1.1" 200 -
2016-02-10 17:02:18,915 3589 INFO mydbodoo werkzeug: 127.0.0.1 - - [10/Feb/2016 17:02:18] "POST /web/session/modules HTTP/1.1" 200 -
2016-02-10 17:02:18,945 3589 INFO mydbodoo werkzeug: 127.0.0.1 - - [10/Feb/2016 17:02:18] "POST /web/dataset/search_read HTTP/1.1" 200 -
2016-02-10 17:02:18,945 3589 INFO mydbodoo werkzeug: 127.0.0.1 - - [10/Feb/2016 17:02:18] "POST /web/webclient/translations HTTP/1.1" 200 -
2016-02-10 17:02:18,991 3589 INFO mydbodoo werkzeug: 127.0.0.1 - - [10/Feb/2016 17:02:18] "GET /web/webclient/locale/en_US HTTP/1.1" 500 -
2016-02-10 17:02:18,998 3589 ERROR mydbodoo werkzeug: Error on request:
Traceback (most recent call last):
File "/Library/Python/2.7/site-packages/werkzeug/serving.py", line 177, in run_wsgi
execute(self.server.app)
File "/Library/Python/2.7/site-packages/werkzeug/serving.py", line 165, in execute
application_iter = app(environ, start_response)
File "/Users/anshad/odoo/openerp/service/server.py", line 245, in app
return self.app(e, s)
File "/Users/anshad/odoo/openerp/service/wsgi_server.py", line 184, in application
return application_unproxied(environ, start_response)
File "/Users/anshad/odoo/openerp/service/wsgi_server.py", line 170, in application_unproxied
result = handler(environ, start_response)
File "/Users/anshad/odoo/openerp/http.py", line 1488, in __call__
return self.dispatch(environ, start_response)
File "/Users/anshad/odoo/openerp/http.py", line 1652, in dispatch
result = ir_http._dispatch()
File "/Users/anshad/odoo/openerp/addons/base/ir/ir_http.py", line 186, in _dispatch
return self._handle_exception(e)
File "/Users/anshad/odoo/openerp/addons/base/ir/ir_http.py", line 157, in _handle_exception
return request._handle_exception(exception)
File "/Users/anshad/odoo/openerp/http.py", line 781, in _handle_exception
return super(HttpRequest, self)._handle_exception(exception)
File "/Users/anshad/odoo/openerp/addons/base/ir/ir_http.py", line 182, in _dispatch
result = request.dispatch()
File "/Users/anshad/odoo/openerp/http.py", line 840, in dispatch
r = self._call_function(**self.params)
File "/Users/anshad/odoo/openerp/http.py", line 316, in _call_function
return checked_call(self.db, *args, **kwargs)
File "/Users/anshad/odoo/openerp/service/model.py", line 118, in wrapper
return f(dbname, *args, **kwargs)
File "/Users/anshad/odoo/openerp/http.py", line 309, in checked_call
result = self.endpoint(*a, **kw)
File "/Users/anshad/odoo/openerp/http.py", line 959, in __call__
return self.method(*args, **kw)
File "/Users/anshad/odoo/openerp/http.py", line 509, in response_wrap
response = f(*args, **kw)
File "/Users/anshad/odoo/addons/web/controllers/main.py", line 505, in load_locale
addons_path = http.addons_manifest['web']['addons_path']
KeyError: 'web'
Экранный снимок: терминал и файловая система
![введите описание изображения здесь]()
Экранный снимок: окно выбора базы данных
![введите описание изображения здесь]()
Экранный снимок: Главное окно
![введите описание изображения здесь]()
Пробовал sudo pip install pyPdf
, и он говорит Requirement already satisfied (use --upgrade to upgrade): pyPdf in /Users/anshad/Library/Python/2.7/lib/python/site-packages
Ответы
Ответ 1
Я только что прошел настройку на двух системах, одна из них - Mac OS X El Capitan 10.11.2, а другая - моя основная ОС - Ubuntu 15.04 (там все стало намного проще, но, возможно, это просто потому, что я использую Ubuntu on ежедневно).
Ниже приведены шаги установки для обеих систем. Убедитесь, что каждая команда успешно завершена (по крайней мере, не сообщает о каких-либо ошибках).
Mac OS X El Capitan 10.11.2
Предпосылки: у меня уже были git
и python 2.7.10
.
1) Репозиторий clone odoo:
git clone https://github.com/odoo/odoo.git
2) Загрузите и установите Postgresapp
- Перейдите к http://postgresapp.com/, загрузите
- Откройте его в Finder, перетащите в приложение, дважды щелкните
- Появится приложение Postgres, дважды щелкните его
- Извините, если эти шаги очевидны, это просто для меня, поскольку я не являюсь пользователем Mac OS
Теперь добавьте в ~/.bash_profile
:
export PATH=$PATH:/Applications/Postgres.app/Contents/Versions/latest/bin
И просто выполните команду над ним, если у вас уже есть открытый терминал.
3) Установите pip
sudo easy_install pip
4) Установите nodejs
- Перейдите к https://nodejs.org,
- Загрузить node v4.3.0
- Перейдите в приложение, запустите и установите
- Откройте терминал и убедитесь, что доступны команды
node
и npm
5) Установите less
и less-plugin-clean-css
sudo npm install -g less less-plugin-clean-css
Должен показать вывод следующим образом:
/usr/local/bin/lessc -> /usr/local/lib/node_modules/less/bin/lessc
[email protected] /usr/local/lib/node_modules/less-plugin-clean-css
└── [email protected] ([email protected], [email protected])
[email protected] /usr/local/lib/node_modules/less
├── [email protected]
├── [email protected]
├── [email protected]
├── [email protected] ([email protected])
├── [email protected] ([email protected])
├── [email protected] ([email protected])
├── [email protected] ([email protected])
└── [email protected] ([email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected])
6) Установить бинарные зависимости
Я думаю, что не все приведенные ниже шаги действительно необходимы, но я их выполнил, поэтому включим только то, что они действительно были необходимы.
- Запустите в терминале
xcode-select --install
, когда появится диалог - соглашайтесь установить
- Перейдите в http://brew.sh и следуйте инструкциям по установке homebrew
Как только у вас есть brew
, запустите в терминале следующее:
brew install autoconf automake libtool
brew install libxml2 libxslt libevent
7) Установите зависимости python
sudo easy_install -U setuptools
pip install --user -r requirements.txt
В конце должно появиться что-то вроде этого:
Successfully installed Babel-1.3 Jinja2-2.7.3 Mako-1.0.1 MarkupSafe-0.23 Pillow-2.7.0 PyYAML-3.11 Python-Chart-1.39 Werkzeug-0.9.6 argparse-1.2.1 beautifulsoup4-4.4.1 decorator-3.4.0 docutils-0.12 feedparser-5.1.3 gdata-2.0.18 gevent-1.0.2 greenlet-0.4.7 jcconv-0.2.3 lxml-3.4.1 mock-1.0.1 ofxparse-0.14 passlib-1.6.2 psutil-2.2.0 psycogreen-1.0 psycopg2-2.5.4 pyPdf-1.13 pydot-1.0.2 pyparsing-2.0.1 pyserial-2.7 python-dateutil-1.5 python-ldap-2.4.19 python-openid-2.2.5 python-stdnum-1.2 pytz-2013.7 pyusb-1.0.0b2 qrcode-5.1 reportlab-3.1.44 requests-2.6.0 six-1.4.1 suds-jurko-0.6 vatnumber-1.2 vobject-0.6.6 xlwt-0.7.5
8) Запустите odoo
cd odoo # change dir to the folder you cloned odoo to
export LC_ALL=en_US.UTF-8
export LANG=en_US.UTF-8
# Re-check parameters, it looks like addons path you used is incorrect
./odoo.py --addons-path=addons --db-filter=mydb
Теперь вы должны увидеть результат следующим образом:
INFO ? openerp: OpenERP version 9.0c
INFO ? openerp: addons paths: ['/Users/dev/Library/Application Support/Odoo/addons/9.0', u'/Users/dev/projects/odoo/addons', '/Users/dev/projects/odoo/openerp/addons']
INFO ? openerp: database: [email protected]:default
INFO ? openerp.service.server: HTTP service (werkzeug) running on 0.0.0.0:8069
9) Откройте odoo
в своем браузере
- Перейдите к http://localhost:8069
- Появится окно настройки базы данных (см. первый снимок экрана ниже)
- Введите имя базы данных =
mydbodoo
(я думаю, здесь префикс mydb
) и пароль admin
- Вы также можете установить флажок, чтобы загрузить демо-данные.
- Нажмите
Create database
- Подождите, и вы должны быть перенаправлены в интерфейс
odoo
(см. второй снимок экрана).
Готово!
![Конфигурация данных Odoo]()
![Пользовательский интерфейс Odoo]()
Обновление: Mac OS X El Capitan 10.11.2 с virtualenv
Сделайте то же самое, что и выше, на шаге (7)
не запускайте pip install --user -r requirements.txt
и вместо этого:
pip install virtualenv # not sure here, sudo may be needed
mkdir ~/venv
cd ~/venv
mkdir odoo
virtualenv odoo
source ~/venv/odoo/bin/activate
cd ~/path/to/odoo
pip install -r requirements.txt # no sudo here!
Теперь переходим к шагу (8)
. Каждый раз, прежде чем запускать odoo, обязательно сначала активируйте virtualenv:
source ~/venv/odoo/bin/activate
export LC_ALL=en_US.UTF-8
export LANG=en_US.UTF-8
./odoo.py --addons-path=addons --db-filter=mydb
Ubuntu 15.04
Предпосылки: у меня уже были postgresql 9.4.5, nodesjs 0.10.25 и python 2.7.8.
Установка:
git clone https://github.com/odoo/odoo.git
cd odoo
sudo apt-get install libldap2-dev libsasl2-dev libevent-dev libxslt1-dev libxml2-dev
pip install -r requirements.txt
sudo npm install -g less less-plugin-clean-css
./odoo.py --addons-path=addons --db-filter=mydb
Теперь все настроено так же, как на шаге (9) для Mac OS.
Ответ 2
Их может быть несколько проблем с модулями, библиотеками, пакетами или узлами python.
Попробуйте с информацией ниже:
-
Следующая команда установит все модули python, требуемые Odoo.
pip install lxml
-
Проверьте версию werkzeug. Это будет 0.9.6, если не обновить его.
pip show werkzeug #this command will show the details of werkzeug
pip install werkzeug==0.9.6 #this command will install werkzeug up to 0.9.6
-
Установите nodejs через ваш предпочтительный менеджер пакетов (homebrew, macports), то установите less и less-plugin-clean-css:
npm install -g less
npm install -g less-plugin-clean-css
Для получения дополнительной информации Документация по настройке Odoo9.
Примечание
Вход и пароль по умолчанию будут администратором и администратором.
EDIT: 1
Попробуйте разрешить ImportError: нет модуля с именем pyPdf с командой ниже.
pip install pypdf
EDIT: 2
Если вы не нашли дистрибьютора релевантности, чем попробуйте с помощью команды ниже.
pip install --allow-unverified pyPdf pyPdf
Ответ 3
Я сделал все, но не смог запустить odoo на моем mac 10.11.6.
У меня была эта проблема, когда я пытаюсь запустить odoo ./odoo.py
psycopg2 can't find symbol _PQbackendPID
Я узнал, что у меня есть много версий python, установленных в диапазоне от 2,3 до 3,5
Удалена вся версия python Как удалить Python 2.7 на Mac OS X 10.6.4?
$ brew uninstall --force python3
$ brew uninstall --force python
Удалить все изменения в ~/.bash_profile
также удален /usr/local/lib/python2.7/site-packages
Затем начните с начала:
$ ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
$ brew update
$ brew install python
$ brew install postgresql
Чтобы запустить PostgreSQL прямо сейчас и автоматически при запуске системы, мы запускаем:
$ ln -sfv /usr/local/opt/postgresql/*.plist ~/Library/LaunchAgents
$ launchctl load ~/Library/LaunchAgents/homebrew.mxcl.postgresql.plist
// I had error: LaunchAgents not found
// If you have error you can download postgres from postgresapp.com to manually start the server
Установите некоторые зависимости
$ brew install freetype jpeg libpng libtiff webp xz
$ pip install --upgrade pip
$ pip uninstall virtualenv
$ pip install virtualenv
// Delete existing ~/odoo-env folder first
$ virtualenv ~/odoo-env
$ . ~/odoo-env/bin/activate
Клон git репозиторий ветвь 9.0
$ git clone https://github.com/odoo/odoo.git -b 9.0
перейдите в клонированный каталог odoo (с cd
) и запустите (вы должны быть в своей виртуальной среде):
$ pip install -r requirements.txt
Если успешно установлено, запустите
$ export LC_ALL=en_US.UTF-8
$ export LANG=en_US.UTF-8
$ python ./odoo.py
Замечательный учебник Кристоф Гизель
Ответ 4
Я получаю ту же проблему, и кажется, что моя система не использует правильную библиотеку Six.
Сначала вы можете обновить свою библиотеку.
sudo pip2 install six -U
И как только вы это сделаете, ваша система снова сможет использовать неправильную библиотеку. Чтобы проверить это, вы можете создать файл python, подобный этому
#vi testsix.py to create the file
#type i to insert
import six
print six.__file__
#escape
#type wq to save
#chmod +x testsix.py
#python testsix.py
Затем, если вы читаете
/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python/six.pyc
Затем вы должны удалить этот файл
rm -rf /System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python/six.*
Затем вы можете повторно проверить файл testsix.py и проверить, что вы получили этот путь
/Library/Python/2.7/site-packages/six.pyc
Затем вы должны заново запустить свой сервер odoo.
Я получаю это от ответа Oriol Nieto Я пытался решить предыдущую внутреннюю ошибку сервера, которую я получаю.
Обратите внимание, что если вы используете El Capitan, и вы встречаете некоторые проблемы с разрешением даже с помощью sudo, вам может потребоваться проверить эту ссылку чтобы удалить некоторый корневой доступ