-
- 371
- 2012/01/11(水) 14:12:14.80
-
Linuxで開発したツールを知り合いの古い環境で動くかどうかテストしたら、libc.so.6が見当たらないっていうエラーが出てくるのですが、標準Cライブラリって動的リンクするしか方法はないのでしょうか?
その場合、作った実行ファイルは古い環境では動かないのかな…
一応./configure のオプションは
--with-gtk --enable-std_iostreams --enable-std_string
--enable-controls --disable-shared --enable-unicode --with-libjpeg=builtin
--with-libpng=builtin --with-regex=builtin --with-libtiff=builtin --with-zlib=builtin --with-expat=builtin
にして、プログラムのコンパイルは
g++ -o hoge.cpp `wx-config --cxxflags` `wx-config --libs`
g++ -o hoge.cpp `wx-config --cxxflags` `wx-config --libs` -static-libgcc -static-libstdc++
g++ -o hoge.cpp `wx-config --cxxflags` `wx-config --static --libs`
の3通りで実行ファイルを作ってそれぞれ試してもらったのですが、どれもlibc.so.6が利用できないというような意味のエラーが出てきます。
また
g++ -static -o hoge.cpp `wx-config --cxxflags` `wx-config --libs`
についても試しましたが、コンパイルエラーが大量に(主にライブラリが見当たらないといったようなエラー)が出てきます。
解決方法があるようでしたらご教授お願いします
このページを共有する
おすすめワード