私はLinuxシステムプログラミングを学んでいて、W。リチャードスティーブンスとスティーブンA.ラゴによるAPUE2edの本を読んでいます。
http://www.apuebook.com/に記載されているコードは機能しません。未定義の定義、実装されていない関数(付録に記載)
誰かが私にAPUE2ed、できればUbuntu /gcc4のコンパイル済みコードを教えてもらえますか?
私はLinuxシステムプログラミングを学んでいて、W。リチャードスティーブンスとスティーブンA.ラゴによるAPUE2edの本を読んでいます。
http://www.apuebook.com/に記載されているコードは機能しません。未定義の定義、実装されていない関数(付録に記載)
誰かが私にAPUE2ed、できればUbuntu /gcc4のコンパイル済みコードを教えてもらえますか?
rotkas には、最新のシステムでコンパイルできるように変更されたコードを含む github リポジトリがあります。OSX 10.7 と Ubuntu 10.04 で動作しました。最近は必要ありませんが。
ソースをダウンロードし、README ファイルに従って、Make.defines.linux を編集し、ソース コードを展開した場所を指すように WKDIR を変更しました。次に、make を実行すると、ほぼすべてがコンパイルされましたが、いくつかの警告のみが表示されました。
ただし、threadctl はコンパイルされず、コンパイルする前に getenv1.c と getenv3.cを変更#include <limits.h>
する必要がありました (これが最善の修正であるかどうかはわかりませんが、動作します)。#include <linux/limits.h>
それが私のために働いたリンクをジャシンダに感謝しますが、私も何か他のことをしなければなりませんでした
github/roktas のソース コードを使用し、プログラムを実行するために次のコマンドを使用しました。
gcc -o myls myls.c -I SCADDRESS/include/ -L SCADDRESS/lib/ -lapue
誰かが同じ問題を抱えている場合は、このリンクにアクセスできます。