2016-05-12 55 views

回答

6

目前看來,gdbserver不是在alpine存儲庫中可用的軟件包,並且gdb軟件包不包含gdbserver。

但是,您可以從包含gdbserver的源代碼安裝gdb。

首先,您需要安裝所需的軟件包編譯:

apk add --no-cache make 
apk add --no-cache linux-headers 
apk add --no-cache texinfo 
apk add --no-cache gcc 
apk add --no-cache g++ 

,那麼你可以安裝它,下載源代碼和編譯它:

wget http://ftp.gnu.org/gnu/gdb/gdb-7.11.tar.xz 
tar -xvf gdb-7.11.tar.xz 
cd gdb-7.11 
./configure --prefix=/usr 
make 
make -C gdb install 

之後,你應該能夠從shell運行gdbserver。

我一直在使用這個程序泊塢窗,具有以下dockerfile其中還包括一個SSH服務器的安裝:

FROM alpine 
RUN apk update 
# we need make and linux-headers to compile gdb 
RUN apk add --no-cache make 
RUN apk add --no-cache linux-headers 
RUN apk add --no-cache texinfo 
RUN apk add --no-cache gcc 
RUN apk add --no-cache g++ 
RUN apk add --no-cache gfortran 
# install gdb 
# RUN apk add --no-cache gdb 
RUN mkdir gdb-build ;\ 
    cd gdb-build;\ 
    wget http://ftp.gnu.org/gnu/gdb/gdb-7.11.tar.xz;\ 
    tar -xvf gdb-7.11.tar.xz;\ 
    cd gdb-7.11;\ 
    ./configure --prefix=/usr;\ 
    make;\ 
    make -C gdb install;\ 
    cd ..;\ 
    rm -rf gdb-build/; 
# install ssh server support and keys 
RUN apk add --no-cache openssh 
RUN ssh-keygen -A 
+0

非常感謝您的回答,rulonder!前一段時間,我試圖從源頭上構建抓取,就像你所建議的那樣,但是對於一些模糊的(對我來說,至少)原因是失敗的。你看 - 我主要是一個Windows開發人員,並且我一直在使用Docker鏡像來從MS Visual Studio 2015內部構建和調試Linux應用程序。在Debian上它工作得很好,但是這個鏡像太胖了,所以我嘗試了高山和gdbserver得到這個問題。再次感謝! – user3346684

相關問題