Anatol Pomozov
2005-Nov-30 19:04 UTC
[Ferret-talk] Compilation of ferret C-extension under Windows.
Hi, David. I have recently fixed ferret C sources and successfully compile extension with MSVC.Net The problem was that MS compiler is more stricter that GCC and require that all variables were declared before using. There was ~30 such declaration. I have fixed them all. But I am not sure that it works because tests failed with following error both on clean and patched versions. So seems that it is ferret internal error. test_persist_index(IndexTest): RuntimeError: could not obtain lock: C:/work/opensource/1/111/test/temp/fsdir/ferret- e0bcfc4d8e4ef5b2678a85120e4b572ccommit.lock C:/work/opensource/1/111/test/../lib/ferret/store/fs_store.rb:234:in `obtain'' C:/work/opensource/1/111/test/../lib/ferret/store/directory.rb:133:in `while_locked'' C:/work/opensource/1/111/test/../lib/ferret/index/index_writer.rb:417:in `merge_segments'' C:/work/opensource/1/111/test/../lib/ferret/index/index_writer.rb:416:in `synchronize'' C:/work/opensource/1/111/test/../lib/ferret/index/index_writer.rb:416:in `merge_segments'' C:/work/opensource/1/111/test/../lib/ferret/index/index_writer.rb:183:in `optimize'' C:/work/opensource/1/111/test/../lib/ferret/index/index_writer.rb:173:in `synchronize'' C:/work/opensource/1/111/test/../lib/ferret/index/index_writer.rb:173:in `optimize'' C:/work/opensource/1/111/test/../lib/ferret/index/index_writer.rb:221:in `add_indexes'' C:/work/opensource/1/111/test/../lib/ferret/index/index_writer.rb:198:in `synchronize'' C:/work/opensource/1/111/test/../lib/ferret/index/index_writer.rb:198:in `add_indexes'' C:/work/opensource/1/111/test/../lib/ferret/index/index.rb:545:in `persist'' C:/work/opensource/1/111/test/../lib/ferret/index/index.rb:535:in `synchronize'' C:/work/opensource/1/111/test/../lib/ferret/index/index.rb:535:in `persist'' C:/work/opensource/1/111/test/unit/../unit/analysis/../../unit/document/../../unit/index/tc_index.rb:260:in `test_persist_index'' Anyway I could share or send a patch for C sources if you like. -- anatol (http://pomozov.info) -------------- next part -------------- An HTML attachment was scrubbed... URL: http://rubyforge.org/pipermail/ferret-talk/attachments/20051130/45d158ae/attachment.htm
David Balmain
2005-Dec-01 01:56 UTC
[Ferret-talk] Compilation of ferret C-extension under Windows.
Hi Anatol, On 12/1/05, Anatol Pomozov <anatol.pomozov at gmail.com> wrote:> Hi, David. > > I have recently fixed ferret C sources and successfully compile extension > with MSVC.Net The problem was that MS compiler is more stricter that GCC and > require that all variables were declared before using. There was ~30 such > declaration. I have fixed them all. > > But I am not sure that it works because tests failed with following error > both on clean and patched versions. So seems that it is ferret internal > error. > > test_persist_index(IndexTest): > RuntimeError: could not obtain lock: > C:/work/opensource/1/111/test/temp/fsdir/ferret- > e0bcfc4d8e4ef5b2678a85120e4b572ccommit.lock >This isn''t a bug but rather caused by the fact that you have a lock still open in your index. I have put finalizers on the lock in the version of Ferret in trunk to stop this from happening but it is better if you make sure that you close the index before you shut down the process. I think a lot of people are getting this error when they''re running ferret in a webapp and they kill the server process. To get it working again, just delete the lock file.> > Anyway I could share or send a patch for C sources if you like.A patch would be great if its not too much trouble. Otherwise, I''d love to see an example of what exactly is causing the error. Do you mean it doesn''t accept; int x = 3; Thanks for your help. Dave
Anatol Pomozov
2005-Dec-01 09:13 UTC
[Ferret-talk] Compilation of ferret C-extension under Windows.
Hi, David. On 12/1/05, David Balmain <dbalmain.ml at gmail.com> wrote:> > Hi Anatol, > > On 12/1/05, Anatol Pomozov <anatol.pomozov at gmail.com> wrote: > > Hi, David. > > > > I have recently fixed ferret C sources and successfully compile > extension > > with MSVC.Net The problem was that MS compiler is more stricter that GCC > and > > require that all variables were declared before using. There was ~30 > such > > declaration. I have fixed them all. > > > > But I am not sure that it works because tests failed with following > error > > both on clean and patched versions. So seems that it is ferret internal > > error. > > > > test_persist_index(IndexTest): > > RuntimeError: could not obtain lock: > > C:/work/opensource/1/111/test/temp/fsdir/ferret- > > e0bcfc4d8e4ef5b2678a85120e4b572ccommit.lock > > > > This isn''t a bug but rather caused by the fact that you have a lock > still open in your index. I have put finalizers on the lock in the > version of Ferret in trunk to stop this from happening but it is > better if you make sure that you close the index before you shut down > the process. I think a lot of people are getting this error when > they''re running ferret in a webapp and they kill the server process. > To get it working again, just delete the lock file.But It happens during Ferret tests. Now I have another error in Ferret tests. 3) Error: test_persist_index(IndexTest): Errno::EACCES: Permission denied - C:/work/opensource/ferret/test/temp/fsdir/_8.cfs C:/work/opensource/ferret/test/../lib/ferret/store/fs_store.rb:105:in `delete'' C:/work/opensource/ferret/test/../lib/ferret/store/fs_store.rb:105:in `refresh'' C:/work/opensource/ferret/test/../lib/ferret/store/fs_store.rb:104:in `each'' C:/work/opensource/ferret/test/../lib/ferret/store/fs_store.rb:123:in `each'' C:/work/opensource/ferret/test/../lib/ferret/store/fs_store.rb:123:in `each'' C:/work/opensource/ferret/test/../lib/ferret/store/fs_store.rb:104:in `refresh'' C:/work/opensource/ferret/test/../lib/ferret/store/fs_store.rb:101:in `synchronize'' C:/work/opensource/ferret/test/../lib/ferret/store/fs_store.rb:101:in `refresh'' C:/work/opensource/ferret/test/../lib/ferret/store/fs_store.rb:74:in `new'' C:/work/opensource/ferret/test/../lib/ferret/store/fs_store.rb:68:in `synchronize'' C:/work/opensource/ferret/test/../lib/ferret/store/fs_store.rb:68:in `new'' C:/work/opensource/ferret/test/../lib/ferret/index/index.rb:539:in `persist'' C:/work/opensource/ferret/test/../lib/ferret/index/index.rb:535:in `synchronize'' C:/work/opensource/ferret/test/../lib/ferret/index/index.rb:535:in `persist'' C:/work/opensource/ferret/test/unit/../unit/analysis/../../unit/document/../../unit/index/tc_index.rb:260:in `test_persist_index'' Dir C:\work\opensource\ferret\test\temp\fsdir is empty after tests are finished.> > > Anyway I could share or send a patch for C sources if you like. > > A patch would be great if its not too much trouble. Otherwise, I''d > love to see an example of what exactly is causing the error. Do you > mean it doesn''t accept; > > int x = 3;Such thing accepted but not GET_STE; TermInfo *ti; Data_Get_Struct(rti, TermInfo, ti); because GET_STE contains function call. After that we declire variale TermInfo *ti; It is not accepted by MSVC compiler. Ok. There is part of .diff file. Index: index_io.c ==================================================================--- index_io.c (revision 152) +++ index_io.c (working copy) @@ -32,9 +32,9 @@ static VALUE frt_indexin_init_copy(VALUE self, VALUE orig) { - GET_MY_BUF; IndexBuffer *orig_buf; int len; + GET_MY_BUF; if (self == orig) return self; @@ -53,10 +53,11 @@ static VALUE frt_indexin_refill(VALUE self) { - GET_MY_BUF; long start; + VALUE rStr; int stop, len_to_read; int input_len = FIX2INT(rb_funcall(self, frt_length, 0, NULL)); + GET_MY_BUF; start = my_buf->start + my_buf->pos; stop = start + BUFFER_SIZE; @@ -69,7 +70,7 @@ rb_raise(rb_eEOFError, "IndexInput: Read past End of File"); } - VALUE rStr = rb_str_new((char *)my_buf->buffer, BUFFER_SIZE); + rStr = rb_str_new((char *)my_buf->buffer, BUFFER_SIZE); rb_funcall(self, frt_read_internal, 3, rStr, INT2FIX(0), INT2FIX(len_to_read)); -- anatol (http://pomozov.info) -------------- next part -------------- An HTML attachment was scrubbed... URL: http://rubyforge.org/pipermail/ferret-talk/attachments/20051201/89ca7546/attachment-0001.htm
Anatol Pomozov
2005-Dec-01 09:16 UTC
[Ferret-talk] Compilation of ferret C-extension under Windows.
Ok. Better if you look at whole patch for Ferret. http://pomozov.info/downloads/ferret-msvc-patch.zip On 12/1/05, Anatol Pomozov <anatol.pomozov at gmail.com> wrote:> > Hi, David. > > On 12/1/05, David Balmain <dbalmain.ml at gmail.com> wrote: > > > > Hi Anatol, > > > > On 12/1/05, Anatol Pomozov <anatol.pomozov at gmail.com> wrote: > > > Hi, David. > > > > > > I have recently fixed ferret C sources and successfully compile > > extension > > > with MSVC.Net The problem was that MS compiler is more stricter that > > GCC and > > > require that all variables were declared before using. There was ~30 > > such > > > declaration. I have fixed them all. > > > > > > But I am not sure that it works because tests failed with following > > error > > > both on clean and patched versions. So seems that it is ferret > > internal > > > error. > > > > > > test_persist_index(IndexTest): > > > RuntimeError: could not obtain lock: > > > C:/work/opensource/1/111/test/temp/fsdir/ferret- > > > e0bcfc4d8e4ef5b2678a85120e4b572ccommit.lock > > > > > > > This isn''t a bug but rather caused by the fact that you have a lock > > still open in your index. I have put finalizers on the lock in the > > version of Ferret in trunk to stop this from happening but it is > > better if you make sure that you close the index before you shut down > > the process. I think a lot of people are getting this error when > > they''re running ferret in a webapp and they kill the server process. > > To get it working again, just delete the lock file. > > > But It happens during Ferret tests. > Now I have another error in Ferret tests. > > 3) Error: > test_persist_index(IndexTest): > Errno::EACCES: Permission denied - > C:/work/opensource/ferret/test/temp/fsdir/_8.cfs > C:/work/opensource/ferret/test/../lib/ferret/store/fs_store.rb:105:in > `delete'' > C:/work/opensource/ferret/test/../lib/ferret/store/fs_store.rb:105:in > `refresh'' > C:/work/opensource/ferret/test/../lib/ferret/store/fs_store.rb:104:in > `each'' > C:/work/opensource/ferret/test/../lib/ferret/store/fs_store.rb:123:in > `each'' > C:/work/opensource/ferret/test/../lib/ferret/store/fs_store.rb:123:in > `each'' > C:/work/opensource/ferret/test/../lib/ferret/store/fs_store.rb:104:in > `refresh'' > C:/work/opensource/ferret/test/../lib/ferret/store/fs_store.rb:101:in > `synchronize'' > C:/work/opensource/ferret/test/../lib/ferret/store/fs_store.rb:101:in > `refresh'' > C:/work/opensource/ferret/test/../lib/ferret/store/fs_store.rb:74:in > `new'' > C:/work/opensource/ferret/test/../lib/ferret/store/fs_store.rb:68:in > `synchronize'' > C:/work/opensource/ferret/test/../lib/ferret/store/fs_store.rb:68:in > `new'' > C:/work/opensource/ferret/test/../lib/ferret/index/index.rb:539:in > `persist'' > C:/work/opensource/ferret/test/../lib/ferret/index/index.rb:535:in > `synchronize'' > C:/work/opensource/ferret/test/../lib/ferret/index/index.rb:535:in > `persist'' > > C:/work/opensource/ferret/test/unit/../unit/analysis/../../unit/document/../../unit/index/tc_index.rb:260:in > `test_persist_index'' > > Dir C:\work\opensource\ferret\test\temp\fsdir is empty after tests are > finished. > > > > > > Anyway I could share or send a patch for C sources if you like. > > > > A patch would be great if its not too much trouble. Otherwise, I''d > > love to see an example of what exactly is causing the error. Do you > > mean it doesn''t accept; > > > > int x = 3; > > Such thing accepted but not > GET_STE; > TermInfo *ti; Data_Get_Struct(rti, TermInfo, ti); > because GET_STE contains function call. After that we declire variale > TermInfo *ti; It is not accepted by MSVC compiler. > > Ok. There is part of .diff file. > > Index: index_io.c > ==================================================================> --- index_io.c (revision 152) > +++ index_io.c (working copy) > @@ -32,9 +32,9 @@ > static VALUE > frt_indexin_init_copy(VALUE self, VALUE orig) > { > - GET_MY_BUF; > IndexBuffer *orig_buf; > int len; > + GET_MY_BUF; > if (self == orig) > return self; > > @@ -53,10 +53,11 @@ > static VALUE > frt_indexin_refill(VALUE self) > { > - GET_MY_BUF; > long start; > + VALUE rStr; > int stop, len_to_read; > int input_len = FIX2INT(rb_funcall(self, frt_length, 0, NULL)); > + GET_MY_BUF; > > start = my_buf->start + my_buf->pos; > stop = start + BUFFER_SIZE; > @@ -69,7 +70,7 @@ > rb_raise(rb_eEOFError, "IndexInput: Read past End of File"); > } > > - VALUE rStr = rb_str_new((char *)my_buf->buffer, BUFFER_SIZE); > + rStr = rb_str_new((char *)my_buf->buffer, BUFFER_SIZE); > rb_funcall(self, frt_read_internal, 3, > rStr, INT2FIX(0), INT2FIX(len_to_read)); > > -- > anatol ( http://pomozov.info)-- anatol (http://pomozov.info) -------------- next part -------------- An HTML attachment was scrubbed... URL: http://rubyforge.org/pipermail/ferret-talk/attachments/20051201/18992b6e/attachment.htm
aslak hellesoy
2005-Dec-01 15:33 UTC
[Ferret-talk] Compilation of ferret C-extension under Windows.
On 12/1/05, Anatol Pomozov <anatol.pomozov at gmail.com> wrote:> Ok. > Better if you look at whole patch for Ferret. > > http://pomozov.info/downloads/ferret-msvc-patch.zip >404 Could you upload it to Ferret''s Trac? http://ferret.davebalmain.com/trac/newticket (you can attach files after you create a ticket) Looking forward to better win32 support! Aslak
Anatol Pomozov
2005-Dec-01 15:35 UTC
[Ferret-talk] Compilation of ferret C-extension under Windows.
>> Thanks again for the patch. I''ve applied it. No problems.I dont see any changes in ferret/ext>>Let me know if you have any problems outside of the unit tests.I still have tests failed. I have attached log of test running. On 12/1/05, David Balmain <dbalmain.ml at gmail.com> wrote:> > On 12/1/05, Anatol Pomozov <anatol.pomozov at gmail.com> wrote: > > I have attached patch. > > > > Seems that some changes just a TAB->SPACE conversation. My editor does > not > > like tabs. > > BTW is any source code formatter for C? > > Well, I use vim. It does a pretty good of reformatting C. And it can > convert between tabs and spaces. It works on Windows too. But you are > probably happy with the editor you have. I don''t know any other > formatters for C in Windows. Maybe one of these will work for you; > > http://sourceforge.net/projects/astyle/ > http://sourceforge.net/projects/codeshine/ > > Thanks again for the patch. I''ve applied it. No problems. I''ll try and > fix those other windows bugs for you. Let me know if you have any > problems outside of the unit tests. >-- anatol (http://pomozov.info) -------------- next part -------------- An HTML attachment was scrubbed... URL: http://rubyforge.org/pipermail/ferret-talk/attachments/20051201/4f8774ba/attachment.htm -------------- next part -------------- Loaded suite C:/work/opensource/ferret/test/test_all Started .............................................................................EE...E................................................................................................... Finished in 18.437 seconds. 1) Error: test_fs_index(IndexTest): Errno::EACCES: Permission denied - C:/work/opensource/ferret/test/temp/fsdir/_1.cfs C:/work/opensource/ferret/test/../lib/ferret/store/fs_store.rb:105:in `delete'' C:/work/opensource/ferret/test/../lib/ferret/store/fs_store.rb:105:in `refresh'' C:/work/opensource/ferret/test/../lib/ferret/store/fs_store.rb:104:in `each'' C:/work/opensource/ferret/test/../lib/ferret/store/fs_store.rb:123:in `each'' C:/work/opensource/ferret/test/../lib/ferret/store/fs_store.rb:123:in `each'' C:/work/opensource/ferret/test/../lib/ferret/store/fs_store.rb:104:in `refresh'' C:/work/opensource/ferret/test/../lib/ferret/store/fs_store.rb:101:in `synchronize'' C:/work/opensource/ferret/test/../lib/ferret/store/fs_store.rb:101:in `refresh'' C:/work/opensource/ferret/test/../lib/ferret/store/fs_store.rb:74:in `new'' C:/work/opensource/ferret/test/../lib/ferret/store/fs_store.rb:68:in `synchronize'' C:/work/opensource/ferret/test/../lib/ferret/store/fs_store.rb:68:in `new'' C:/work/opensource/ferret/test/../lib/ferret/index/index.rb:126:in `initialize'' C:/work/opensource/ferret/test/unit/../unit/analysis/../../unit/document/../../unit/index/tc_index.rb:145:in `new'' C:/work/opensource/ferret/test/unit/../unit/analysis/../../unit/document/../../unit/index/tc_index.rb:145:in `test_fs_index'' 2) Error: test_fs_index_is_persistant(IndexTest): Errno::EACCES: Permission denied - C:/work/opensource/ferret/test/temp/fsdir/_8.tmp or C:/work/opensource/ferret/test/temp/fsdir/_8.cfs C:/work/opensource/ferret/test/../lib/ferret/store/fs_store.rb:162:in `rename'' C:/work/opensource/ferret/test/../lib/ferret/store/fs_store.rb:162:in `rename'' C:/work/opensource/ferret/test/../lib/ferret/store/fs_store.rb:161:in `synchronize'' C:/work/opensource/ferret/test/../lib/ferret/store/fs_store.rb:161:in `rename'' C:/work/opensource/ferret/test/../lib/ferret/index/index_writer.rb:428:in `merge_segments'' C:/work/opensource/ferret/test/../lib/ferret/index/index_writer.rb:426:in `while_locked'' C:/work/opensource/ferret/test/../lib/ferret/index/index_writer.rb:426:in `merge_segments'' C:/work/opensource/ferret/test/../lib/ferret/index/index_writer.rb:425:in `synchronize'' C:/work/opensource/ferret/test/../lib/ferret/index/index_writer.rb:425:in `merge_segments'' C:/work/opensource/ferret/test/../lib/ferret/index/index_writer.rb:351:in `flush_ram_segments'' C:/work/opensource/ferret/test/../lib/ferret/index/index_writer.rb:127:in `close'' C:/work/opensource/ferret/test/../lib/ferret/index/index_writer.rb:126:in `synchronize'' C:/work/opensource/ferret/test/../lib/ferret/index/index_writer.rb:126:in `close'' C:/work/opensource/ferret/test/../lib/ferret/index/index.rb:586:in `ensure_reader_open'' C:/work/opensource/ferret/test/../lib/ferret/index/index.rb:495:in `size'' C:/work/opensource/ferret/test/../lib/ferret/index/index.rb:494:in `synchronize'' C:/work/opensource/ferret/test/../lib/ferret/index/index.rb:494:in `size'' C:/work/opensource/ferret/test/unit/../unit/analysis/../../unit/document/../../unit/index/tc_index.rb:166:in `test_fs_index_is_persistant'' 3) Error: test_persist_index(IndexTest): Errno::EACCES: Permission denied - C:/work/opensource/ferret/test/temp/fsdir/_8.cfs C:/work/opensource/ferret/test/../lib/ferret/store/fs_store.rb:105:in `delete'' C:/work/opensource/ferret/test/../lib/ferret/store/fs_store.rb:105:in `refresh'' C:/work/opensource/ferret/test/../lib/ferret/store/fs_store.rb:104:in `each'' C:/work/opensource/ferret/test/../lib/ferret/store/fs_store.rb:123:in `each'' C:/work/opensource/ferret/test/../lib/ferret/store/fs_store.rb:123:in `each'' C:/work/opensource/ferret/test/../lib/ferret/store/fs_store.rb:104:in `refresh'' C:/work/opensource/ferret/test/../lib/ferret/store/fs_store.rb:101:in `synchronize'' C:/work/opensource/ferret/test/../lib/ferret/store/fs_store.rb:101:in `refresh'' C:/work/opensource/ferret/test/../lib/ferret/store/fs_store.rb:74:in `new'' C:/work/opensource/ferret/test/../lib/ferret/store/fs_store.rb:68:in `synchronize'' C:/work/opensource/ferret/test/../lib/ferret/store/fs_store.rb:68:in `new'' C:/work/opensource/ferret/test/../lib/ferret/index/index.rb:554:in `persist'' C:/work/opensource/ferret/test/../lib/ferret/index/index.rb:550:in `synchronize'' C:/work/opensource/ferret/test/../lib/ferret/index/index.rb:550:in `persist'' C:/work/opensource/ferret/test/unit/../unit/analysis/../../unit/document/../../unit/index/tc_index.rb:260:in `test_persist_index'' 182 tests, 3921 assertions, 0 failures, 3 errors
Anatol Pomozov
2005-Dec-02 08:38 UTC
[Ferret-talk] Compilation of ferret C-extension under Windows.
Hi David. C extension for Ferret is compiled, all tests are passed. Does it mean that native extension already supported on Windows?? BTW I know that many of Win developers have no installed C compiler and make on their machines. Is it makes sense to share ferret\ext\ferret_ext.so file that compiled by MSVC.Net?? Does Gem have something like "Platform specific" gems, for example for *nix one *.gem for Windows another?? So running ''gem install'' Gem selects *.gem depending on user platform. On 12/1/05, Anatol Pomozov <anatol.pomozov at gmail.com> wrote:> > >> Thanks again for the patch. I''ve applied it. No problems. > I dont see any changes in ferret/ext > > >>Let me know if you have any problems outside of the unit tests. > I still have tests failed. I have attached log of test running. > > On 12/1/05, David Balmain <dbalmain.ml at gmail.com> wrote: > > > > On 12/1/05, Anatol Pomozov <anatol.pomozov at gmail.com> wrote: > > > I have attached patch. > > > > > > Seems that some changes just a TAB->SPACE conversation. My editor does > > not > > > like tabs. > > > BTW is any source code formatter for C? > > > > Well, I use vim. It does a pretty good of reformatting C. And it can > > convert between tabs and spaces. It works on Windows too. But you are > > probably happy with the editor you have. I don''t know any other > > formatters for C in Windows. Maybe one of these will work for you; > > > > http://sourceforge.net/projects/astyle/ > > http://sourceforge.net/projects/codeshine/ > > > > Thanks again for the patch. I''ve applied it. No problems. I''ll try and > > fix those other windows bugs for you. Let me know if you have any > > problems outside of the unit tests. > > > > > > -- > anatol (http://pomozov.info) >-- anatol (http://pomozov.info) -------------- next part -------------- An HTML attachment was scrubbed... URL: http://rubyforge.org/pipermail/ferret-talk/attachments/20051202/d344be25/attachment.htm
David Balmain
2005-Dec-02 14:50 UTC
[Ferret-talk] Compilation of ferret C-extension under Windows.
On 12/2/05, Anatol Pomozov <anatol.pomozov at gmail.com> wrote:> Hi David. > > C extension for Ferret is compiled, all tests are passed. Does it mean that > native extension already supported on Windows??I guess so. :)> BTW I know that many of Win developers have no installed C compiler and make > on their machines. Is it makes sense to share ferret\ext\ferret_ext.so file > that compiled by MSVC.Net??I think that would be a great idea.> Does Gem have something like "Platform specific" gems, for example for *nix > one *.gem for Windows another?? So running ''gem install'' Gem selects *.gem > depending on user platform.I''m not sure that gems has support for this but if it doesn''t I''m sure I can work out some way to do it. Could you send me the ferret_ext.so file and I''ll see what I can work out. At least it would be good to have it available from the Ferret wiki. Thanks, Dave> > On 12/1/05, Anatol Pomozov <anatol.pomozov at gmail.com> wrote: > > >> Thanks again for the patch. I''ve applied it. No problems. > > I dont see any changes in ferret/ext > > > > >>Let me know if you have any problems outside of the unit tests. > > I still have tests failed. I have attached log of test running. > > > > > > On 12/1/05, David Balmain < dbalmain.ml at gmail.com> wrote: > > > > > On 12/1/05, Anatol Pomozov <anatol.pomozov at gmail.com> wrote: > > > > I have attached patch. > > > > > > > > Seems that some changes just a TAB->SPACE conversation. My editor does > not > > > > like tabs. > > > > BTW is any source code formatter for C? > > > > > > Well, I use vim. It does a pretty good of reformatting C. And it can > > > convert between tabs and spaces. It works on Windows too. But you are > > > probably happy with the editor you have. I don''t know any other > > > formatters for C in Windows. Maybe one of these will work for you; > > > > > > http://sourceforge.net/projects/astyle/ > > > http://sourceforge.net/projects/codeshine/ > > > > > > Thanks again for the patch. I''ve applied it. No problems. I''ll try and > > > fix those other windows bugs for you. Let me know if you have any > > > problems outside of the unit tests. > > > > > > > > > > > -- > > anatol (http://pomozov.info) > > > > > > -- > anatol (http://pomozov.info) > _______________________________________________ > Ferret-talk mailing list > Ferret-talk at rubyforge.org > http://rubyforge.org/mailman/listinfo/ferret-talk > > >
Anatol Pomozov
2005-Dec-02 15:13 UTC
[Ferret-talk] Compilation of ferret C-extension under Windows.
Hi, David. Just made svnup (Revision 159), clean and then build extension, run tests 182 tests, 4035 assertions, 0 failures, 0 errors Seems that on Win everything OK. So I am put builded extension here http://pomozov.info/downloads/ferret_ext.so Yestrday I had problems with my hoster but now site is alive. On 12/2/05, David Balmain <dbalmain.ml at gmail.com> wrote:> > On 12/2/05, Anatol Pomozov <anatol.pomozov at gmail.com> wrote: > > Hi David. > > > > C extension for Ferret is compiled, all tests are passed. Does it mean > that > > native extension already supported on Windows?? > > I guess so. :) > > > BTW I know that many of Win developers have no installed C compiler and > make > > on their machines. Is it makes sense to share ferret\ext\ferret_ext.so > file > > that compiled by MSVC.Net?? > > I think that would be a great idea. > > > Does Gem have something like "Platform specific" gems, for example for > *nix > > one *.gem for Windows another?? So running ''gem install'' Gem selects > *.gem > > depending on user platform. > > I''m not sure that gems has support for this but if it doesn''t I''m sure > I can work out some way to do it. Could you send me the ferret_ext.so > file and I''ll see what I can work out. At least it would be good to > have it available from the Ferret wiki. > > Thanks, > Dave > > > > > On 12/1/05, Anatol Pomozov <anatol.pomozov at gmail.com> wrote: > > > >> Thanks again for the patch. I''ve applied it. No problems. > > > I dont see any changes in ferret/ext > > > > > > >>Let me know if you have any problems outside of the unit tests. > > > I still have tests failed. I have attached log of test running. > > > > > > > > > On 12/1/05, David Balmain < dbalmain.ml at gmail.com> wrote: > > > > > > > On 12/1/05, Anatol Pomozov <anatol.pomozov at gmail.com> wrote: > > > > > I have attached patch. > > > > > > > > > > Seems that some changes just a TAB->SPACE conversation. My editor > does > > not > > > > > like tabs. > > > > > BTW is any source code formatter for C? > > > > > > > > Well, I use vim. It does a pretty good of reformatting C. And it can > > > > convert between tabs and spaces. It works on Windows too. But you > are > > > > probably happy with the editor you have. I don''t know any other > > > > formatters for C in Windows. Maybe one of these will work for you; > > > > > > > > http://sourceforge.net/projects/astyle/ > > > > http://sourceforge.net/projects/codeshine/ > > > > > > > > Thanks again for the patch. I''ve applied it. No problems. I''ll try > and > > > > fix those other windows bugs for you. Let me know if you have any > > > > problems outside of the unit tests. >-- anatol (http://pomozov.info) -------------- next part -------------- An HTML attachment was scrubbed... URL: http://rubyforge.org/pipermail/ferret-talk/attachments/20051202/a34783d6/attachment.htm