जब मैं make cscope
जारी करके लिनक्स कर्नेल सीएससीओपी डेटाबेस उत्पन्न करता हूं तो मुझे संबंधित पथ वाली फ़ाइलों की सूची के साथ डेटाबेस फ़ाइल मिलती है। यह मेरे लिए एक समस्या है क्योंकि बाद में जब मैं बाहरी कर्नेल के डेटाबेस को जो भी निर्देशिका से विम संपादक में संलग्न करता हूं लेकिन कर्नेल के मैं आसानी से विशिष्ट प्रतीक पर खोज सकता हूं लेकिन मैं उस फ़ाइल को नहीं खोल सकता हूं जिसमें प्रतीक शामिल है।लिनक्स कर्नेल मेकफ़ाइल सीएससीओपी लक्ष्य
मैं अगले बैश स्क्रिप्ट
#!/bin/bash
SNAME="$0"
SNAME=${SNAME##*/}
function usage()
{
echo Generate Linux kernel cscope database
echo "Usage: $SNAME [PATH]"
echo -n "You must provide this script with an ABSOLUTE path of your "
echo "kernel's root directory"
}
if [[ -z "$1" ]]; then
usage
exit -1
fi
KDIR="$1"
echo -n "Collecting a list of files... "
if find "$KDIR" -path "${KDIR}/arch/*" ! -path "${KDIR}/arch/x86*" -prune -o \
-path "${KDIR}/include/asm-*" \
! -path "${KDIR}/include/asm-generic*" \
! -path "${KDIR}/include/asm-x86*" -prune -o \
-path "${KDIR}/tmp*" -prune -o \
-path "${KDIR}/Documentation*" -prune -o \
-path "${KDIR}/scripts*" -prune -o \
-name "*.[chxsS]" -print > cscope.files; then
echo done
else
echo failed
fi
echo -n "Building cscope database... "
cscope -k -qb && echo done || echo failed
कि पूर्ण पथ का उपयोग कर सभी फाइलों को मैं की जरूरत है (x86/x86_64 आर्किटेक्चर) एकत्र करता है और फिर मैं सफलतापूर्वक मैन्युअल cscope डेटाबेस के निर्माण में लिखा है। लेकिन मुझे लगता है कि इसे पूरा करने के लिए यह कुछ आसान तरीका होना चाहिए। हो सकता है कि कुछ मेकफ़ाइल का लक्ष्य make cscope_abs
या make cscope_ext
जैसा कि मुझे अभी तक नहीं मिला है।
कोई सुझाव?
+1 पता नहीं था कि इसमें एक सीएससीओपी विकल्प है। –
एक बात जो मेरे दिमाग में आती है वह है: मेकफ़ाइल को कैसे देखें, यदि कोई चर मौजूद है तो आप कमांड लाइन में cscope के लिए कुछ विकल्प निर्दिष्ट कर सकते हैं। – Chnossos