[解決済み] Cプログラムのコンパイルで、アーキテクチャx86_64の未定義シンボルが発生する [重複] 。
2022-01-30 23:45:13
質問
という簡単なプログラムを持っています。 demo_use.c
#include "libhello.h"
int main(void) {
hello();
return 0;
}
libhello.h
void hello(void);
libhello.c
#include <stdio.h>
void hello(void) {
printf("Hello, library world.\n");
}
ターミナルで次のようにコマンドを使用しました。
gcc demo_use.c -o test
エラー アーキテクチャ x86_64 に対して未定義のシンボル: "_hello",
参照元: ccZdSQP3.o の _main
ld: アーキテクチャ x86_64 用のシンボルが見つかりません collect2: ld は 1 の終了ステータスを返しました。
解決方法は?
バイナリを生成するには、両方のソースファイルを一緒にコンパイルする必要があります。
gcc demo_use.c libhello.c -o test
それ以外の場合、定義された
hello()
関数が存在しないことになります。そのため、リンク時にリンカは
undefined symbol
というエラーが発生します。
関連
-
[解決済み] Connect: ソケット以外でのソケット操作
-
[解決済み] strtokのセグメンテーションフォールト
-
[解決済み】メモリー・クロバリング・エラー
-
[解決済み】EAGAINとはどういう意味ですか?
-
[解決済み】 「配列のイニシャライザーはイニシャライザーリストまたは文字列リテラルでなければなりません」と表示されるのですが?
-
[解決済み】argv[]をint型として取得するには?
-
[解決済み】malloc():メモリ破壊
-
[解決済み] [Solved] .Cファイルをコンパイルしています。アーキテクチャ x86_64 の未定義シンボル
-
[解決済み] テスト
-
[解決済み】高放射能環境下で使用するアプリケーションのコンパイルについて
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] Connect: ソケット以外でのソケット操作
-
[解決済み】ポインタへの代入時に互換性のないポインタ型からの初期化警告が発生した
-
[解決済み】cudamalloc()の使用。) なぜダブルポインタなのか?
-
[解決済み] テスト
-
[解決済み] struct has no member named
-
[解決済み】「複数の定義」「最初に定義されたのはここです」エラーについて
-
[解決済み] エラー:整数が期待されるところで集約値が使用された
-
[解決済み】スタックスマッシュを検出しました
-
[解決済み】Linuxソケットのwrite()でBad File Descriptorが発生するC
-
[解決済み】Errno: 11, Resource Temporarily Unavailable(リソースが一時的に利用できない