カーネルによって正しく初期化される Zigbee RF4CE 用のデバイス ドライバーがあります。ただし、ユーザー空間アプリケーションがデバイスを開こうとすると、次のエラーが表示されます: エラー: デバイスを開くことができませんでした: そのようなファイルまたはディレクトリはありません
/dev フォルダーで ls を実行すると、デバイス名が疑問符「?」で終わることが示されます。
ノードを作成するために使用しているスクリプト ファイルのデバイス名に特殊文字が明示的に追加されていない場合に、なぜそうなるのか知りたいです。
スクリプトの一部を次に示します。
DEVICE_INPUT_MAJOR=`grep device-input /proc/devices | sed 's/^ *\([0-9]*\) .*$/\1/'`
if [ "$EUID" != "0" ] || [ "$1" == "-t" ] ; then
if [ "$EUID" != "0" ] ; then
echo
echo "You need to be root to create the nodes."
echo
fi
echo "Here is what would be done:"
ECHO=echo
else
ECHO=
fi
function create_if()
{
name=$1
major=$2
minor=$3
#echo $name $major $minor
if [ "$major" != "" ] ; then
$ECHO mknod $name c $major $minor
echo -e $major "\t" $minor "\t" $name
else
echo -e "--- \t\t" $name
fi
}
create_if $BASE_DIR/$MY_DEVICE_DIR/$MY_DEVICE "$DEVICE_INPUT_MAJOR" 0
この問題を解決するにはどうすればよいですか?