Hello. I want to introduce binding from ruby to exiv2 (http:// www.exiv2.org) library. I know, that there are some other exif manipulation libraries, but choice in this situation is good. Currently, it have abilities to read exif tags and write them back to file. Project is already on rubyforge and possible to install via gem install ruby-exiv2 Examples of usage currently are only in tests, however, I will fill README on request
on 2006-09-19 23:29
on 2006-09-20 16:02
On 9/20/06, íÁËÓ ìÁÐÛÉÎ <email@example.com> wrote: > > Examples of usage currently are only in tests, however, I will fill > README on request Hi íÁËÓ, Nice to see someone working on this. I'm looking forward to having a library that will read IPTC tags. Unfortunately I haven't done any C++ programming so I can't help much. Anyway, I had a few problems installing. I'm on Ubuntu. gcc version 4.0.3. Firstly I had to remove the following lines from extconf.rb: $CPPFLAGS << " -Wall -I/usr/local/include/exiv2 " $LDFLAGS << " -lstdc++ -L/usr/local/lib " Then I got this error: g++ -fPIC -Wall -g -O2 -fPIC -I. -I/usr/lib/ruby/1.8/i486-linux -I/usr/lib/ruby/1.8/i486-linux -I. -Wall -I/usr/include/exiv2 -c exif.cpp /usr/lib/gcc/i486-linux-gnu/4.0.3/../../../../include/c++/4.0.3/bits/stl_iterator.h: In constructor '__gnu_cxx::__normal_iterator<_Iterator, _Container>::__normal_iterator(const __gnu_cxx::__normal_iterator<_Iter, _Container>&) [with _Iter = const Exiv2::Exifdatum*, _Iterator = Exiv2::Exifdatum*, _Container = std::vector<Exiv2::Exifdatum, std::allocator<Exiv2::Exifdatum> >]': exif.cpp:86: instantiated from here /usr/lib/gcc/i486-linux-gnu/4.0.3/../../../../include/c++/4.0.3/bits/stl_iterator.h:609: error: invalid conversion from 'const Exiv2::Exifdatum* const' to 'Exiv2::Exifdatum*' So I changed line 80 of exif.cpp from: Exiv2::ExifData::const_iterator pos = exifData.findKey(exifKey); to: Exiv2::ExifData::iterator pos = exifData.findKey(exifKey); That got me past there. Then I got the error: g++: '-b' must come at the start of the command line So I swapped '-bundle' for '-shared' and removed '-undefined suppress' as that wasn't working either. Finally I got it to compile. Now when I try to load in IRB I get: irb(main):001:0> require 'exiv2' LoadError: no such file to load -- intersys from /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:21:in `require__' from /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:21:in `require' from /usr/local/lib/site_ruby/1.8/rubygems.rb:182:in `activate' from /usr/local/lib/site_ruby/1.8/rubygems.rb:181:in `activate' from /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:26:in `require' from (irb):1 I'm not sure how much help any of this is. I'm looking forward to this library maturing. Keep up the great work! :-) Cheers, Dave
on 2013-11-06 12:28
Hello sir, I would like to test this library. However, I am getting this errors. Do you know why? `require': no such file to load -- inline (LoadError) It seems I do not have inline gem. But, I do not know which one it is. So, could you tell me what to install?