全球主机交流论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

CeraNetworks网络延迟测速工具IP归属甄别会员请立即修改密码
12
返回列表 发新帖
楼主: hcw1588

编译出错,求解!!各种求!!

[复制链接]
 楼主| 发表于 2013-7-31 18:07:54 | 显示全部楼层
SKIDROW 发表于 2013-7-31 17:57
libcap libssl expat,装这三个看看。

又出现
libIpcIo.a(IpcIoFile.o):/root/squid-3.3.8/src/../src/ipc/AtomicWord.h:45: more undefined references to `__sync_fetch_and_add_4' follow
libIpcIo.a(IpcIoFile.o): In function `Ipc::Atomic::WordT<int>:perator+=(int)':
/root/squid-3.3.8/src/../src/ipc/AtomicWord.h:29: undefined reference to `__sync_add_and_fetch_4'
libIpcIo.a(IpcIoFile.o): In function `Ipc::Atomic::WordT<int>::get() const':
/root/squid-3.3.8/src/../src/ipc/AtomicWord.h:45: undefined reference to `__sync_fetch_and_add_4'
libIpcIo.a(IpcIoFile.o): In function `Ipc::Atomic::WordT<int>::swap_if(int, int)':
/root/squid-3.3.8/src/../src/ipc/AtomicWord.h:36: undefined reference to `__sync_bool_compare_and_swap_4'
libIpcIo.a(IpcIoFile.o): In function `Ipc::Atomic::WordT<int>::get() const':
/root/squid-3.3.8/src/../src/ipc/AtomicWord.h:45: undefined reference to `__sync_fetch_and_add_4'
/root/squid-3.3.8/src/../src/ipc/AtomicWord.h:45: undefined reference to `__sync_fetch_and_add_4'
libIpcIo.a(IpcIoFile.o): In function `Ipc::Atomic::WordT<int>::swap_if(int, int)':
/root/squid-3.3.8/src/../src/ipc/AtomicWord.h:36: undefined reference to `__sync_bool_compare_and_swap_4'
libIpcIo.a(IpcIoFile.o): In function `Ipc::Atomic::WordT<int>::get() const':
/root/squid-3.3.8/src/../src/ipc/AtomicWord.h:45: undefined reference to `__sync_fetch_and_add_4'
libIpcIo.a(IpcIoFile.o): In function `Ipc::Atomic::WordT<int>::swap_if(int, int)':
/root/squid-3.3.8/src/../src/ipc/AtomicWord.h:36: undefined reference to `__sync_bool_compare_and_swap_4'
libIpcIo.a(IpcIoFile.o): In function `Ipc::Atomic::WordT<int>:perator-=(int)':
/root/squid-3.3.8/src/../src/ipc/AtomicWord.h:30: undefined reference to `__sync_sub_and_fetch_4'
libIpcIo.a(IpcIoFile.o): In function `Ipc::Atomic::WordT<int>::get() const':
/root/squid-3.3.8/src/../src/ipc/AtomicWord.h:45: undefined reference to `__sync_fetch_and_add_4'
/root/squid-3.3.8/src/../src/ipc/AtomicWord.h:45: undefined reference to `__sync_fetch_and_add_4'
/root/squid-3.3.8/src/../src/ipc/AtomicWord.h:45: undefined reference to `__sync_fetch_and_add_4'
ipc/.libs/libipc.a(Queue.o): In function `Ipc::Atomic::WordT<int>::swap_if(int, int)':
/root/squid-3.3.8/src/ipc/../../src/ipc/AtomicWord.h:36: undefined reference to `__sync_bool_compare_and_swap_4'
ipc/.libs/libipc.a(Queue.o): In function `Ipc::Atomic::WordT<int>::swap_if(int, int)':
/root/squid-3.3.8/src/ipc/Queue.cc:250: undefined reference to `__sync_bool_compare_and_swap_4'
ipc/.libs/libipc.a(ReadWriteLock.o): In function `Ipc::Atomic::WordT<int>:perator--(int)':
/root/squid-3.3.8/src/ipc/../../src/ipc/AtomicWord.h:34: undefined reference to `__sync_fetch_and_sub_4'
ipc/.libs/libipc.a(ReadWriteLock.o): In function `Ipc::Atomic::WordT<int>:perator+=(int)':
/root/squid-3.3.8/src/ipc/../../src/ipc/AtomicWord.h:29: undefined reference to `__sync_add_and_fetch_4'
ipc/.libs/libipc.a(ReadWriteLock.o): In function `Ipc::Atomic::WordT<int>::get() const':
/root/squid-3.3.8/src/ipc/../../src/ipc/AtomicWord.h:45: undefined reference to `__sync_fetch_and_add_4'
/root/squid-3.3.8/src/ipc/../../src/ipc/AtomicWord.h:45: undefined reference to `__sync_fetch_and_add_4'
/root/squid-3.3.8/src/ipc/../../src/ipc/AtomicWord.h:45: undefined reference to `__sync_fetch_and_add_4'
/root/squid-3.3.8/src/ipc/../../src/ipc/AtomicWord.h:45: undefined reference to `__sync_fetch_and_add_4'
ipc/.libs/libipc.a(ReadWriteLock.o): In function `Ipc::Atomic::WordT<int>:perator--(int)':
/root/squid-3.3.8/src/ipc/../../src/ipc/AtomicWord.h:34: undefined reference to `__sync_fetch_and_sub_4'
ipc/.libs/libipc.a(ReadWriteLock.o): In function `Ipc::Atomic::WordT<int>:perator+=(int)':
/root/squid-3.3.8/src/ipc/../../src/ipc/AtomicWord.h:29: undefined reference to `__sync_add_and_fetch_4'
ipc/.libs/libipc.a(ReadWriteLock.o): In function `Ipc::Atomic::WordT<int>::get() const':
/root/squid-3.3.8/src/ipc/../../src/ipc/AtomicWord.h:45: undefined reference to `__sync_fetch_and_add_4'
ipc/.libs/libipc.a(ReadWriteLock.o): In function `Ipc::Atomic::WordT<int>:perator-=(int)':
/root/squid-3.3.8/src/ipc/../../src/ipc/AtomicWord.h:30: undefined reference to `__sync_sub_and_fetch_4'
ipc/.libs/libipc.a(ReadWriteLock.o): In function `Ipc::Atomic::WordT<int>:perator++(int)':
/root/squid-3.3.8/src/ipc/../../src/ipc/AtomicWord.h:33: undefined reference to `__sync_fetch_and_add_4'
ipc/.libs/libipc.a(ReadWriteLock.o): In function `Ipc::Atomic::WordT<int>::get() const':
/root/squid-3.3.8/src/ipc/../../src/ipc/AtomicWord.h:45: undefined reference to `__sync_fetch_and_add_4'
ipc/.libs/libipc.a(ReadWriteLock.o): In function `Ipc::Atomic::WordT<int>:perator-=(int)':
/root/squid-3.3.8/src/ipc/../../src/ipc/AtomicWord.h:30: undefined reference to `__sync_sub_and_fetch_4'
ipc/.libs/libipc.a(StoreMap.o): In function `Ipc::Atomic::WordT<int>::get() const':
/root/squid-3.3.8/src/ipc/../../src/ipc/AtomicWord.h:45: undefined reference to `__sync_fetch_and_add_4'
ipc/.libs/libipc.a(StoreMap.o): In function `Ipc::Atomic::WordT<int>:perator-=(int)':
/root/squid-3.3.8/src/ipc/../../src/ipc/AtomicWord.h:30: undefined reference to `__sync_sub_and_fetch_4'
ipc/.libs/libipc.a(StoreMap.o): In function `Ipc::Atomic::WordT<unsigned char>::get() const':
/root/squid-3.3.8/src/ipc/../../src/ipc/AtomicWord.h:45: undefined reference to `__sync_fetch_and_add_1'
/root/squid-3.3.8/src/ipc/../../src/ipc/AtomicWord.h:45: undefined reference to `__sync_fetch_and_add_1'
ipc/.libs/libipc.a(StoreMap.o): In function `Ipc::Atomic::WordT<int>::operator+=(int)':
/root/squid-3.3.8/src/ipc/../../src/ipc/AtomicWord.h:29: undefined reference to `__sync_add_and_fetch_4'
ipc/.libs/libipc.a(Pages.o): In function `Ipc::Atomic::WordT<int>::get() const':
/root/squid-3.3.8/src/ipc/../../src/ipc/AtomicWord.h:45: undefined reference to `__sync_fetch_and_add_4'
ipc/.libs/libipc.a(PagePool.o): In function `Ipc::Atomic::WordT<int>::get() const':
/root/squid-3.3.8/src/ipc/../../src/ipc/AtomicWord.h:45: undefined reference to `__sync_fetch_and_add_4'
ipc/.libs/libipc.a(PagePool.o): In function `Ipc::Atomic::WordT<int>::operator-=(int)':
/root/squid-3.3.8/src/ipc/../../src/ipc/AtomicWord.h:30: undefined reference to `__sync_sub_and_fetch_4'
ipc/.libs/libipc.a(PagePool.o): In function `Ipc::Atomic::WordT<int>::operator+=(int)':
/root/squid-3.3.8/src/ipc/../../src/ipc/AtomicWord.h:29: undefined reference to `__sync_add_and_fetch_4'
ipc/.libs/libipc.a(PageStack.o): In function `Ipc::Atomic::WordT<int>::operator-=(int)':
/root/squid-3.3.8/src/ipc/../../src/ipc/AtomicWord.h:30: undefined reference to `__sync_sub_and_fetch_4'
ipc/.libs/libipc.a(PageStack.o): In function `Ipc::Atomic::WordT<int>::get() const':
/root/squid-3.3.8/src/ipc/../../src/ipc/AtomicWord.h:45: undefined reference to `__sync_fetch_and_add_4'
/root/squid-3.3.8/src/ipc/../../src/ipc/AtomicWord.h:45: undefined reference to `__sync_fetch_and_add_4'
ipc/.libs/libipc.a(PageStack.o): In function `Ipc::Atomic::WordT<unsigned int>::fetchAndAnd(unsigned int)':
/root/squid-3.3.8/src/ipc/../../src/ipc/AtomicWord.h:39: undefined reference to `__sync_fetch_and_and_4'
ipc/.libs/libipc.a(PageStack.o): In function `Ipc::Atomic::WordT<int>::swap_if(int, int)':
/root/squid-3.3.8/src/ipc/../../src/ipc/AtomicWord.h:36: undefined reference to `__sync_bool_compare_and_swap_4'
ipc/.libs/libipc.a(PageStack.o): In function `Ipc::Atomic::WordT<int>::operator+=(int)':
/root/squid-3.3.8/src/ipc/../../src/ipc/AtomicWord.h:29: undefined reference to `__sync_add_and_fetch_4'
ipc/.libs/libipc.a(PageStack.o): In function `Ipc::Atomic::WordT<int>::get() const':
/root/squid-3.3.8/src/ipc/../../src/ipc/AtomicWord.h:45: undefined reference to `__sync_fetch_and_add_4'
/root/squid-3.3.8/src/ipc/../../src/ipc/AtomicWord.h:45: undefined reference to `__sync_fetch_and_add_4'
/root/squid-3.3.8/src/ipc/../../src/ipc/AtomicWord.h:45: undefined reference to `__sync_fetch_and_add_4'
/root/squid-3.3.8/src/ipc/../../src/ipc/AtomicWord.h:45: undefined reference to `__sync_fetch_and_add_4'
/root/squid-3.3.8/src/ipc/../../src/ipc/AtomicWord.h:45: undefined reference to `__sync_fetch_and_add_4'
ipc/.libs/libipc.a(PageStack.o): In function `Ipc::Atomic::WordT<unsigned int>::swap_if(unsigned int, unsigned int)':
/root/squid-3.3.8/src/ipc/../../src/ipc/AtomicWord.h:36: undefined reference to `__sync_bool_compare_and_swap_4'
ipc/.libs/libipc.a(PageStack.o): In function `Ipc::Atomic::WordT<int>::swap_if(int, int)':
/root/squid-3.3.8/src/ipc/mem/PageStack.cc:86: undefined reference to `__sync_bool_compare_and_swap_4'
ipc/.libs/libipc.a(PageStack.o): In function `Ipc::Atomic::WordT<int>::operator+=(int)':
/root/squid-3.3.8/src/ipc/../../src/ipc/AtomicWord.h:29: undefined reference to `__sync_add_and_fetch_4'
ipc/.libs/libipc.a(PageStack.o): In function `Ipc::Atomic::WordT<int>::get() const':
/root/squid-3.3.8/src/ipc/../../src/ipc/AtomicWord.h:45: undefined reference to `__sync_fetch_and_add_4'
/root/squid-3.3.8/src/ipc/../../src/ipc/AtomicWord.h:45: undefined reference to `__sync_fetch_and_add_4'
/root/squid-3.3.8/src/ipc/../../src/ipc/AtomicWord.h:45: undefined reference to `__sync_fetch_and_add_4'
collect2: ld returned 1 exit status
libtool: link: rm -f ".libs/squidS.o"
make[3]: *** [squid] Error 1
make[3]: Leaving directory `/root/squid-3.3.8/src'
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory `/root/squid-3.3.8/src'
make[1]: *** [all] Error 2
make[1]: Leaving directory `/root/squid-3.3.8/src'
make: *** [all-recursive] Error 1
发表于 2013-7-31 18:09:50 | 显示全部楼层
本帖最后由 SKIDROW 于 2013-7-31 18:11 编辑
hcw1588 发表于 2013-7-31 18:07
又出现
libIpcIo.a(IpcIoFile.o):/root/squid-3.3.8/src/../src/ipc/AtomicWord.h:45: more undefined re ...


