これは簡単に聞こえますが、私を狂わせます。
私はプリントサーバーとして使用していたARMチップセット(特にRaspberry Pi)でArch Linuxを実行しています。私はサムスンプリンタ用の一般的なSplixドライバでCUPSを実行し、残念なオーバークロック実験でファイルシステムが完全に破壊されるまでしばらくうまくいきました。
そのため、プリントサーバーのOSとソフトウェアを再構築していますが、Splix 2.0.0はもはや古いようにgccでコンパイルされていないようです。 Splixプロジェクトは2009年以降に変更されていないため、最近のコード変更の可能性を排除できます。 Splixをコンパイルしようとしたときに受け取ったエラーメッセージは、プロトタイプが特定のファイルのオーバーロードされたメソッドと正確に一致しないという苦情に近いです。私はこれが最新バージョンのgcc(4.8.2-7)がもはやこのSplixドライバと逆互換にならないからだと思います。
機会があるときにコンパイルされたバイナリをバックアップしていないことについて自分自身を非難し、これがpacman
ダウングレードを悪夢にしようとする意図であることを冷徹に認識することに加えて、ARMチップセット用のgccを見つける方法を見つけようとしています。パッケージが比較的古いので、4.7.xを使用することをお勧めします。その後、pacman -U xxxx.tar.gz
パックマンにパッケージをアップグレードしないように指示します。 gcc-libsでも同じことをする必要があるかもしれません。
ARMチップセット用にこのソフトウェアをビルドするパッケージサイトがないため、Splixがダウンロードしてコンパイルする必要がある唯一のソースであるため、比較的リスクが低いでしょう。
gcc用4.7ソースコードをダウンロードしてコンパイルする必要がありますが、どこから始めるべきかわからない場合はどうすればよいですか? gcc以外に動作する他のC ++コンパイラはありますか?
修正する:
私が要求したGCCバージョンがあるので、私のロールバックシステムを指す答えを受け入れました。すべての依存関係を手動でダウンロードしてインストールでき、GCCは正常に動作しているように見えましたが、このバージョンでもコンパイラエラーが発生することがわかりました。
pacman
Splix 2.0.0がコミュニティリポジトリで実際に利用可能であるという事実さえ知らなかったので、今すぐ自分を打ちたいです!pacman -Q slpix
最初にパッケージが見つからないというメッセージが表示されたため、クエリ時に誤ってスペルを入力したようです。その後、ソースコードをダウンロードして直接コンパイルしなければならないと思っていましたが、同じ問題が発生するかどうかそうしなかったようです。
言うまでもなく、私はとても恥ずかしくて、すべての助けに感謝します。 Splix 2.0.0をビルドできない理由が気になります。私が何か簡単なものを見逃しているのは明らかです。しかし、私は最高のC++開発者ではないので、専門家に任せます。
答え1
確認する必要がありますArch Linux ARMロールバックマシン。そこにgcc 4.7.2パッケージがあります。