質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
デバッグ

デバッグはプログラムのバグや欠陥を検知し、開発中のバグを取り除く為のプロセスを指します。

Q&A

解決済

2回答

2053閲覧

errorが出てデバッグできません

退会済みユーザー

退会済みユーザー

総合スコア0

デバッグ

デバッグはプログラムのバグや欠陥を検知し、開発中のバグを取り除く為のプロセスを指します。

0グッド

0クリップ

投稿2017/07/22 10:22

編集2017/07/23 11:59

C:\MinGW\users\chap08>gcc

1In file included from kadai8-5.c:5:0: 2getputch.h:22:21: fatal error: curses.h: No such file or directory 3compilation terminated. 4 5のようなエラーが出てデバッグできないのですが、 6ファイルkadai8-5.cはchap08にあり、getputch.hとpdcurses.aとcurses.hも 7chap08にあります。 8$gcc -I. -o kadai8-5 kadai8-5.c pdcurses.aでコンパイルは成功します。実行もできるのですが、 9$gcc -g -okadai8-5 kadai8-5.cを実行すると、最初に挙げたエラーが出てしまいます。 10プログラムを理解するために、stepで実行を見たいのですが。 11どなたか教えていただけますか。`` 12 13 14getputch.hのコードは以下のとおりです。 15 16/* getch/putch用ヘッダ "getputch.h" */ 17 18#if !defined(__GETPUTCH) 19 20 #define __GETPUTCH 21 22 #if defined(_MSC_VER) || (__TURBOC__) || (LSI_C) 23 24 /* MS-Windows/MS-DOS(Visual C++, Borland C++, LSI-C 86 etc ...) */ 25 26 #include <conio.h> 27 28 static void init_getputch(void) { /* 空 */ } 29 30 static void term_getputch(void) { /* 空 */ } 31 32 33 #else 34 35 /* Cursesライブラリが提供されるUNIX/Linux/OS X */ 36 37 #include <curses.h> 38 39 #undef putchar 40 #undef puts 41 #undef printf 42 static char __buf[4096]; 43 44 /*--- __putchar:putchar関数と同等(改行を[改行+復帰]で出力)---*/ 45 static int __putchar(int ch) 46 { 47 if (ch == '\n') 48 putchar('\r'); 49 return (putchar(ch)); 50 } 51 52 /*--- putch:1文字表示してバッファを掃き出す ---*/ 53 static int putch(int ch) 54 { 55 int result = putchar(ch); 56 57 fflush(stdout); 58 return (result); 59 } 60 61 /*--- __printf:printf関数と同等(改行を[改行+復帰]で出力)---*/ 62 static int __printf(const char *format, ...) 63 { 64 va_list ap; 65 int count; 66 67 va_start(ap, format); 68 vsprintf(__buf, format, ap); 69 va_end(ap); 70 71 for (count = 0; __buf[count]; count++) { 72 putchar(__buf[count]); 73 if (__buf[count] == '\n') 74 putchar('\r'); 75 } 76 return (count); 77 } 78 79 /*--- __puts:puts関数と同等(改行を[改行+復帰]で出力)---*/ 80 int __puts(const char *s) 81 { 82 int i, j; 83 84 for (i = 0, j = 0; s[i]; i++) { 85 __buf[j++] = s[i]; 86 if (s[i] == '\n') 87 __buf[j++] = '\r'; 88 } 89 return (puts(__buf)); 90 } 91 92 /*--- ライブラリ初期処理 ---*/ 93 static void init_getputch(void) 94 { 95 initscr(); 96 cbreak(); 97 noecho(); 98 refresh(); 99 } 100 101 /*--- ライブラリ終了処理 ---*/ 102 static void term_getputch(void) 103 { 104 endwin(); 105 } 106 107 #define putchar __putchar 108 #define printf __printf 109 #define puts __puts 110 111 #endif 112 113#endif

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答2

0

ベストアンサー

sudo apt-get install libncurses5-dev
これでまずヘッダを取得してください

投稿2017/07/24 02:41

編集2017/07/24 02:42
tomopunyu

総合スコア44

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

退会済みユーザー

退会済みユーザー

2017/07/26 08:14

MinGWにcurses関連のファイルをインストールして実行すると以下のエラーが出ます。 C:\MinGW\users\chap08>gcc -g -o0 kadai8-5.c C:\Users\nakamura\AppData\Local\Temp\ccgaudrb.o: In function `init_getputch': C:\MinGW\users\chap08/getputch.h:80: undefined reference to `initscr' C:\MinGW\users\chap08/getputch.h:81: undefined reference to `cbreak' C:\MinGW\users\chap08/getputch.h:82: undefined reference to `noecho' C:\MinGW\users\chap08/getputch.h:83: undefined reference to `refresh' C:\Users\nakamura\AppData\Local\Temp\ccgaudrb.o: In function `term_getputch': C:\MinGW\users\chap08/getputch.h:89: undefined reference to `endwin' C:\Users\nakamura\AppData\Local\Temp\ccgaudrb.o: In function `main': C:\MinGW\users\chap08/kadai8-5.c:75: undefined reference to `stdscr' C:\MinGW\users\chap08/kadai8-5.c:75: undefined reference to `wgetch' C:\MinGW\users\chap08/kadai8-5.c:120: undefined reference to `stdscr' C:\MinGW\users\chap08/kadai8-5.c:120: undefined reference to `wgetch' collect2.exe: error: ld returned 1 exit status どうすればいいでしょうか。
guest

0

#include <curses.h>を、#include "curses.h"に変更したらコンパイルできませんか?

投稿2017/07/23 15:00

LouiS0616

総合スコア35660

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問