我估计是编译器太老了……CentOS5好像只是gcc4.1……
 楼主| 发表于 2013-7-31 18:14:39 | 显示全部楼层
SKIDROW 发表于 2013-7-31 18:09
我估计是编译器太老了……CentOS5好像只是gcc4.1……

你是一路成功的吧?
发表于 2013-7-31 18:18:30 | 显示全部楼层
hcw1588 发表于 2013-7-31 18:14
你是一路成功的吧?

一次性成功了,不然你装个gcc4.4看看。
 楼主| 发表于 2013-7-31 18:23:00 | 显示全部楼层
SKIDROW 发表于 2013-7-31 18:18
一次性成功了,不然你装个gcc4.4看看。

还有squid3.3的init.d启动脚本写过吗,网上找到的都木用。。
 楼主| 发表于 2013-7-31 19:38:04 | 显示全部楼层
SKIDROW 发表于 2013-7-31 18:18
一次性成功了,不然你装个gcc4.4看看。

可以start不可以stop

#!/bin/bash    
# squid     This shell script takes care of starting and stopping    
#       Squid Internet Object Cache    
#    
# chkconfig: - 90 25    
# description: Squid - Internet Object Cache. Internet object caching is     
#   a way to store requested Internet objects (i.e., data available     
#   via the HTTP, FTP, and gopher protocols) on a system closer to the     
#   requesting site than to the source. Web browsers can then use the     
#   local Squid cache as a proxy HTTP server, reducing access time as     
#   well as bandwidth consumption.    
# pidfile: /var/run/squid.pid    
# config: /etc/squid/squid.conf    
         
