<div><br></div><div>I think what i did is the same with you except i use make rather than make -sj8, and I did as root.</div><div>And I do as you wrote again:</div><div><br></div><div><div>root@hurricanetong-VirtualBox:/home/hurricanetong/xapian-1.2.17/xapian-core-1.2.17# ./configure</div></div><div>[...]</div><div><div>root@hurricanetong-VirtualBox:/home/hurricanetong/xapian-1.2.17/xapian-core-1.2.17# make -sj8</div><div>Making all in .</div><div>Making all in docs</div><div>Making all in tests</div></div><div><div>root@hurricanetong-VirtualBox:/home/hurricanetong/xapian-1.2.17/xapian-core-1.2.17# sudo make install</div></div><div>[...]</div><div><br></div><div>then</div><div><br></div><div><div>root@hurricanetong-VirtualBox:/home/hurricanetong/workspace# g++ `xapian-config --cxxflags --libs` demo2.cpp</div><div>/tmp/ccRXtBxB.o: In function `main':</div><div>demo2.cpp:(.text+0x4a): undefined reference to `Xapian::WritableDatabase::WritableDatabase(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, int)'</div><div>demo2.cpp:(.text+0x73): undefined reference to `Xapian::WritableDatabase::~WritableDatabase()'</div><div>demo2.cpp:(.text+0x98): undefined reference to `Xapian::WritableDatabase::~WritableDatabase()'</div><div>collect2: ld 返回 1</div></div><div><br></div><div><br></div><div><div>root@hurricanetong-VirtualBox:/home/hurricanetong/workspace# which xapian-config</div><div>/usr/local/bin/xapian-config</div><div>root@hurricanetong-VirtualBox:/home/hurricanetong/workspace# xapian-config --version</div><div>xapian-config - xapian-core 1.2.17</div></div><div><br></div><div><div>root@hurricanetong-VirtualBox:/home/hurricanetong/workspace#  ls -l /usr/local/lib/libxapian*</div><div>-rw-r--r-- 1 root root 37827146  2月 13 10:21 /usr/local/lib/libxapian.a</div><div>-rwxr-xr-x 1 root root      944  2月 13 10:21 /usr/local/lib/libxapian.la</div><div>lrwxrwxrwx 1 root root       19  2月 13 10:21 /usr/local/lib/libxapian.so -> libxapian.so.22.6.4</div><div>lrwxrwxrwx 1 root root       19  2月 13 10:21 /usr/local/lib/libxapian.so.22 -> libxapian.so.22.6.4</div><div>-rwxr-xr-x 1 root root 19577253  2月 13 10:21 /usr/local/lib/libxapian.so.22.6.4</div></div><div><br></div><div>Best Regards.</div><div><br></div><div><br></div><div><div style="color:#909090;font-family:Arial Narrow;font-size:12px">------------------</div><div style="font-size:14px;font-family:Verdana;color:#000;">HurricaneTong,<div>Second Year Undergraduate,</div><div>School of Computer Science,</div><div>Fudan University, China.</div></div></div><div> </div><div><div><br></div><div><br></div><div style="font-size: 12px;font-family: Arial Narrow;padding:2px 0 2px 0;">------------------ 原始邮件 ------------------</div><div style="font-size: 12px;background:#efefef;padding:8px;"><div><b>发件人:</b> "Olly Betts";<olly@survex.com>;</div><div><b>发送时间:</b> 2014年2月13日(星期四) 上午10:09</div><div><b>收件人:</b> "Hurricane Tong"<zhangshangtong.cpp@qq.com>; <wbr></div><div><b>抄送:</b> "xapian-devel"<xapian-devel@lists.xapian.org>; <wbr></div><div><b>主题:</b> Re: [Xapian-devel] A beginner in "Posting list encoding improvements"</div></div><div><br></div>On Thu, Feb 13, 2014 at 09:48:27AM +0800, Hurricane Tong wrote:<br>> I uninstall xapian1.3 and install xapian-1.2.17<br>> but i still failed<br>> <br>> hurricanetong@hurricanetong-VirtualBox:~/workspace$ g++ `xapian-config --cxxflags --libs` demo2.cc<br>> /tmp/cc2wsfDJ.o: In function `main':<br>> demo2.cc:(.text+0x4a): undefined reference to `Xapian::WritableDatabase::WritableDatabase(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, int)'<br>> demo2.cc:(.text+0x73): undefined reference to `Xapian::WritableDatabase::~WritableDatabase()'<br>> demo2.cc:(.text+0x98): undefined reference to `Xapian::WritableDatabase::~WritableDatabase()'<br>> collect2: ld 返回 1<br>> <br>> and<br>> <br>> hurricanetong@hurricanetong-VirtualBox:~/workspace$ xapian-config --cxxflags --libs<br>> -I/usr/local/include<br>> -L/usr/local/lib -lxapian<br><br>This works for me on Debian unstable with a locally installed xapian-core<br>1.2.17, which I built using:<br><br>$ tar xf xapian-core-1.2.17.tar.xz<br>$ cd xapian-core-1.2.17<br>$ ./configure<br>[...]<br>$ make -sj8 # quieter build, 8-way parallel<br>[...]<br>$ sudo make install<br>[...]<br><br>And then:<br><br>$ g++ `xapian-config --cxxflags --libs` BuildIndexDemo.cpp <br>$ ./a.out<br>$ ls -l database<br>total 16<br>-rw-r--r-- 1 olly olly  0 Feb 13 15:05 flintlock<br>-rw-r--r-- 1 olly olly 28 Feb 13 15:05 iamchert<br>-rw-r--r-- 1 olly olly 13 Feb 13 15:05 postlist.baseA<br>-rw-r--r-- 1 olly olly  0 Feb 13 15:05 postlist.DB<br>-rw-r--r-- 1 olly olly 13 Feb 13 15:05 record.baseA<br>-rw-r--r-- 1 olly olly  0 Feb 13 15:05 record.DB<br>-rw-r--r-- 1 olly olly 13 Feb 13 15:05 termlist.baseA<br>-rw-r--r-- 1 olly olly  0 Feb 13 15:05 termlist.DB<br><br>I'd check you're running the xapian-config you think you are:<br><br>$ which xapian-config<br>/usr/local/bin/xapian-config<br>$ xapian-config --version<br>xapian-config - xapian-core 1.2.17<br><br>If you're getting a different xapian-config, you can give an explicit path<br>to it:<br><br>$ g++ `/usr/local/bin/xapian-config --cxxflags --libs` BuildIndexDemo.cpp <br><br>And that the xapian library is really installed in /usr/local/lib:<br><br>$ ls -l /usr/local/lib/libxapian*<br>-rw-r--r-- 1 root staff 78693312 Feb 13 15:02 /usr/local/lib/libxapian.a<br>-rwxr-xr-x 1 root staff      944 Feb 13 15:02 /usr/local/lib/libxapian.la<br>lrwxrwxrwx 1 root staff       19 Feb 13 15:02 /usr/local/lib/libxapian.so -> libxapian.so.22.6.4<br>lrwxrwxrwx 1 root staff       19 Feb 13 15:02 /usr/local/lib/libxapian.so.22 -> libxapian.so.22.6.4<br>-rwxr-xr-x 1 root staff 28428107 Feb 13 15:02 /usr/local/lib/libxapian.so.22.6.4<br><br>Cheers,<br>    Olly<br>.<br></div>