SORU
15 Mayıs 2009, Cuma


Nasıl inşa hedefin dışında gcc hata ayıklama simge oluşturmak için?

Hata ayıklama simge-g seçeneği kullanarak oluşturmak biliyorum. Ancak bu sembol hedef dosya içinde gömülü. Gcc hata ayıklama simge oluşturmak dışında sonuç/kütüphane yürütülebilir ki? Gibi .VC derleyici mi windows pdb dosyası.

CEVAP
15 Mayıs 2009, Cuma


Kullanmak gerekirobjcopy4**:

objcopy --only-keep-debug "${tostripfile}" "${debugdir}/${debugfile}"
strip --strip-debug --strip-unneeded "${tostripfile}"
objcopy --add-gnu-debuglink="${debugdir}/${debugfile}" "${tostripfile}"

Bash script aşağıda bir ile dosyalarına hata ayıklama bilgileri ayırmak için kullanıyorum .bir hata ayıklama uzantısı .hata ayıklama dizin. Bu şekilde tar kütüphaneler ve yürütülebilir bir katran ve dosya edebilirim .başka dizinlerde hata ayıklama. Eğer hata ayıklama bilgisi daha sonra eklemek istiyorum eğer ben sadece hata ayıklama tar dosyasını ayıklamak ve simgesel hata ayıklama bilgisi var işte.

Bu bash komut:

#!/bin/bash

scriptdir=`dirname ${0}`
scriptdir=`(cd ${scriptdir}; pwd)`
scriptname=`basename ${0}`

set -e

function errorexit()
{
  errorcode=${1}
  shift
  echo $@
  exit ${errorcode}
}

function usage()
{
  echo "USAGE ${scriptname} <tostrip>"
}

tostripdir=`dirname "$1"`
tostripfile=`basename "$1"`


if [ -z ${tostripfile} ] ; then
  usage
  errorexit 0 "tostrip must be specified"
fi

cd "${tostripdir}"

debugdir=.debug
debugfile="${tostripfile}.debug"

if [ ! -d "${debugdir}" ] ; then
  echo "creating dir ${tostripdir}/${debugdir}"
  mkdir -p "${debugdir}"
fi
echo "stripping ${tostripfile}, putting debug info into ${debugfile}"
objcopy --only-keep-debug "${tostripfile}" "${debugdir}/${debugfile}"
strip --strip-debug --strip-unneeded "${tostripfile}"
objcopy --add-gnu-debuglink="${debugdir}/${debugfile}" "${tostripfile}"
chmod -x "${debugdir}/${debugfile}"

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • AverageBroTV

    AverageBroTV

    20 Mart 2013
  • DorkmanScott

    DorkmanScott

    14 NİSAN 2006
  • WestsideMrArO

    WestsideMrAr

    6 EKİM 2010