PATH=/usr/bin:/sbin:/bin:/usr/sbin    
export PATH    
         
# Source function library.    
. /etc/rc.d/init.d/functions    
         
# Source networking configuration.    
. /etc/sysconfig/network    
         
# don't raise an error if the config file is incomplete    
# set defaults instead:    
SQUID_OPTS=${SQUID_OPTS:-"-D"}    
SQUID_PIDFILE_TIMEOUT=${SQUID_PIDFILE_TIMEOUT:-20}    
SQUID_SHUTDOWN_TIMEOUT=${SQUID_SHUTDOWN_TIMEOUT:-100}    
         
# determine the name of the squid binary    
[ -f /usr/local/squid/sbin/squid ] && SQUID=/usr/local/squid/sbin/squid && SQUID_id=squid   
         
prog="$SQUID"
         
# determine which one is the cache_swap directory    
CACHE_SWAP=`sed -e 's/#.*//g' /usr/local/squid/etc/squid.conf |     
    grep cache_dir |  awk '{ print $3 }'`    
[ -z "$CACHE_SWAP" ] && CACHE_SWAP=/usr/local/squid/var/cache    
         
RETVAL=0   
         
start() {    
        #check if the squid conf file is present    
        if [ ! -f /usr/local/squid/etc/squid.conf ]; then    
            echo "Configuration file /usr/local/squid/etc/squid.conf missing" 1>&2    
            exit 6    
        fi    
        . /etc/sysconfig/squid    
         
        # don't raise an error if the config file is incomplete.    
        # set defaults instead:    
        SQUID_OPTS=${SQUID_OPTS:-"-D"}    
        SQUID_PIDFILE_TIMEOUT=${SQUID_PIDFILE_TIMEOUT:-20}    
        SQUID_SHUTDOWN_TIMEOUT=${SQUID_SHUTDOWN_TIMEOUT:-100}    
        if [ -z "$SQUID" ]; then    
                echo "Insufficient privilege" 1>&2    
                exit 4    
        fi    
        for adir in $CACHE_SWAP; do
        if [ ! -d $adir/00 ]; then    
         echo -n "init_cache_dir $adir... "
         $SQUID -z -F -D >> /usr/local/squid/var/logs/squid.out 2>&1    
    fi    
    done    
    echo -n $"Starting $prog: "
    $SQUID $SQUID_OPTS >> /usr/local/squid/var/logs/squid.out 2>&1    
    RETVAL=$?    
    if [ $RETVAL -eq 0 ]; then    
       timeout=0;    
       while : ; do
          [ ! -f /usr/local/squid/var/run/squid.pid ] || break
      if [ $timeout -ge $SQUID_PIDFILE_TIMEOUT ]; then    
         RETVAL=1   
         break
      fi    
      sleep 1 && echo -n "."
      timeout=$((timeout+1))    
       done    
    fi    
    [ $RETVAL -eq 0 ] && touch /var/lock/subsys/$SQUID_uid    
    [ $RETVAL -eq 0 ] && echo_success    
    [ $RETVAL -ne 0 ] && echo_failure    
    echo    
    return $RETVAL    
}    
         
