cドライブ直下に、MinGWとmsysというのを導入後、msys.batで端末?を起動しました。 そこで、./configure --disable-shared --enable-monolithic --enable-unicodeと行い、make make installまでは行いました。 make installした成果物?をwindowsの実行環境にどうもっていくか調べているところです。
/usr/bin/ld: cannot find -lgdk_pixbuf-2.0 /usr/local/lib/libwx_baseu-2.8.a(baselib_dlunix.o): In function `wxDynamicLibrary::GetProgramHandle()': dlunix.cpp:(.text+0x13): warning: Using 'dlopen' in statically linked applications requires at runtime the shared libraries from the glibc version used for linking /usr/lib/gcc/i686-linux-gnu/4.6.1/../../../i386-linux-gnu/libgio-2.0.a(libgio_2_0_la-glocalfileinfo.o): In function `lookup_gid_name': (.text+0x1a5c): warning: Using 'getgrgid_r' in statically linked applications requires at runtime the shared libraries from the glibc version used for linking /usr/local/lib/libwx_baseu-2.8.a(baselib_utilsunx.o): In function `wxGetUserHome(wxString const&)': utilsunx.cpp:(.text+0x14f5): warning: Using 'getpwnam' in statically linked applications requires at runtime the shared libraries from the glibc version used for linking utilsunx.cpp:(.text+0x157a): warning: Using 'getpwuid' in statically linked applications requires at runtime the shared libraries from the glibc version used for linking /usr/lib/gcc/i686-linux-gnu/4.6.1/../../../i386-linux-gnu/libglib-2.0.a(gutils.o): In function `g_get_any_init_do': (.text+0xe2a): warning: Using 'setpwent' in statically linked applications requires at runtime the shared libraries from the glibc version used for linking /usr/lib/gcc/i686-linux-gnu/4.6.1/../../../i386-linux-gnu/libglib-2.0.a(gutils.o): In function `g_get_any_init_do': (.text+0xe40): warning: Using 'endpwent' in statically linked applications requires at runtime the shared libraries from the glibc version used for linking
2行目より後は警告だから無視してもいいのかもしれないが、意味としては 「warning: Using 'dlopen' in statically linked applications requires at runtime the shared libraries from the glibc version used for linking」 「警告:コンパイルに使っとるglibcがシェアードライブラリじゃねーか、スタティックライブラリでリンクしろよクソ野郎」
という感じですか、間違ってたらすまん。頑張ってgdk-pixbufとwxとglibのライブラリを手に入れてください(もちろんスタティックライブラリで) 0382デフォルトの名無しさん2012/01/12(木) 18:42:52.46 あ、でも 「warning: Using 'dlopen' in statically linked applications requires at runtime the shared libraries from the glibc version used for linking」系のエラーは スタティックライブラリを使っても出ることがあるみたいだな。 つーことは一番の目標はgdk-pixbufをインストールすることか。簡単じゃん。 0383デフォルトの名無しさん2012/01/12(木) 19:03:01.17 ここまでおまえの自演 0384デフォルトの名無しさん2012/01/12(木) 20:59:28.67>>381 後から見返してみると私の状況説明がたりないため、自業自得ですが、 どこまで甘えてんだよと言われましても>>379までの-staticオプションをつけてコンパイルする、というのは>>371ですでにためしたと説明したつもりだったのですが、すみません。
一応libgdk-pixbuf-2.0.0、libgdk-pixbuf-2.0.dvg はインストール済みで、wxWidgetsはもちろん入れています。glibやlibcもapt-cache searchを使って目についた関連がありそうなものをインストールしまくって、コンパイルした結果上記のエラーが出ています。 また、libc.aと言うファイルを5時間ほど探しつづけましたが見当たらず、また、下記のリンクの一番下の回答者の Check your Output mode settings, I believe you have linking set to "static". So the linker is looking for libgdk-pixbuf-2.0.a, which is probably not present. If you switch it to "shared" it should begin to work..
if (rx.Matches(text, wxRE_NOTBOL)) { int n = rx.GetMatchCount(); for (int i = 0; i < n; ++i) { wxMessageBox(rx.GetMatch(text, i)); } } 0411デフォルトの名無しさん2012/02/03(金) 02:34:29.06>>410 レスありがとうございます。
しばらく時間がかかりそうですが、うまくいきましたら報告にきます。 ありがとうございました。 0412デフォルトの名無しさん2012/02/03(金) 12:24:05.07>>409 > for (size_t i=0 ; i < count ; count--) count-- っておま 0413デフォルトの名無しさん2012/02/04(土) 00:41:55.82>>412 --ってあまりよくないようなので、i++に変更しました。
wxString regexText(L".?"); wxString text(L"abc123"); wxRegEx rx; rx.Compile(regexText,wxRE_ADVANCED); if (rx.IsValid()==TRUE) { if (rx.Matches(text)) { int n = rx.GetMatchCount(); for (int i = 0; i < n; ++i) { wxMessageBox(rx.GetMatch(text, i)); }}}
上記コードでコンパイルしたところ、faild in GetMatch() invalid match indexというのはでなくなりました。 ((count--)と実行していた行で、エラーが発生していました。)
(gdb) backtrace #0 0x000000000079c785 in wxCSConv::DoCreate() const () #1 0x000000000079d7bd in wxCSConv::wxCSConv(wxFontEncoding) () #2 0x000000000079dacd in wxGet_wxConvLocalPtr() () #3 0x00007ffff3a79018 in _GLOBAL__sub_I_strconv.cpp () from /usr/local/lib/libwx_baseu-2.9.so.3 #4 0x0000003c4400e2b6 in call_init.part.0 () from /lib64/ld-linux-x86-64.so.2 #5 0x0000003c4400e393 in _dl_init_internal () from /lib64/ld-linux-x86-64.so.2 #6 0x0000003c440016ca in _dl_start_user () from /lib64/ld-linux-x86-64.so.2 #7 0x0000000000000001 in ?? () #8 0x00007fffffffe815 in ?? () #9 0x0000000000000000 in ?? () 0430デフォルトの名無しさん2012/06/13(水) 22:49:56.47 EVT_CLOSE に対して Close(True) しても終了出来ません 0431デフォルトの名無しさん2012/06/25(月) 07:17:22.37http://cametan-001.tumblr.com/post/5864304659/wxpython0432デフォルトの名無しさん2012/07/04(水) 17:16:02.11 ほす ttp://www.youtube.com/watch?v=8v52QIP4L9Y 0433デフォルトの名無しさん2012/07/05(木) 16:29:10.99http://mikunchu.wiki.fc2.com/wiki/%E3%82%BB%E3%83%83%E3%83%88%E3%82%A2%E3%83%83%E3%83%97%E3%83%98%E3%83%AB%E3%83%91%EF%BC%86%E4%B8%80%E6%8B%AC%E5%B0%8E%E5%85%A5%E3%82%B9%E3%82%AF%E3%83%AA%E3%83%97%E3%83%880434デフォルトの名無しさん2012/07/05(木) 16:30:39.73 wxWidgetsでShift_JISからUTF-8変換 ttp://nantonaku-shiawase.hatenablog.com/entry/2012/05/16/031005
wxNotebookとwxAuiNotebookの違い ttp://nantonaku-shiawase.hatenablog.com/entry/20120211/1328967345 0435デフォルトの名無しさん2012/07/08(日) 23:42:42.45>>430 EVT_CLOSEのハンドラの処理では終了処理した後event.Skip(false); Closeを呼ぶとまたハンドラが呼ばれる 0436デフォルトの名無しさん2012/07/09(月) 07:12:24.08http://wxpython.org/docs/api/wx.CloseEvent-class.html You should check whether the application is forcing the deletion of the window using CanVeto(). If it returns False, you must destroy the window using wx.Window.Destroy. If the return value is True, it is up to you whether you respond by destroying the window or not. For example you may wish to display a message dialog prompting to save files or to cancel the close. 0437デフォルトの名無しさん2012/07/13(金) 19:00:38.12 ソースに const char sjis[3] = {0x88, 0xa2, 0x00}; wxString s(sjis, wxCSConv(wxT("CP932"))); cout << s.mb_str(wxConvUTF8) << endl; という部分があるとリンク時に下のようなエラーになります。
void functestFrame::OnButton3Click(wxCommandEvent& event) { wxArrayString temp1; temp1.Add(wxT("ぽけもん")); functestFrame::wxArrayStringfunc(&temp1); } void functestFrame::wxArrayStringfunc(wxArrayString *arraystring) { for (int i=0 ; i< *arraystring.GetCount() ; i++) {*arraystring.Item(i);} } コンパイルエラーがでます。 C:\Users\x\Desktop\functest\functestMain.cpp||In member function 'void functestFrame::wxArrayStringfunc(wxArrayString*)':| C:\Users\x\Desktop\functest\functestMain.cpp|169|error: request for member 'GetCount' in 'arraystring', which is of non-class type 'wxArrayString*'| C:\Users\x\Desktop\functest\functestMain.cpp|170|error: request for member 'Item' in 'arraystring', which is of non-class type 'wxArrayString*'| ||=== Build finished: 2 errors, 0 warnings (0 minutes, 1 seconds) ===|