为提高效率,提问时请提供以下信息,问题描述清晰可优先响应。
【DM版本】:DM8
【操作系统】:银河麒麟 Desktop-V10-SP1-Release-2107
【CPU】:兆芯
【问题描述】*:
在 /etc/profile 与 .bashrc里都加了:
export DM_HOME=/opt/dmdbms
export PATH=$DM_HOME/bin:$PATH
export LD_LIBRARY_PATH=$DM_HOME/bin:$LD_LIBRARY_PATH
在终端 echo $PATH 与 echo $LD_LIBRARY_PATH都能看到:
/opt/dmdbms/bin
ldd dmPython.cpython-38-x86_64-linux-gnu.so 得到
linux-vdso.so.1 (0x00007ffda6482000)
libdmdpi.so => /opt/dmdbms/bin/libdmdpi.so (0x00007f7381f5e000)
libpthread.so.0 => /usr/lib/x86_64-linux-gnu/libpthread.so.0 (0x00007f7381f3b000)
libc.so.6 => /usr/lib/x86_64-linux-gnu/libc.so.6 (0x00007f7381d49000)
librt.so.1 => /usr/lib/x86_64-linux-gnu/librt.so.1 (0x00007f7381d3e000)
libdl.so.2 => /usr/lib/x86_64-linux-gnu/libdl.so.2 (0x00007f7381d38000)
libstdc++.so.6 => /usr/lib/x86_64-linux-gnu/libstdc++.so.6 (0x00007f7381b54000)
libm.so.6 => /usr/lib/x86_64-linux-gnu/libm.so.6 (0x00007f7381a05000)
libgcc_s.so.1 => /usr/lib/x86_64-linux-gnu/libgcc_s.so.1 (0x00007f73819ea000)
/lib64/ld-linux-x86-64.so.2 (0x00007f7382c42000)
python3 进入console,再 import dmPython 也没有任何问题:
[GCC 9.3.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import dmPython
>>>
但代码中import dmPython就有错误:
Traceback (most recent call last):
File "chengde/source/app.py", line 7, in <module>
import urls
File "/home/guest/chengde/source/urls.py", line 4, in <module>
from handlers import home
File "/home/guest/chengde/source/handlers/__init__.py", line 4, in <module>
from . import admin_handler
File "/home/guest/chengde/source/handlers/admin_handler.py", line 19, in <module>
from models import common
File "/home/guest/chengde/source/models/common.py", line 5, in <module>
from models import async_db
File "/home/guest/chengde/source/models/async_db.py", line 12, in <module>
import dmPython
这是为什么呢?
你的代码是在虚拟环境跑的嘛,如果是使用了类似pycharm的编辑器,可能会默认创建虚拟环境,你在虚拟环境中可能没有安装dmpython。