sphinx安装错误

发布于 2024-10-15 12:47:24 字数 3378 浏览 0 评论 0原文

我尝试在 MacOSX 雪豹 10.6.4 上安装 Sphinx。我遵循的步骤是:

./configure --prefix=/usr/local --with-mysql=/usr/local/mysql 制作 sudo make install

在“make”时,出现以下错误:

Making all in src
if test -d ../.svn; then svn info .. --xml | perl svnxrev.pl; fi;
make  all-am
g++ -DHAVE_CONFIG_H -I. -I../config  -DSYSCONFDIR="\"/usr/local/etc\"" -I/usr/local/include -I/usr/local/mysql/include  -Os -g -fno-common -fno-strict-aliasing -arch i386   -Wall -g -D_FILE_OFFSET_BITS=64 -O3 -DNDEBUG -MT sphinx.o -MD -MP -MF .deps/sphinx.Tpo -c -o sphinx.o sphinx.cpp
In file included from /usr/include/sql.h:92,
                 from /usr/include/sqlext.h:82,
                 from sphinx.h:69,
                 from sphinx.cpp:14:
/usr/include/iodbcunix.h:128: error: conflicting declaration ‘typedef unsigned int DWORD’
sphinxstd.h:90: error: ‘DWORD’ has a previous declaration as ‘typedef long unsigned int DWORD’
sphinx.cpp: In function ‘char* sphStrMacro(const char*, const char*, SphDocID_t)’:
sphinx.cpp:1912: warning: format ‘%u’ expects type ‘unsigned int’, but argument 4 has type ‘SphDocID_t’
sphinx.cpp: In function ‘CSphString sphDumpAttr(const CSphColumnInfo&)’:
sphinx.cpp:4784: warning: format ‘%d’ expects type ‘int’, but argument 4 has type ‘long unsigned int’
sphinx.cpp: In member function ‘virtual void CSphIndex_VLN::DebugDumpHeader(FILE*, const char*)’:
sphinx.cpp:14563: warning: format ‘%d’ expects type ‘int’, but argument 3 has type ‘DWORD’
sphinx.cpp:14592: warning: format ‘%d’ expects type ‘int’, but argument 3 has type ‘long unsigned int’
sphinx.cpp:14631: warning: format ‘%d’ expects type ‘int’, but argument 3 has type ‘DWORD’
sphinx.cpp: In member function ‘virtual void CSphIndex_VLN::DebugDumpDocids(FILE*)’:
sphinx.cpp:14647: warning: format ‘%d’ expects type ‘int’, but argument 3 has type ‘long unsigned int’
sphinx.cpp:14648: warning: format ‘%d’ expects type ‘int’, but argument 3 has type ‘DWORD’
sphinx.cpp:14655: warning: format ‘%u’ expects type ‘unsigned int’, but argument 2 has type ‘long unsigned int’
sphinx.cpp:14655: warning: format ‘%u’ expects type ‘unsigned int’, but argument 3 has type ‘SphDocID_t’
sphinx.cpp: In member function ‘virtual void CSphIndex_VLN::DebugDumpHitlist(FILE*, const char*)’:
sphinx.cpp:14710: warning: format ‘%u’ expects type ‘unsigned int’, but argument 3 has type ‘SphDocID_t’
sphinx.cpp:14710: warning: format ‘%08x’ expects type ‘unsigned int’, but argument 4 has type ‘DWORD’
sphinx.cpp: In member function ‘bool CSphSource_SQL::RunQueryStep(const char*, CSphString&)’:
sphinx.cpp:18346: warning: format ‘%u’ expects type ‘unsigned int’, but argument 4 has type ‘SphDocID_t’
sphinx.cpp:18347: warning: format ‘%u’ expects type ‘unsigned int’, but argument 4 has type ‘SphDocID_t’
sphinx.cpp: In member function ‘const char* CSphSource_XMLPipe2::DecorateMessageVA(const char*, char*)’:
sphinx.cpp:20238: warning: format ‘%u’ expects type ‘unsigned int’, but argument 6 has type ‘SphDocID_t’
sphinx.cpp: In member function ‘virtual bool CSphSource_ODBC::SqlQuery(const char*)’:
sphinx.cpp:21288: warning: comparison between signed and unsigned integer expressions
sphinx.cpp: At global scope:
sphinx.cpp:1741: warning: ‘g_tmInitTimer’ defined but not used
make[2]: *** [sphinx.o] Error 1
make[1]: *** [all] Error 2
make: *** [all-recursive] Error 1

我检查了 MySQL 的目录是否正确。

I tried to install Sphinx on MacOSX snow leopard 10.6.4. The steps I followed are:

./configure --prefix=/usr/local --with-mysql=/usr/local/mysql
make
sudo make install

While 'make', I get the following errors:

