Emmanuel Touzery
emman****@wanad*****
Wed Sep 29 15:28:15 JST 2004
Hello, Emmanuel Touzery wrote: > I wrote a ruby-gtk2 ruby program, but exerb fails creating a proper > exe for it. > When running the EXE I get the message: > > ------------------------------- > gtk2.rb:4:in `require': Couldn't modify DLL's name in the import > table. The name > of the executable file is too long. (LoadError) > from gtk2.rb:4 > ------------------------------- > That line 4 contains: > require 'gtk2.so' > that gtk2.so is in the .exr file: > add_extension_library gtk2.so > c:/MinGW/lib/ruby/site_ruby/1.8/i386-msvcrt/gtk2.so > Hmm... I just saw on exerb website: Q12. The error message "Fail to modify the import table. exe file name is too long." has appeared. A12. This message means that the exe file name must be written in 17 characters. I don't know how could I miss it the other day. Anyway, I still don't get it. the longest DLL name in the .exr file is "gdk_pixbuf2.so". It's 14 characters (15 with the final \0). So it shouldn't be the problem. But that question covered executables, not dlls? Is it the problem? It's difficult to try to rename those DLLs, I don't know the sourcecode of the ruby-gtk2 project, nor how practical would it be to rename those dlls (i tried manually but it broke the application: they have a Init_<dllname> method, renaming them will require recompiling them). Changing the generated executable filename (.exe filename, if using the exerb-win32 application, changing the "output" name) didn't help. The complete list of included .so in the .exr file are: Win32API.so [i don't actually need it, tried to remove it, doesn't help] atk.so gdk_pixbuf2.so glib2.so gtk2.so gtk22.so pango.so stringio.so Any idea? Thank you, emmanuel