jira.codehaus.org

  • Log In Access more options
    • Online Help
    • Keyboard Shortcuts
    • About JIRA
    • JIRA Credits
    • What?s New
  • Dashboards Access more options (Alt+d)
  • Projects Access more options (Alt+p)
  • Issues Access more options (Alt+i)
  • JRuby
  • JRUBY-3915

JFFI needs binaries for more arches

  • Log In
  • Views
    • XML
    • Word
    • Printable

Details

  • Type: Task Task
  • Status: Closed Closed
  • Priority: Major Major
  • Resolution: Fixed
  • Affects Version/s: None
  • Fix Version/s: JRuby 1.4
  • Component/s: None
  • Labels:
    None

Description

The current release of jffi bundled with JRuby has binaries for Darwin (all arches), i386-Linux, i386-Windows, i386-SunOS and x86_64-SunOS. It would be beneficial to have binaries for at least x86_64-Linux, and maybe more esoteric platforms like i386-FreeBSD and x86_64-FreeBSD.

To build jffi, do something like:

 hg clone -r0.6 https://kenai.com/hg/jffi~core  jffi-0.6
 cd jffi-0.6
 ant jar test
 cp dist/x86_64-Linux.jar /path/to/jruby/build_lib/jffi-x86_64-Linux.jar
 cd /path/to/jruby
 ant clean test

The resulting dist/$CPU-$OS.jar file could also be attached to this issue, and someone could commit it to jruby.

  • Options
    • Sort By Name
    • Sort By Date
    • Ascending
    • Descending
    • Download All

Attachments

  1. File
    ant.out.txt.bz2
    26/Aug/09 2:22 AM
    4 kB
    Albert Davidson Chou
  2. Hide
    Java Archive File
    jffi-i386-FreeBSD.jar
    29/Oct/09 2:34 PM
    22 kB
    Philip Jenvey
    1. File
      META-INF/MANIFEST.MF 0.1 kB
    2. File
      jni/i386-FreeBSD/libjffi-0.6.so 51 kB
    Download Zip
    Show
    Java Archive File
    jffi-i386-FreeBSD.jar
    29/Oct/09 2:34 PM
    22 kB
    Philip Jenvey
  3. Hide
    Java Archive File
    x86_64-FreeBSD.jar
    28/Oct/09 10:35 AM
    26 kB
    Mike Burns
    1. File
      META-INF/MANIFEST.MF 0.1 kB
    2. File
      jni/x86_64-FreeBSD/libjffi-0.6.so 66 kB
    Download Zip
    Show
    Java Archive File
    x86_64-FreeBSD.jar
    28/Oct/09 10:35 AM
    26 kB
    Mike Burns
  4. Hide
    Java Archive File
    x86_64-Linux.jar
    23/Sep/09 7:33 PM
    29 kB
    Joseph LaFata
    1. File
      META-INF/MANIFEST.MF 0.1 kB
    2. File
      jni/x86_64-Linux/libjffi-0.6.so 72 kB
    Download Zip
    Show
    Java Archive File
    x86_64-Linux.jar
    23/Sep/09 7:33 PM
    29 kB
    Joseph LaFata

Issue Links

is related to

Bug - A problem which impairs or prevents the functions of the product. JRUBY-3972 FFI is broken on X86_64 linux

  • Major - Major loss of function.
  • Closed - The issue is considered finished, the resolution is correct. Issues which are not closed can be reopened.

Activity

Ascending order - Click to sort in descending order
  • All
  • Comments
  • Work Log
  • History
  • Activity
Hide
Permalink
James Abley added a comment - 25/Aug/09 6:17 AM

I've done some one-off builds for x86_64 Linux. I would hope to be able to set something up in Hudson to do this on a more regular basis? Is anyone else already using Hudson like that?

Show
James Abley added a comment - 25/Aug/09 6:17 AM I've done some one-off builds for x86_64 Linux. I would hope to be able to set something up in Hudson to do this on a more regular basis? Is anyone else already using Hudson like that?
Hide
Permalink
Charles Oliver Nutter added a comment - 25/Aug/09 11:18 AM

