揮発性のメモ2

知識をメモ書きしておく

wheezyでgcc4.8を使う

wheezyにはgcc-4.7までしかない。
jessieにはgcc-4.8がある


D: AptGet - Debian GNU/Linux スレッドテンプレ:testing や unstable のパッケージを借りたい
aptitudeを使う

# cat >/etc/apt/apt.conf.d/99target
APT::Default-Release "wheezy";
# cat >/etc/apt/sources.list.d/90testing.list
deb http://ftp.jp.debian.org/debian jessie main contrib non-free
deb-src http://ftp.jp.debian.org/debian jessie main contrib non-free
# aptitude install gcc-4.8/jessie

     以下のパッケージを現在のバージョンに一時固定する:
1)     cpp-4.8 [インストールされていません]
2)     gcc-4.8 [インストールされていません]
3)     gcc-4.8-base [インストールされていません]
4)     libcloog-isl4 [インストールされていません]
5)     libmpc3 [インストールされていません]
この解決方法を受け入れますか? [Y/n/q/?]  ★nを選択

      以下のパッケージを削除する:
1)      cpp-4.7
2)      gcc-4.7
3)      gcc-4.7-base

      以下のパッケージをインストールする:
4)      cpp-4.9 [4.9.2-10 (stable)]
5)      gcc-4.9 [4.9.2-10 (stable)]
6)      gcc-4.9-base [4.9.2-10 (stable)]
・・・(中略)

      以下のパッケージを更新する:
15)     binutils [2.22-8+deb7u2 (now, oldstable) -> 2.25-5 (stable)]
・・・(中略)

この解決方法を受け入れますか? [Y/n/q/?]  ★Yを選択


以下の新規パッケージがインストールされます:
  cpp-4.8{a} cpp-4.9{a} gcc-4.8 gcc-4.8-base{a} gcc-4.9{a} gcc-4.9-base{a} libasan0{a} libasan1{a} libatomic1{a} libcilkrts5{a} libcloog-isl4{a}
  libgcc-4.8-dev{a} libgcc-4.9-dev{a} libisl10{a} libmpc3{a} libubsan0{a}
以下のパッケージが削除されます:
  cpp-4.7{a} gcc-4.7{a} gcc-4.7-base{a}
以下のパッケージが更新されます:
  binutils cpp gcc libc-bin libc-dev-bin libc6 libc6-dev libc6-i686 libgcc1 libgomp1 libgssapi-krb5-2 libitm1 libk5crypto3 libkeyutils1 libkrb5-3
  libkrb5support0 libmpfr4 libquadmath0 libstdc++6 libtirpc1 locales nfs-common
更新: 22 個、新規インストール: 16 個、削除: 3 個、保留: 0 個。
44.1 M バイトのアーカイブを取得する必要があります。展開後に 62.4 M バイトのディスク領域が新たに消費されます。
先に進みますか? [Y/n/?]  ★Yを選択
Configuring libc6:i386

Restart services during package upgrades without asking?
<Yes>

これでgcc-4.8がインストールされる。
副作用として、gccが4.9に置き換えられてしまう。

jessieからgcc-4.8を借りる apt-get

# apt-get install gcc-4.8
パッケージリストを読み込んでいます... 完了
依存関係ツリーを作成しています
状態情報を読み取っています... 完了
インストールすることができないパッケージがありました。おそらく、あり得
ない状況を要求したか、(不安定版ディストリビューションを使用しているの
であれば) 必要なパッケージがまだ作成されていなかったり Incoming から移
動されていないことが考えられます。
以下の情報がこの問題を解決するために役立つかもしれません:

以下のパッケージには満たせない依存関係があります:
 gcc-4.8 : 依存: cpp-4.8 (= 4.8.4-1) しかし、インストールされようとしていません
           依存: gcc-4.8-base (= 4.8.4-1) しかし、インストールされようとしていません
           依存: binutils (>= 2.24.90.20141219) しかし、2.22-8+deb7u2 はインストールされようとしています
           依存: libgcc-4.8-dev (>= 4.8.4-1) しかし、インストールされようとしていません
           依存: libcloog-isl4 (>= 0.17) しかし、インストールされようとしていません
           依存: libmpc3 しかし、インストールされようとしていません
           依存: libmpfr4 (>= 3.1.2) しかし、3.1.0-5 はインストールされようとしています
