2 Replies Latest reply on Mar 12, 2015 5:05 AM by Joerg Koch

    Build failed: rhodes 5.0 - use barcode-old extension

    Joerg Koch

      Hi everyone,

       

      I upgraded my app to rhodes 5.0.25. My app uses the barcode-old extension which worked fine with rhodes 4.0.

       

      After the upgrade I get the following errors:

       

      rake aborted!

      Linking library failed: ...app/bin/target/android/debug/librhodes/lib/armeabi/librhodes.so

      ...gems/gems/rhodes-5.0.2/platform/android/build/Rakefile:135:in `block in <top (required)>'

      ...gems/lib/ruby/1.9.1/rake/task.rb:203:in `call'

      ...


      ...gems/rhodes-5.0.2/platform/android/../../platform/shared/ruby/ext/rho/extensions.c:7: error: undefined reference to 'Init_Barcode'

      collect2: error: ld returned 1 exit status

       

      rake aborted!

      Build failed: rhodes

      ...gems/rhodes-5.0.2/platform/android/build/android.rake:1504:in `block (4 levels) in <top (required)>'


      What changes does an old extension need to comply to rhodes 5.0?


      Thanks for any hints!

        • Re: Build failed: rhodes 5.0 - use barcode-old extension
          Pietro Francesco Maggi

          Hi Joerg,

          for sure you need to use a different Rakefile for the extension.

           

          Rhodes v4.1 introduced support for multiple architecture under Android (till v4.0 we supported only ARM). So we've modified the Rakefile in the extensions to support this.

          If you're moving an existing extension from v4.0 to v4.1 or newer, you need to exchange the existing Rakefile with a new one.

          IIRC you can delete the existing Rakefile and you will get a new one when you do a:

          rake clean:android

          rake device:android:production

           

          otherwise you can create a fake extension in a dummy project and use that (or recover the Rakefile we've in the scafolding template).

           

          ~Pietro

          1 of 1 people found this helpful