我正在尝试在 Ubuntu 上安装 Gearman,但在通过 make
命令时遇到了一些困难。我正在尝试安装 1.1.2
版本。
这是make命令的输出
CXX bin/error.o
CXXLD bin/gearadmin
bin/bin_gearadmin-gearadmin.o: In function `main':
/home/john/gearmand/gearmand-1.1.2/bin/gearadmin.cc:129: undefined reference to `boost::program_options::options_description::options_description(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, unsigned int, unsigned int)'
collect2: ld returned 1 exit status
CXX libtest/libtest_unittest-unittest.o
make[1]: *** [bin/gearadmin] Error 1
make[1]: *** Waiting for unfinished jobs....
make[1]: Leaving directory `/home/john/gearmand/gearmand-1.1.2'
make: *** [all] Error 2
我已按照此博文中的步骤进行安装 - http://rdstash.blogspot.com/2012/02/installing-gearman-101-on-ubuntu-1104.html
我已经运行了以下命令来安装 boost,但它似乎不起作用。
sudo apt-get install libboost-program-options1.40-dev libboost-thread1.40-dev -y
关于如何让它在我的系统上运行有什么建议吗?如果我需要发布任何进一步的信息,请告诉我。
更新
我运行了 apt-get remove
并尝试使用此处列出的步骤安装旧版本 - http://moffe42.blogspot.com/2011/12/installing-gearman-on-ubuntu-1004.html
运行以下命令给了我这个
sudo apt-get install gearman gearman-job-server gearman-tools libgearman4 libgearman-dev
Reading package lists... Done
Building dependency tree
Reading state information... Done
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:
The following packages have unmet dependencies:
libgearman4: Conflicts: libgearman-server0
libgearman6: Conflicts: libgearman-server0
E: Broken packages
我尝试安装 libgearman-server0 但随后收到以下消息
The following packages have unmet dependencies:
gearman-tools: Depends: libgearman6 (= 0.32-0~598-1~lucid1) but it is not going to be installed
libgearman-dev: Depends: libgearman6 (= 0.32-0~598-1~lucid1) but it is not going to be installed
E: Broken packages
当我安装这个包时,它只给我之前的消息(它只是不断交替)
最佳答案
我真的没有找到这个问题的答案。当我回到这个问题时,我决定将我的操作系统更新到 12.04,然后运行安装。这次工作完美无缺。
这些是我在 12.04 上安装 gearmand 的步骤
sudo apt-get update
sudo apt-get upgrade
sudo apt-get install gcc autoconf bison flex libtool make libboost-all-dev libcurl4-openssl-dev curl libevent-dev memcached uuid-dev libsqlite3-dev libmysqlclient-dev
sudo apt-get install gperf
sudo apt-get install libcloog-ppl0
cd /tmp/
wget https://launchpad.net/gearmand/1.2/1.1.9/+download/gearmand-1.1.9.tar.gz
tar xvzf gearmand-1.1.9.tar.gz
cd gearmand-1.1.9/
./configure
sudo make
sudo make install
sudo ldconfig
sudo pecl install gearman #you will need to install pecl if you don't have it
#Edit INI files and add extension=gearman.so to it
#/etc/php5/cli/php.ini
#/etc/php5/apache2/php.ini
sudo ldconfig
关于ubuntu - 在 Ubuntu 10.04 上安装 Gearman。缺少升压库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12997735/