Making all in src
if test -d ../.svn; then svn info .. --xml | perl svnxrev.pl; fi;
make  all-am
g++ -DHAVE_CONFIG_H -I. -I../config  -DSYSCONFDIR="\"/usr/local/etc\"" -I/usr/local/include -I/usr/local/mysql/include  -Os -g -fno-common -fno-strict-aliasing -arch i386   -Wall -g -D_FILE_OFFSET_BITS=64 -O3 -DNDEBUG -MT sphinx.o -MD -MP -MF .deps/sphinx.Tpo -c -o sphinx.o sphinx.cpp
In file included from /usr/include/sql.h:92,
                 from /usr/include/sqlext.h:82,
                 from sphinx.h:69,
                 from sphinx.cpp:14:
/usr/include/iodbcunix.h:128: error: conflicting declaration ‘typedef unsigned int DWORD’
sphinxstd.h:90: error: ‘DWORD’ has a previous declaration as ‘typedef long unsigned int DWORD’
sphinx.cpp: In function ‘char* sphStrMacro(const char*, const char*, SphDocID_t)’:
sphinx.cpp:1912: warning: format ‘%u’ expects type ‘unsigned int’, but argument 4 has type ‘SphDocID_t’
sphinx.cpp: In function ‘CSphString sphDumpAttr(const CSphColumnInfo&)’:
sphinx.cpp:4784: warning: format ‘%d’ expects type ‘int’, but argument 4 has type ‘long unsigned int’
sphinx.cpp: In member function ‘virtual void CSphIndex_VLN::DebugDumpHeader(FILE*, const char*)’:
sphinx.cpp:14563: warning: format ‘%d’ expects type ‘int’, but argument 3 has type ‘DWORD’
sphinx.cpp:14592: warning: format ‘%d’ expects type ‘int’, but argument 3 has type ‘long unsigned int’
sphinx.cpp:14631: warning: format ‘%d’ expects type ‘int’, but argument 3 has type ‘DWORD’
sphinx.cpp: In member function ‘virtual void CSphIndex_VLN::DebugDumpDocids(FILE*)’:
sphinx.cpp:14647: warning: format ‘%d’ expects type ‘int’, but argument 3 has type ‘long unsigned int’
sphinx.cpp:14648: warning: format ‘%d’ expects type ‘int’, but argument 3 has type ‘DWORD’
sphinx.cpp:14655: warning: format ‘%u’ expects type ‘unsigned int’, but argument 2 has type ‘long unsigned int’
sphinx.cpp:14655: warning: format ‘%u’ expects type ‘unsigned int’, but argument 3 has type ‘SphDocID_t’
sphinx.cpp: In member function ‘virtual void CSphIndex_VLN::DebugDumpHitlist(FILE*, const char*)’:
sphinx.cpp:14710: warning: format ‘%u’ expects type ‘unsigned int’, but argument 3 has type ‘SphDocID_t’
sphinx.cpp:14710: warning: format ‘%08x’ expects type ‘unsigned int’, but argument 4 has type ‘DWORD’
sphinx.cpp: In member function ‘bool CSphSource_SQL::RunQueryStep(const char*, CSphString&)’:
sphinx.cpp:18346: warning: format ‘%u’ expects type ‘unsigned int’, but argument 4 has type ‘SphDocID_t’
sphinx.cpp:18347: warning: format ‘%u’ expects type ‘unsigned int’, but argument 4 has type ‘SphDocID_t’
sphinx.cpp: In member function ‘const char* CSphSource_XMLPipe2::DecorateMessageVA(const char*, char*)’:
sphinx.cpp:20238: warning: format ‘%u’ expects type ‘unsigned int’, but argument 6 has type ‘SphDocID_t’
sphinx.cpp: In member function ‘virtual bool CSphSource_ODBC::SqlQuery(const char*)’:
sphinx.cpp:21288: warning: comparison between signed and unsigned integer expressions
sphinx.cpp: At global scope:
sphinx.cpp:1741: warning: ‘g_tmInitTimer’ defined but not used
make[2]: *** [sphinx.o] Error 1
make[1]: *** [all] Error 2
make: *** [all-recursive] Error 1

I checked the directory of MySQL is correct.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

旧瑾黎汐 2024-10-22 12:47:24

我发现以下建议很有帮助:
1.添加以下参数进行配置:
--with-unixodbc=no

  1. 如果仍然出现错误,请尝试将 LDFLAGS 设置为“-arch i386”

I found the following suggestions helpful:
1. add the following parameter to configure:
--with-unixodbc=no

  1. if you still get errors, try setting LDFLAGS to '-arch i386'
来日方长 2024-10-22 12:47:24

Mac OS X 二进制文件可从 http://sphinxsearch.com/downloads/ 获取 2.0.1b

Mac OS X binaries are available for 2.0.1b from http://sphinxsearch.com/downloads/

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文