私はsrcからmysql-Shell 1.0.11をビルドしようとしています。インストール中、RPMはオプションではありません。要件の1つはlibmysqlclient 5.7+
。インストール済みmysql++
、mysql++-devel
、mysql-connector-python.noarch
、mysql-workbench-community
。 (Cmake)をビルドしようとすると、次のエラーが発生します。
Could not find static "libmysqlclient_r.a libmysqlclient.a" in MYSQL_LIB_DIR
これを機能させるには、何をインストールする必要がありますか?明らかにlibmysqlclientが必要ですが、その名前またはその名前に近い名前のyumには何もリストされていません。
CentOs7の使用。
TIA
yum whatprovidesは、特定のコマンドまたはlibを含むパッケージを検索できます。次に例を示します。
Sudo yum whatprovides libmysqlclient*
1:mariadb-libs-5.5.56-2.el7.i686 : The shared libraries required for
: MariaDB/MySQL clients
Repo : base
Matched from:
Provides : libmysqlclient.so.18
Provides : libmysqlclient.so.18(libmysqlclient_16)
Provides : libmysqlclient.so.18(libmysqlclient_18)
そして
Sudo yum install mariadb-libs-5.5.56-2.el7.i686
しかし、単純なyum install mysqlで取得できる場合は、srcからmysql-Shellをインストールすることをお勧めします。
CentOS 7でyum install mariadb-devel
を試す
# cat /etc/redhat-release
CentOS Linux release 7.6.1810 (Core)
パッケージをインストールします。
yum install mariadb mariadb-server mariadb-devel mariadb-libs luarocks lua-devel
yum group install "Development Tools"
luarocks install luasql-mysql MYSQL_INCDIR=/usr/include/mysql MYSQL_LIBDIR=/usr/lib64/mysql
そして最後に何かを得ました:
Installing https://luarocks.org/luasql-mysql-2.4.0-1.src.rock...
Using https://luarocks.org/luasql-mysql-2.4.0-1.src.rock... switching to 'build' mode
gcc -O2 -fPIC -I/usr/include -c src/luasql.c -o src/luasql.o -I/usr/include/mysql
gcc -O2 -fPIC -I/usr/include -c src/ls_mysql.c -o src/ls_mysql.o -I/usr/include/mysql
gcc -shared -o luasql/mysql.so -L/usr/lib64/lua/5.1 src/luasql.o src/ls_mysql.o -L/usr/lib64/mysql -Wl,-rpath,/usr/lib64/mysql: -lmysqlclient
Updating manifest for /usr/lib64/luarocks/rocks
No existing manifest. Attempting to rebuild...
luasql-mysql 2.4.0-1 is now built and installed in /usr (license: MIT/X11)
インストール済み:
# luarocks list
Installed rocks:
----------------
luasql-mysql
2.4.0-1 (installed) - /usr/lib64/luarocks/rocks
# find / -name libmysqlclient.so
/usr/lib64/mysql/libmysqlclient.so
# ln -s /usr/lib64/mysql/libmysqlclient.so /usr/lib64/libmysqlclient.so