E: 問題を解決することができません。壊れた変更禁止パッケージがあります。
# apt-get install gcc-4.8-base/jessie
パッケージリストを読み込んでいます... 完了
依存関係ツリーを作成しています
状態情報を読み取っています... 完了
'gcc-4.8-base' にはバージョン '4.8.4-1' (Debian:8.3/stable [i386]) を選択しました
以下のパッケージが自動でインストールされましたが、もう必要とされていません:
  gcc-4.6-base hicolor-icon-theme libatk1.0-data libgdk-pixbuf2.0-common libgtk2.0-common libthai-data linux-headers-3.2.0-4-common linux-libc-dev
  manpages-dev xbitmaps
これを削除するには 'apt-get autoremove' を利用してください。
以下のパッケージは「削除」されます:
  acl acpi acpi-fakekey acpi-support acpi-support-base acpid adduser anacron apt apt-listchanges apt-utils aptitude at avahi-autoipd avahi-daemon base-files
  base-passwd bash bash-completion bc bind9-host binutils bluetooth bluez bluez-alsa bluez-cups bluez-gstreamer bsd-mailx bsdmainutils bsdutils busybox bzip2
  ca-certificates colord console-setup console-setup-linux console-tools consolekit coreutils cpio cpp cpp-4.6 cpp-4.7 cron cups cups-client cups-filters
  cups-ppdc dash db5.1-util dbus dc debconf debconf-i18n debian-archive-keyring debianutils dictionaries-common diffutils dmidecode dmsetup dnsutils dpkg
  e2fslibs e2fsprogs exim4 exim4-base exim4-config exim4-daemon-light file findutils fontconfig fontconfig-config foomatic-db-compressed-ppds
  foomatic-db-engine foomatic-filters ftp gcc gcc-4.6 gcc-4.7 gcc-4.7-base geoip-database gettext-base ghostscript ghostscript-cups gir1.2-glib-2.0 gnupg gpgv
  grep groff-base grub-common grub-pc grub-pc-bin grub2-common gzip hdparm host hostname hpijs hplip hplip-data iamerican ibritish ienglish-common ifupdown
  info initramfs-tools initscripts insserv install-info iproute iptables iputils-ping isc-dhcp-client isc-dhcp-common ispell keyboard-configuration kmod less
  libacl1 libapt-inst1.5 libapt-pkg4.12 libart-2.0-2 libasound2 libasprintf0c2 libatk1.0-0 libattr1 libavahi-client3 libavahi-common3 libavahi-core7
  libbind9-80 libblkid1 libboost-iostreams1.49.0 libbsd0 libbz2-1.0 libc-dev-bin libc6 libc6-dev libc6-i686 libcairo2 libcap-ng0 libcap2 libck-connector0
  libcloog-isl4 libcolord1 libcomerr2 libconsole libcups2 libcupscgi1 libcupsdriver1 libcupsfilters1 libcupsimage2 libcupsmime1 libcupsppdc1 libcwidget3
  libdaemon0 libdatrie1 libdb5.1 libdbus-1-3 libdbus-glib-1-2 libdevmapper1.02.1 libdns88 libdrm-intel1 libdrm-nouveau1a libdrm-radeon1 libdrm2 libedit2
  libencode-locale-perl libept1.4.12 libescpr1 libevent-2.0-5 libexif12 libexpat1 libffi5 libfile-copy-recursive-perl libfile-listing-perl libfont-afm-perl
  libfontconfig1 libfontenc1 libfreetype6 libfuse2 libgc1c2 libgcc1 libgcrypt11 libgd2-xpm libgdbm3 libgdk-pixbuf2.0-0 libgeoip1 libgirepository-1.0-1
  libgl1-mesa-dri libgl1-mesa-glx libglade2-0 libglapi-mesa libglib2.0-0 libgmp10 libgnutls-openssl27 libgnutls26 libgomp1 libgpg-error0 libgpgme11
  libgphoto2-2 libgphoto2-port0 libgpm2 libgs9 libgssapi-krb5-2 libgssglue1 libgssrpc4 libgstreamer-plugins-base0.10-0 libgstreamer0.10-0 libgtk2.0-0
  libgtk2.0-bin libgudev-1.0-0 libgusb2 libgutenprint2 libhpmud0 libhtml-form-perl libhtml-format-perl libhtml-parser-perl libhtml-tagset-perl
  libhtml-tree-perl libhttp-cookies-perl libhttp-daemon-perl libhttp-date-perl libhttp-message-perl libhttp-negotiate-perl libice6 libidn11 libieee1284-3
  libijs-0.35 libio-socket-ip-perl libio-socket-ssl-perl libisc84 libisccc80 libisccfg82 libisl10 libitm1 libiw30 libjasper1 libjbig0 libjbig2dec0
  libjpeg-progs libjpeg8 libk5crypto3 libkadm5clnt-mit8 libkadm5srv-mit8 libkdb5-6 libkeyutils1 libkmod2 libkrb5-3 libkrb5support0 liblcms1 liblcms2-2
  libldap-2.4-2 liblocale-gettext-perl liblockfile-bin liblockfile1 libltdl7 liblwp-mediatypes-perl liblwp-protocol-https-perl liblwres80 liblzma5 libmagic1
  libmailtools-perl libmount1 libmpc2 libmpc3 libmpfr4 libncurses5 libncursesw5 libnet-http-perl libnet-ssleay-perl libnewt0.52 libnfnetlink0 libnfsidmap2
  libnl-3-200 libnl-genl-3-200 libnss-mdns libopenjpeg2 liborc-0.4-0 libp11-kit0 libpam-ck-connector libpam-modules libpam-modules-bin libpam-runtime libpam0g
  libpango1.0-0 libpaper-utils libpaper1 libpci3 libpciaccess0 libpcre3 libpcsclite1 libperl5.14 libpipeline1 libpixman-1-0 libpng12-0 libpolkit-agent-1-0
  libpolkit-backend-1-0 libpolkit-gobject-1-0 libpoppler19 libpopt0 libprocps0 libpth20 libquadmath0 libreadline5 libreadline6 librpcsecgss3 libsane
  libsane-extras libsane-hpaio libsasl2-2 libsasl2-modules libselinux1 libsemanage1 libsensors4 libsepol1 libsigc++-2.0-0c2a libslang2 libslp1 libsm6
  libsnmp15 libsocket-perl libsqlite3-0 libss2 libssl1.0.0 libstdc++6 libswitch-perl libsystemd-login0 libtalloc2 libtasn1-3 libtdb1 libtext-charwidth-perl
  libtext-iconv-perl libtext-wrapi18n-perl libthai0 libtiff4 libtimedate-perl libtinfo5 libtirpc1 libtokyocabinet9 libudev0 liburi-perl libusb-0.1-4
  libusb-1.0-0 libustr-1.0-1 libutempter0 libuuid-perl libuuid1 libv4l-0 libv4lconvert0 libwbclient0 libwrap0 libwww-perl libwww-robotrules-perl libx11-6
  libx11-xcb1 libx86-1 libxapian22 libxau6 libxaw7 libxcb-glx0 libxcb-render0 libxcb-shape0 libxcb-shm0 libxcb1 libxcomposite1 libxcursor1 libxdamage1
  libxdmcp6 libxext6 libxfixes3 libxft2 libxi6 libxinerama1 libxml2 libxmu6 libxmuu1 libxpm4 libxrandr2 libxrender1 libxt6 libxtst6 libxv1 libxxf86dga1
  libxxf86vm1 linux-base linux-headers-3.2.0-4-486 linux-headers-3.2.0-4-686-pae linux-headers-486 linux-headers-686-pae linux-image-3.2.0-4-486
  linux-image-3.2.0-4-686-pae linux-image-486 linux-image-686-pae linux-kbuild-3.2 locales login logrotate lsb-release lsof m4 man-db mawk memtest86+ menu
  mlocate module-init-tools mount mscompress multiarch-support mutt nano ncurses-bin net-tools netcat-traditional nfs-common openssh-blacklist
  openssh-blacklist-extra openssh-client openssh-server openssl os-prober passwd patch pciutils pcmciautils perl perl-base perl-modules pm-utils policykit-1
  poppler-data poppler-utils powermgmt-base powertop printer-driver-c2050 printer-driver-c2esp printer-driver-cjet printer-driver-escpr printer-driver-foo2zjs
  printer-driver-gutenprint printer-driver-hpcups printer-driver-hpijs printer-driver-m2300w printer-driver-min12xxw printer-driver-pnm2ppa
  printer-driver-postscript-hp printer-driver-ptouch printer-driver-pxljr printer-driver-sag-gdi printer-driver-splix procmail procps psmisc python python-apt
  python-apt-common python-chardet python-dbus python-debian python-debianbts python-fpconst python-gi python-gobject-2 python-imaging python-minimal
  python-pexpect python-renderpm python-reportbug python-reportlab python-reportlab-accel python-soappy python-support python2.6 python2.6-minimal python2.7
  python2.7-minimal radeontool readline-common reportbug rpcbind rsync rsyslog samba-common samba-common-bin sane-utils sed sgml-base shared-mime-info
  smbclient ssl-cert sudo sysv-rc sysvinit sysvinit-utils tar task-english task-laptop task-ssh-server tasksel tasksel-data tcpd telnet texinfo time
  traceroute ttf-dejavu-core tzdata ucf udev unzip update-inetd util-linux util-linux-locales uuid-runtime vbetool vim-common vim-tiny w3m wamerican wget
  whiptail whois wireless-tools wpasupplicant x11-common x11-utils x11-xserver-utils xauth xml-core xscreensaver xscreensaver-data xterm xz-utils zlib1g
