Open pravin-d opened 10 years ago
syck is already included in ruby 1.9.3 and below, so i18nema ought to be able to use it. i'll investigate a bit and see what i can find out
in the meantime, you could remove i18nema from your dependencies. canvas can work fine without it (albeit slightly slower). in addition to removing it from the gemfile, you'll need to change the following section of config/initializers/i18n.rb from
I18n.backend = I18nema::Backend.new
I18nema::Backend.send(:include, I18n::Backend::Fallbacks)
I18n.backend.init_translations
to something like:
I18n.backend.send(:include, I18n::Backend::Fallbacks)
as a side note, canvas isn't supported on windows, so once you get past this obstacle, i would not be surprised if you encountered several more.
Thank you u for the reply. I checked. Ruby 1.9.3 does have syck.so. Path to the .so is Ruby193\lib\ruby\1.9.1\i386-mingw32\
The .so is not found or something I guess.
Here's what I'm getting:
Gem::Ext::BuildError: ERROR: Failed to build gem native extension.
current directory:
C:/ruby21/lib/ruby/gems/2.1.0/gems/i18nema-0.0.8/ext/i18nema
C:/ruby21/bin/ruby.exe -r ./siteconf20170703-24160-1asyu9h.rb extconf.rb
checking for st.h... yes
creating Makefile
To see why this extension failed to compile, please check the mkmf.log which can
be found here:
C:/ruby21/lib/ruby/gems/2.1.0/extensions/x64-mingw32/2.1.0/i18nema-0.0.8/mkmf.log
current directory: C:/ruby21/lib/ruby/gems/2.1.0/gems/i18nema-0.0.8/ext/i18nema
make "DESTDIR=" clean
current directory: C:/ruby21/lib/ruby/gems/2.1.0/gems/i18nema-0.0.8/ext/i18nema
make "DESTDIR="
generating i18nema-x64-mingw32.def
compiling i18nema.c
i18nema.c: In function 'handle_syck_error':
i18nema.c:278:3: warning: format '%ld' expects argument of type 'long int', but
argument 5 has type 'long long int' [-Wformat]
i18nema.c: In function 'handle_syck_node':
i18nema.c:399:7: warning: ISO C90 forbids mixed declarations and code
[-Wdeclaration-after-statement]
i18nema.c: In function 'load_yml_string':
i18nema.c:429:3: warning: ISO C90 forbids mixed declarations and code
[-Wdeclaration-after-statement]
i18nema.c: In function 'available_locales':
i18nema.c:464:3: warning: ISO C90 forbids mixed declarations and code
[-Wdeclaration-after-statement]
i18nema.c: In function 'join_array_key':
i18nema.c:499:3: warning: ISO C90 forbids mixed declarations and code
[-Wdeclaration-after-statement]
i18nema.c: In function 'normalize_key':
i18nema.c:524:3: warning: ISO C90 forbids mixed declarations and code
[-Wdeclaration-after-statement]
i18nema.c:528:5: warning: ISO C90 forbids mixed declarations and code
[-Wdeclaration-after-statement]
i18nema.c:538:3: warning: ISO C90 forbids mixed declarations and code
[-Wdeclaration-after-statement]
i18nema.c:556:5: warning: ISO C90 forbids mixed declarations and code
[-Wdeclaration-after-statement]
i18nema.c: In function 'initialize':
i18nema.c:572:3: warning: ISO C90 forbids mixed declarations and code
[-Wdeclaration-after-statement]
i18nema.c: In function 'handle_syck_node':
i18nema.c:409:22: warning: 'result' may be used uninitialized in this function
[-Wmaybe-uninitialized]
linking shared-object i18nema/i18nema.so
i18nema.o: In function `load_yml_string':
C:\ruby21\lib\ruby\gems\2.1.0\gems\i18nema-0.0.8\ext\i18nema/i18nema.c:429:
undefined reference to `syck_new_parser'
C:\ruby21\lib\ruby\gems\2.1.0\gems\i18nema-0.0.8\ext\i18nema/i18nema.c:430:
undefined reference to `syck_parser_handler'
C:\ruby21\lib\ruby\gems\2.1.0\gems\i18nema-0.0.8\ext\i18nema/i18nema.c:432:
undefined reference to `syck_parser_str'
C:\ruby21\lib\ruby\gems\2.1.0\gems\i18nema-0.0.8\ext\i18nema/i18nema.c:433:
undefined reference to `syck_parser_bad_anchor_handler'
C:\ruby21\lib\ruby\gems\2.1.0\gems\i18nema-0.0.8\ext\i18nema/i18nema.c:434:
undefined reference to `syck_parser_error_handler'
C:\ruby21\lib\ruby\gems\2.1.0\gems\i18nema-0.0.8\ext\i18nema/i18nema.c:436:
undefined reference to `syck_parse'
C:\ruby21\lib\ruby\gems\2.1.0\gems\i18nema-0.0.8\ext\i18nema/i18nema.c:437:
undefined reference to `syck_lookup_sym'
C:\ruby21\lib\ruby\gems\2.1.0\gems\i18nema-0.0.8\ext\i18nema/i18nema.c:440:
undefined reference to `syck_free_parser'
i18nema.o: In function `handle_syck_node':
C:\ruby21\lib\ruby\gems\2.1.0\gems\i18nema-0.0.8\ext\i18nema/i18nema.c:394:
undefined reference to `syck_map_read'
C:\ruby21\lib\ruby\gems\2.1.0\gems\i18nema-0.0.8\ext\i18nema/i18nema.c:395:
undefined reference to `syck_lookup_sym'
C:\ruby21\lib\ruby\gems\2.1.0\gems\i18nema-0.0.8\ext\i18nema/i18nema.c:396:
undefined reference to `syck_map_read'
C:\ruby21\lib\ruby\gems\2.1.0\gems\i18nema-0.0.8\ext\i18nema/i18nema.c:397:
undefined reference to `syck_lookup_sym'
C:\ruby21\lib\ruby\gems\2.1.0\gems\i18nema-0.0.8\ext\i18nema/i18nema.c:409:
undefined reference to `syck_add_sym'
C:\ruby21\lib\ruby\gems\2.1.0\gems\i18nema-0.0.8\ext\i18nema/i18nema.c:380:
undefined reference to `syck_seq_read'
C:\ruby21\lib\ruby\gems\2.1.0\gems\i18nema-0.0.8\ext\i18nema/i18nema.c:381:
undefined reference to `syck_lookup_sym'
C:\ruby21\lib\ruby\gems\2.1.0\gems\i18nema-0.0.8\ext\i18nema/i18nema.c:360:
undefined reference to `syck_str_blow_away_commas'
C:\ruby21\lib\ruby\gems\2.1.0\gems\i18nema-0.0.8\ext\i18nema/i18nema.c:364:
undefined reference to `syck_str_blow_away_commas'
collect2.exe: error: ld returned 1 exit status
make: *** [i18nema.so] Error 1
make failed, exit code 2
Gem files will remain installed in
C:/ruby21/lib/ruby/gems/2.1.0/gems/i18nema-0.0.8 for inspection.
Results logged to
C:/ruby21/lib/ruby/gems/2.1.0/extensions/x64-mingw32/2.1.0/i18nema-0.0.8/gem_make.out
I'm trying to install Canvas LMS using the following guide https://github.com/instructure/canvas-lms/wiki/Quick-Start
This has a dependency on i18nema -v 0.0.7 I'm getting the following error
i18nema.o: In function
load_yml_string': ~\Ruby193\lib\ruby\gems\1.9.1\gems\i18nema-0.0.7\ext\i18n ema/i18nema.c:429: undefined reference to
syck_new_parser' I guess the deps for i18nema does not include syck. Also syck-1.0.1.gem requires Ruby >=2.0.0 (Canvas is req Ruby 1.9.3).PS Maybe i18nema-0.0.7 should define its deps to a proper version of syck