我在Mac OS X El Capitan 10.11.2中安装了Git的Odoo 9社区版,我的所有步骤都是:
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: default@default: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: default@default: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
答案 0 :(得分:16)
我刚刚在两个系统上进行了设置,一个是Mac OS X El Capitan 10.11.2,另一个是我的主要操作系统 - Ubuntu 15.04(事情变得更容易,但也许只是因为我使用Ubuntu每日)。
以下是两个系统的安装步骤。确保每个命令都成功完成(至少不报告任何错误)。
先决条件:我已经有git
和python 2.7.10
。
1)克隆odoo存储库:
git clone https://github.com/odoo/odoo.git
2)下载并安装Postgresapp
现在添加到~/.bash_profile
:
export PATH=$PATH:/Applications/Postgres.app/Contents/Versions/latest/bin
如果您已经拥有开放终端,只需执行上面的命令。
3)安装pip
sudo easy_install pip
4)安装nodejs
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
less-plugin-clean-css@1.5.1 /usr/local/lib/node_modules/less-plugin-clean-css
└── clean-css@3.4.9 (source-map@0.4.4, commander@2.8.1)
less@2.6.0 /usr/local/lib/node_modules/less
├── mime@1.3.4
├── graceful-fs@3.0.8
├── image-size@0.3.5
├── errno@0.1.4 (prr@0.0.0)
├── promise@6.1.0 (asap@1.0.0)
├── source-map@0.4.4 (amdefine@1.0.0)
├── mkdirp@0.5.1 (minimist@0.0.8)
└── request@2.69.0 (aws-sign2@0.6.0, forever-agent@0.6.1, tunnel-agent@0.4.2, oauth-sign@0.8.1, is-typedarray@1.0.0, caseless@0.11.0, stringstream@0.0.5, isstream@0.1.2, json-stringify-safe@5.0.1, extend@3.0.0, tough-cookie@2.2.1, node-uuid@1.4.7, qs@6.0.2, combined-stream@1.0.5, mime-types@2.1.9, form-data@1.0.0-rc3, aws4@1.2.1, hawk@3.1.3, bl@1.0.2, har-validator@2.0.6, http-signature@1.1.1)
6)安装二进制依赖项
我认为下面的所有步骤并非都是必要的,但是我执行了这些步骤,因此仅包括他们实际需要的情况。
xcode-select --install
中运行 - 同意安装获得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: default@default:default
INFO ? openerp.service.server: HTTP service (werkzeug) running on 0.0.0.0:8069
9)在浏览器中打开odoo
mydbodoo
(我认为前缀mydb
在这里很重要)和密码admin
Create database
odoo
界面(请参阅第二个屏幕截图)完成!
与上述相同,在步骤(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
先决条件:我已经拥有postgresql 9.4.5,nodejs 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
这就是全部,现在设置方法与Mac OS的步骤(9)相同。
答案 1 :(得分:5)
他们可能是python模块,库,包或nodejs的一些问题。
尝试以下信息:
以下命令将安装Odoo所需的所有python模块。
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
通过首选软件包管理器(homebrew,macports)安装 nodejs ,然后安装 less 和 less-plugin -clean-CSS :
npm install -g less
npm install -g less-plugin-clean-css
有关详细信息,请Odoo9 setup documentation.
注意强>:
默认登录名和密码为 admin 和 admin 。
编辑:1
尝试使用以下命令解决 ImportError:没有名为pyPdf的模块。
pip install pypdf
编辑:2
如果您没有找到相关分销商,请尝试使用以下命令。
pip install --allow-unverified pyPdf pyPdf
答案 2 :(得分:1)
我做了所有事情,但无法在我的Mac 10.11.6上运行odoo。
当我尝试运行odoo ./odoo.py
psycopg2 can't find symbol _PQbackendPID
我发现我安装了许多版本的python,范围从2.3到3.5
删除了所有版本的python How to uninstall Python 2.7 on a 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 repository分支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
的精彩教程
答案 3 :(得分:0)
我遇到同样的问题,似乎我的系统没有使用正确的六库。 您首先要做的是更新您的图书馆
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's answer得到的,我试图解决之前的内部服务器错误。
请注意,如果您使用El Capitan并且即使使用sudo也遇到一些权限问题,您可能需要检查link to remove some root access