James: Yeah, I suppose if we had some time to set up VBox or VMWare instances for all these platforms we'd be able to automate building binaries for them. That certainly takes time though. Maybe we could get community members to contribute images ready for use?

Show
Charles Oliver Nutter added a comment - 25/Aug/09 11:18 AM James: Yeah, I suppose if we had some time to set up VBox or VMWare instances for all these platforms we'd be able to automate building binaries for them. That certainly takes time though. Maybe we could get community members to contribute images ready for use?
Hide
Permalink
Wayne Meissner added a comment - 25/Aug/09 1:22 PM

An automated build for this would be nice. But the time cost of setting up automated builds outweighs the ~5 minutes every couple of months it takes me to fire up an ubuntu vbox instance and roll the i386-Linux binaries, so I haven't looked into it in any serious way.

Automated builds would also be good from a trusted binary point of view, rather than contributed by J. Random Hacker.

Show
Wayne Meissner added a comment - 25/Aug/09 1:22 PM An automated build for this would be nice. But the time cost of setting up automated builds outweighs the ~5 minutes every couple of months it takes me to fire up an ubuntu vbox instance and roll the i386-Linux binaries, so I haven't looked into it in any serious way. Automated builds would also be good from a trusted binary point of view, rather than contributed by J. Random Hacker.
Hide
Permalink
Jean-Dominique Morani added a comment - 25/Aug/09 7:59 PM

I'm planning to build AIX and SPARC Solaris versions very soon. Definitely before 1.4 comes out (do you have a release date)?

Show
Jean-Dominique Morani added a comment - 25/Aug/09 7:59 PM I'm planning to build AIX and SPARC Solaris versions very soon. Definitely before 1.4 comes out (do you have a release date)?
Hide
Permalink
Albert Davidson Chou added a comment - 26/Aug/09 2:22 AM

Attached is the entire output of my attempt to build on PPC Mac OS X 10.4.11, in case, as is likely, you can figure out from it what is wrong more quickly than I can.

Show
Albert Davidson Chou added a comment - 26/Aug/09 2:22 AM Attached is the entire output of my attempt to build on PPC Mac OS X 10.4.11, in case, as is likely, you can figure out from it what is wrong more quickly than I can.
Hide
Permalink
Wayne Meissner added a comment - 26/Aug/09 2:39 AM

Albert: The jffi-Darwin.jar in jruby should already contain ppc code (its a universal binary - ppc+i386+x86_64 built against the 10.4 universal SDK), so there should be no need to recompile. The recompilation is failing because it is trying to compile+link x86_64 code, which is apparently not supported on your system. If you want to make it compile, edit jni/GNUmakefile and remove x86_64 from the "ARCHES = i386 x86_64 ppc" line.

Testing is another matter. ppc JNI binaries cannot be use on intel macs, hence it hasn't been tested at all, so you might want to make sure that 'ant test' in JRuby runs. If it fails somewhere, file another jira ticket for it.

Show
Wayne Meissner added a comment - 26/Aug/09 2:39 AM Albert: The jffi-Darwin.jar in jruby should already contain ppc code (its a universal binary - ppc+i386+x86_64 built against the 10.4 universal SDK), so there should be no need to recompile. The recompilation is failing because it is trying to compile+link x86_64 code, which is apparently not supported on your system. If you want to make it compile, edit jni/GNUmakefile and remove x86_64 from the "ARCHES = i386 x86_64 ppc" line. Testing is another matter. ppc JNI binaries cannot be use on intel macs, hence it hasn't been tested at all, so you might want to make sure that 'ant test' in JRuby runs. If it fails somewhere, file another jira ticket for it.
Hide
Permalink
Joseph LaFata added a comment - 23/Sep/09 7:33 PM

x64_64-Linux attached.

Show
Joseph LaFata added a comment - 23/Sep/09 7:33 PM x64_64-Linux attached.
Hide
Permalink
Vladimir Sizikov added a comment - 05/Oct/09 1:34 PM