stop() {    
    . /etc/sysconfig/squid    
    # don't raise an error if the config file is incomplete.    
    # set defaults instead:    
    SQUID_SHUTDOWN_TIMEOUT=${SQUID_SHUTDOWN_TIMEOUT:-100}    
    echo -n  $"Stopping $prog: "
    $SQUID -k check >> /usr/local/squid/var/logs/squid.out 2>&1    
    RETVAL=$?    
    if [ $RETVAL -eq 0 ] ; then    
        $SQUID -k shutdown &    
        rm -f /var/lock/subsys/$SQUID_id    
    timeout=0   
    while : ; do
        [ -f /usr/local/squid/var/run/squid.pid ] || break
        if [ $timeout -ge $SQUID_SHUTDOWN_TIMEOUT ]; then    
            echo    
            return 1    
        fi    
        sleep 2 && echo -n "."
        timeout=$((timeout+2))    
        done    
    echo_success    
    echo    
    else
        echo_failure    
    if [ ! -e /var/lock/subsys/$SQUID_id ]; then    
        RETVAL=0   
    fi    
    echo    
    fi    
    return $RETVAL    
}    
         
reload() {    
    . /etc/sysconfig/squid    
    # don't raise an error if the config file is incomplete.    
    # set defaults instead:    
    SQUID_OPTS=${SQUID_OPTS:-"-D"}    
         
    $SQUID $SQUID_OPTS -k reconfigure    
}    
         
