未定義の `__isoc99_sscanf' への参照
2022-02-08 14:47:12
オリジナルのキーコンテンツです。
<スパン
glibc 2.7以前のバージョンがインストールされており、glibc 2.7に対してコンパイルされたライブラリ(ffmpeg?)を使用している場合です。バージョン2.7でglibcに追加された__isoc99_sscanfを使用しています。
<スパン
そのシンボルを参照しているスタティックライブラリファイル(*.a)を確認し、再コンパイルする必要があります。コマンド
コード
objdump -t
ライブラリへのパス.a | grep -e __isoc99_sscanf
または、c ライブラリをバージョン 2.7 以降にアップグレードすることも可能です。Debian や Ubuntu を使っている場合は、パッケージのアップグレードが必要です。 libc6-dev を最低でも2.7にすれば十分です。
<スパン エラーメッセージがバージョン管理されていないシンボルを参照していた場合(つまり、エラーメッセージが __isoc99_sscanf@GLIBC... を参照していなかった場合)、stdargs と GNU sscanf(それらの違いは通常重要ではありません)を使用して __isoc99_sscanf ラッパーを書いて、それをリンクに含めることができます。
<スパン -------------------------------------------------------
エラーです。
未定義の `__isoc99_sscanf' への参照。
<スパン 原因は、このプログラムで使用されている xxx.a や xxx.so などのライブラリの1つが、より高いバージョンの glibc 環境の中でコンパイルされているためです。
回避策は2つあります。
<スパン 1. glibcをバージョン2.7にアップグレードする。
<スパン 2. xxx.aまたはxxx.soを見つけ、我々のシステムで再コンパイルし、それを使用する。
関連
-
_CRT_SECURE_NO_WARNINGS エラーメッセージ、解決方法
-
error: '.' トークンの前にunqualified-idを指定する必要があります。
-
赤線の位置は必ずしも間違っていない:式は変更可能なlvalueでなければならないエラーは、この文とは別の場所に存在する可能性があります。
-
[C] Error [Error] 代入の左オペランドとして lvalue が必要です。
-
Solve Dev-c++ [エラー] 'for' ループの初期宣言は、C99 または C11 モードでのみ許可されます。
-
error: 'for' loop initial declaration is only allowed in C99 mode 原因と解決方法
-
関数 'malloc' の暗黙の宣言に対する解決策
-
initializer element is not constant "というエラーが表示されるのですが?
-
コンパイルエラー:可変長オブジェクトが初期化されていない可能性があります。
-
C: 1を求める! + 2! + 3! + ... + n! (ループ)
最新
-
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 実装 サイバーパンク風ボタン
おすすめ
-
C 構造体定義エラー: '['トークンの前に一次式があることが予想される
-
構造体の配列--[エラー] '['トークンの前に一次式があることが予想される
-
g++が内部・外部コマンドソリューションとして認識されない、MinGWを初めて使うときの落とし穴
-
[C] レポートエラー 代入の左オペランドとしてlvalueが必要
-
libc++abi.dylib: NSException タイプの捕捉されない例外で終了するエラー
-
#137: 式は変更可能なlvalueでなければならない問題 // 文字列配列の代入問題
-
警告:代入がキャストなしで整数からポインタを作成する場合の修正方法に関する警告
-
C++の配列コピー
-
C/C++の再定義
-
エラー: 宣言されていない識別子 'bool' の使用と C コンパイラでの問題点