以下のパッケージが新たにインストールされます:
  gcc-4.8-base
警告: 以下の不可欠パッケージが削除されます。
何をしようとしているか本当にわかっていない場合は、実行してはいけません!
  apt libapt-pkg4.12 (apt のため) libc6 (apt のため) libgcc1 (apt のため) libstdc++6 (apt のため) debian-archive-keyring (apt のため) gnupg
  (apt のため) base-files base-passwd bash debianutils (bash のため) dash (bash のため) libtinfo5 (bash のため) bsdutils coreutils dpkg (coreutils
  のため) install-info (coreutils のため) libacl1 (coreutils のため) libattr1 (coreutils のため) libselinux1 (coreutils のため) diffutils
  libbz2-1.0 (dpkg のため) liblzma5 (dpkg のため) zlib1g (dpkg のため) tar (dpkg のため) e2fsprogs e2fslibs (e2fsprogs のため) libblkid1
  (e2fsprogs のため) libcomerr2 (e2fsprogs のため) libss2 (e2fsprogs のため) libuuid1 (e2fsprogs のため) util-linux (e2fsprogs のため)
  findutils grep gzip hostname login libpam0g (login のため) libpam-runtime (login のため) libpam-modules (login のため) mount libmount1 (mount
  のため) libsepol1 (mount のため) ncurses-bin perl-base sed sysvinit initscripts (sysvinit のため) sysv-rc (sysvinit のため) sysvinit-utils
  (sysvinit のため) tzdata (util-linux のため) debconf (util-linux のため) libncurses5 (util-linux のため) libslang2 (util-linux のため)
アップグレード: 0 個、新規インストール: 1 個、削除: 534 個、保留: 0 個。
155 kB のアーカイブを取得する必要があります。
この操作後に 877 MB のディスク容量が解放されます。
重大な問題を引き起こす可能性のあることをしようとしています。
続行するには、'Yes, do as I say!' というフレーズをタイプしてください。
 ?] ^C

恐ろしいのでやめた