Looks like the attached x86_64-Linux.jar works and it has been commited to the repo, BUT, it was after 1.4.0RC1 and hence FFI doesn't work in JRuby 1.4.0RC1 under Linux x64. This needs to be backported from master to 1.4 branch.

Show
Vladimir Sizikov added a comment - 05/Oct/09 1:34 PM Looks like the attached x86_64-Linux.jar works and it has been commited to the repo, BUT, it was after 1.4.0RC1 and hence FFI doesn't work in JRuby 1.4.0RC1 under Linux x64. This needs to be backported from master to 1.4 branch.
Hide
Permalink
Ubiratan Pires Alberton added a comment - 05/Oct/09 1:37 PM

The attached jar worked when I copied it to the lib/ directory of a 1.4.0RC1 release.

Show
Ubiratan Pires Alberton added a comment - 05/Oct/09 1:37 PM The attached jar worked when I copied it to the lib/ directory of a 1.4.0RC1 release.
Hide
Permalink
Thomas E Enebo added a comment - 05/Oct/09 2:39 PM

Added in commit 9d76664 on jruby-1_4 branch and already committed on master. Resolving

Show
Thomas E Enebo added a comment - 05/Oct/09 2:39 PM Added in commit 9d76664 on jruby-1_4 branch and already committed on master. Resolving
Hide
Permalink
Wayne Meissner added a comment - 05/Oct/09 10:43 PM

Looks like Thom forgot to cherry-pick commits 38b1deed2d8bc705dea54646eb5d32bb1b92fb0b and f6246772a8c658246a06d0f535be65a6a8c09508

Show
Wayne Meissner added a comment - 05/Oct/09 10:43 PM Looks like Thom forgot to cherry-pick commits 38b1deed2d8bc705dea54646eb5d32bb1b92fb0b and f6246772a8c658246a06d0f535be65a6a8c09508
Hide
Permalink
Thomas E Enebo added a comment - 06/Oct/09 12:57 PM

Two forgotten commits applied to branch. Resolving for real now.

Show
Thomas E Enebo added a comment - 06/Oct/09 12:57 PM Two forgotten commits applied to branch. Resolving for real now.
Hide
Permalink
Mike Burns added a comment - 28/Oct/09 10:35 AM

Attaching the FreeBSD AMD64 JFFI jar because the one in jruby-1.4.0RC2 was empty.

Show
Mike Burns added a comment - 28/Oct/09 10:35 AM Attaching the FreeBSD AMD64 JFFI jar because the one in jruby-1.4.0RC2 was empty.
Hide
Permalink
Philip Jenvey added a comment - 29/Oct/09 2:34 PM

Here's FreeBSD i386, compiled under FreeBSD 6.2

Show
Philip Jenvey added a comment - 29/Oct/09 2:34 PM Here's FreeBSD i386, compiled under FreeBSD 6.2
Hide
Permalink
Charles Oliver Nutter added a comment - 29/Oct/09 3:44 PM

Mike: Added your jar to JRuby master and 1.4. Thank you!

Show
Charles Oliver Nutter added a comment - 29/Oct/09 3:44 PM Mike: Added your jar to JRuby master and 1.4. Thank you!
Hide
Permalink
Charles Oliver Nutter added a comment - 29/Oct/09 3:47 PM

Phil: It looks like there's already a, i386-FreeBSD.jar in JFFI...is yours a more up-to-date version? The one we have in jruby/build_lib is definitely not the complete version, though...so I'm trying to decide which jar is the best one.

Show
Charles Oliver Nutter added a comment - 29/Oct/09 3:47 PM Phil: It looks like there's already a, i386-FreeBSD.jar in JFFI...is yours a more up-to-date version? The one we have in jruby/build_lib is definitely not the complete version, though...so I'm trying to decide which jar is the best one.
Hide
Permalink
Charles Oliver Nutter added a comment - 29/Oct/09 4:21 PM

