
以前CentOS6.6を使用しており、他の環境もいろいろ使ってみたいと思い、Ubuntu14.10の環境を構築しました。
CentOSでX11を用いて画像を表示するプログラムがあったのですが、それをそのままUbuntuにうつして実行してもエラーが出てできませんでした。
もちろんUbuntuにおいて、X11ライブラリのインストールはしましたし、コンパイルにはMakefileを用いてやっておりますが、-lX11のオプションも通してあります。
しかし、
xdisp.c:52: `XOpenDisplay' に対する定義されていない参照です
など、他の関数に対してもX11に関しては未定義のような挙動を見せます。
これはsqrt関数(math.h)に関しても同様のことが起こりました。
原因が分かる方いましたらよろしくお願いします。
No.2ベストアンサー
- 回答日時:
あれがコンパイルできるってことは, とりあえず
「これはsqrt関数(math.h)に関しても同様のことが起こりました。」
については「コンパイル環境の問題ではない」ことがほぼ確定だな.
で, 「最後にこういったエラーもでました」って言われても, それでは問題の解決にはなんら役にたたないことはわかるね? むしろ「関数の参照ができないというエラー」よりも前のメッセージが重要なんだよ.
No.1
- 回答日時:
他にメッセージはないのかな?
とりあえず X は後まわしにして sqrt について考えてみるけど, 例えば
#include <stdio.h>
#include <math.h>
int main()
{
printf("sqrt(4.0) = %f\n", sqrt(4.0));
return 0;
}
というプログラムを sq.c という名前で作って
gcc -o sq sq.c -lm
でコンパイルしたらどんなメッセージが出るのか, 一字一句そのまま書いてもらえますか?
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- UNIX・Linux Ubuntu on Xorgのログインについて 2 2023/08/10 15:16
- UNIX・Linux WSL+Dockerでpython実行環境構築について 3 2023/05/05 17:03
- UNIX・Linux Linux Ubuntu22.4の起動時エラーについて 2 2022/07/22 14:52
- その他(OS) Ubuntuに仮想環境いれて古いwindows動かしたいんですが、OSイメージ無料で手に入りますか? 2 2023/03/09 23:49
- Visual Basic(VBA) VBAのエラーについて 2 2023/08/02 17:46
- FX・外国為替取引 MQL5にて謎のエラーが発生!だれか対処を教えてください! 1 2023/03/25 15:59
- その他(プログラミング・Web制作) Pythonの作業環境・作業フォルダの迅速な設定・指定方法 3 2022/04/01 07:55
- UNIX・Linux ubuntu 更新 2 2023/02/16 11:33
- その他(IT・Webサービス) ホームページにカウント数を表示する 2 2022/10/28 10:37
- PostgreSQL PostgreSQL14.6のSSL対応について 1 2023/01/05 15:42
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
<unistd.h>をVisualStudioでつ...
-
実行後にコンパイルに失敗しま...
-
VBの参照設定について
-
アプリケーションのDLLファイル...
-
math.hに含まれる関数が使えない
-
gccでc++プログラムをコンパイ...
-
C#で char型とstring型の比較で...
-
Cのコンパイルでコメントアウト...
-
<math.h>ヘッダを入力している...
-
fatal error LNK1112
-
#ifdef の使い方
-
不明なプラグマ・・・?
-
プレコンパイルの意味を教えて...
-
コンパイル失敗と表示されまし...
-
Delphiでクラスをオブジェクト...
-
実行ファイルが作成環境以外のP...
-
VBでUnicodeの記号を表示する方法
-
VCでコンパイラ実行時に警告を...
-
strcpyが古い形式として宣言さ...
-
return (0)の括弧は何故付ける
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
<unistd.h>をVisualStudioでつ...
-
アプリケーションのDLLファイル...
-
実行後にコンパイルに失敗しま...
-
math.hに含まれる関数が使えない
-
シリアル通信の受信待ちについて
-
ビープ音が鳴りません・・・
-
C#で char型とstring型の比較で...
-
c言語です コンパイルした時に...
-
共有ライブラリの内容確認について
-
すべてのリビルド: 0 正常、 0 ...
-
64ビットのlinuxで32ビットメモ...
-
C言語で作ったらWindowsでもMac...
-
MS-BASICの逆コンパイルについて
-
<math.h>ヘッダを入力している...
-
ヘッダーファイル『windows.h』...
-
プレコンパイルの意味を教えて...
-
Verilog_HDLでのdefineとifdef
-
[COBOL] ソースの復帰
-
gcc バージョン違いによるコン...
-
同じEXE・同じファイルで解析結...
おすすめ情報
返事遅れましてすみません。
回答していただいたプログラムを作成してコンパイルしたところ何も問題はありませんでした。
関数の参照ができないというエラーばかりですが、最後にこういったエラーもでました。
collect2: error: ld returned 1 exit status
Makefile:17: recipe for target 'Pose' failed
make: *** [Pose] Error 1
多分全部作り直したらコンパイル通りそうな気もするのですが・・・。
全部ファイルコピペで互換性?の問題でリンカがうまくいっていないということでしょうかね。
そうだとするとじゃあ何故かという説明はまったくできないので違うとは思いますが。