restart() {    
    stop    
    start    
}    
         
condrestart() {    
    [ -e /var/lock/subsys/squid_id ] && restart || :    
}    
         
rhstatus() {    
    status $SQUID_id && $SQUID -k check    
}    
         
probe() {    
    return 0    
}    
         
case "$1" in
start)    
    start    
    ;;    
         
stop)    
    stop    
    ;;    
         
reload)    
    reload    
    ;;    
         
restart)    
    restart    
    ;;    
         
condrestart)    
    condrestart    
    ;;    
         
status)    
    rhstatus    
    ;;    
         
probe)    
    exit 0    
    ;;    
         
*)    
    echo $"Usage: $0 {start|stop|status|reload|restart|condrestart}"
    exit 2    
esac    
         
exit $?
发表于 2013-7-31 19:45:53 | 显示全部楼层
hcw1588 发表于 2013-7-31 19:38
可以start不可以stop

#!/bin/bash    

还是像PHP5.3那样发信号得了
 楼主| 发表于 2013-7-31 20:09:35 | 显示全部楼层
SKIDROW 发表于 2013-7-31 19:45
还是像PHP5.3那样发信号得了

额。。。好吧,刚刚修改了部分然后就成功了。。。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|全球主机交流论坛

GMT+8, 2025-1-18 06:57 , Processed in 0.060880 second(s), 6 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表