Linux 程式設計課堂CH8裡的msg1.c跟msg2.c都會出現如下問題
請問一下為什麼msgget會產生失敗??
![](https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhtWlOE4bvaA1jIeJ0q9WMSWePlLX4WjU0qIpFSAALEmZqE2cVhIEKB_gYTaPrnTr9H-r9BZ-nwSyGZCy2nAECxTsZyTGNVYpo81uK2wmpZ-SFykpFkSN7FCI6ADrxHxx_0DN5sNDaG6ck/s1600/ipc.png)
fprintf(stderr, "msgget failed with error: %d\n", errno);
errno: 88 是 #define ENOTSOCK 88 /* Socket operation on non-socket */
解決方式: 讓核心支援Message Queue
cd ~/linux-rpi-4.4.y ; make menuconfig
( toolcahin 路徑要設定好且要有 ncurse.h 才行!) sudo apt-get install libncurses5-dev
將 [General Setup] --> [POSIX Message Queues] 編進核心內 [*] 或編成核心模組 [M]
沒有留言 :
張貼留言