如何在NVIDIA Jetson上正确安装MariaDB Connector/C和mariadb python包?

jm2pwxwz  于 10个月前  发布在  Python
关注(0)|答案(1)|浏览(127)

我无法在NVIDIA Jetson AGX Xavier上正确安装MariaDB Connecter/C和mariadb python包并进行协作。显然,.so文件最终位于python包无法找到的位置。我该如何纠正?以下是我目前正在采取的步骤...
1.从here下载并解压缩源代码tarball。
1.构建并安装MariaDB Connector/C

mkdir build
cd build
cmake .. -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=/usr/local
make
sudo make install

字符串
这将在/usr/local/lib/mariadb中安装库文件。

gatekeeper@gatekeeper-agx02:/usr/local/lib/mariadb$ ls
libmariadbclient.a  libmariadb.so  libmariadb.so.3  plugin


1.安装python包

pip install mariadb


然后,当我启动python并尝试导入mariadb包时,我得到了这个错误:

gatekeeper@gatekeeper-agx02:~$ python
Python 3.6.9 (default, Jan 26 2021, 15:33:00) 
[GCC 8.4.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import mariadb
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/home/gatekeeper/.local/lib/python3.6/site-packages/mariadb/__init__.py", line 10, in <module>
    from ._mariadb import (
ImportError: libmariadb.so.3: cannot open shared object file: No such file or directory


如何更改库安装目录(以及更改为什么路径名?)或将python包指向正确的位置?

uelo1irk

uelo1irk1#

我无法通过cmake选项让它工作,但做了以下(黑客)解决方案工作:

cd /usr/local/lib; sudo cp -r mariadb/* ./

字符串
这只是将/usr/local/lib/mariadb/*中的所有内容复制到/usr/local/lib中。

相关问题