Because there's already an i386-FreeBSD.jar of the expected size in JFFI, I've copied that to build_lib/jffi-i386-FreeBSD.jar. Pushed to master in bab330d and 1.4 in 1d7de2d.

Show
Charles Oliver Nutter added a comment - 29/Oct/09 4:21 PM Because there's already an i386-FreeBSD.jar of the expected size in JFFI, I've copied that to build_lib/jffi-i386-FreeBSD.jar. Pushed to master in bab330d and 1.4 in 1d7de2d.
Hide
Permalink
Marc Seeger added a comment - 13/Dec/09 3:25 PM

There is still no windows x64 dll file
copying the i386 file and repacking it in the jar didn't work.
does anybody have a 64 bit version of the dll for windows?

Show
Marc Seeger added a comment - 13/Dec/09 3:25 PM There is still no windows x64 dll file copying the i386 file and repacking it in the jar didn't work. does anybody have a 64 bit version of the dll for windows?
Hide
Permalink
Hiro Asari added a comment - 14/Dec/09 12:55 AM

Marc,

I suspect that files are missing because no one has the machine necessary to produce them.

Do you have one for x86_64 Windows? If so, what (else) do you need to create it?

Show
Hiro Asari added a comment - 14/Dec/09 12:55 AM Marc, I suspect that files are missing because no one has the machine necessary to produce them. Do you have one for x86_64 Windows? If so, what (else) do you need to create it?
Hide
Permalink
Marc Seeger added a comment - 14/Dec/09 1:03 AM

I do have access to a windows x86_64 machine.
What I am missing is the proper knowledge to actually be able to compile the dll

I opened a new bug for it: JRUBY-4358

Show
Marc Seeger added a comment - 14/Dec/09 1:03 AM I do have access to a windows x86_64 machine. What I am missing is the proper knowledge to actually be able to compile the dll I opened a new bug for it: JRUBY-4358
Hide
Permalink
Aria Bamdad added a comment - 05/Dec/11 2:56 PM

Apologies if this is not the right venue to post this question. I am trying to build the binaries for JFFI for the s390x architecture for JFFI 1.0.2 but receive the following error when I run 'ant jar test' and receive the following error after a while:

-build-native-library:
[exec] env: /bsc/jruby/jffi-1.0.2/jni/libffi/configure: No such file or directory
[exec] make: *** [/bsc/jruby/jffi-1.0.2/build/jni/libffi-s390x-linux/.libs/libffi_convenience.a] Error 127
[exec] Configuring libffi for s390x-linux

BUILD FAILED
/bsc/jruby/jffi-1.0.2/custom-build.xml:125: exec returned: 2

Can someone describe how ones goes about building binaries for specific architectures?

Thanks.

Show
Aria Bamdad added a comment - 05/Dec/11 2:56 PM Apologies if this is not the right venue to post this question. I am trying to build the binaries for JFFI for the s390x architecture for JFFI 1.0.2 but receive the following error when I run 'ant jar test' and receive the following error after a while: -build-native-library: [exec] env: /bsc/jruby/jffi-1.0.2/jni/libffi/configure: No such file or directory [exec] make: *** [/bsc/jruby/jffi-1.0.2/build/jni/libffi-s390x-linux/.libs/libffi_convenience.a] Error 127 [exec] Configuring libffi for s390x-linux BUILD FAILED /bsc/jruby/jffi-1.0.2/custom-build.xml:125: exec returned: 2 Can someone describe how ones goes about building binaries for specific architectures? Thanks.

People

  • Assignee:
    Thomas E Enebo
    Reporter:
    Wayne Meissner
Vote (0)
Watch (3)

Dates

  • Created:
    25/Aug/09 2:57 AM
    Updated:
    05/Dec/11 2:56 PM
    Resolved:
    06/Oct/09 12:57 PM
  • Atlassian JIRA (v5.0.4#731-sha1:3aa7374)
  • Report a problem
  • Powered by a free Atlassian JIRA open source license for Codehaus. Try JIRA - bug tracking software for your team.