Re: Unable to compile ruby 2.5.1 on Solaris 11
Karthick K <[email protected]>
| Newsgroups | gmane.comp.lang.ruby.general |
|---|---|
| Message-ID | <CAMacVKjDj=w74EvLiF-j+_2XqeRdJz0X-oJvgHViiKVspA=kxA@mail.gmail.com> |
I was able to fix the issue by re-compiling the ffi. Thanks On Sat, Sep 8, 2018 at 5:09 PM leam hall <[email protected]> wrote: > On Sat, Sep 8, 2018 at 5:35 AM Karthick K <[email protected]> > wrote: > >> When I tried to compile ruby 2.5.1 getting the below error, >> >> compiling parse.c >> compiling string.c >> compiling symbol.c >> compiling vm.c >> make[3]: Leaving directory '/usr/share/src/ruby-2.5.1' >> processing probes in object files >> linking miniruby >> ./tool/ifchange "--timestamp=.rbconfig.time" rbconfig.rb rbconfig.tmp >> rbconfig.rb unchanged >> creating verconf.h >> verconf.h updated >> compiling loadpath.c >> generating a glommed object with DTrace probes for static library >> linking static-library libruby-static.a >> generating enc.mk >> compiling enc/encinit.c >> linking ruby >> Undefined first referenced >> symbol in file >> ffi_raw_size ext/fiddle/fiddle.a(function.o) >> ld: fatal: symbol referencing errors >> collect2: error: ld returned 1 exit status >> make[2]: *** [Makefile:239: ruby] Error 1 >> make[2]: Leaving directory '/usr/share/src/ruby-2.5.1' >> make[1]: *** [exts.mk:149: ruby] Error 2 >> make[1]: Leaving directory '/usr/share/src/ruby-2.5.1' >> make: *** [Makefile:776: build-ext] Error 2 >> >> I tried compile with *--with-static-linked-ext --enable-load-relative >> --without-X11 --disable-install-doc --disable-install-rdoc* and the >> worked on CentOS 6. May I know why am getting this error and how to solve >> it? >> >> >> Thanks >> Karthick >> > > Does Solaris have an equivalent to the "libffi" and "libffi-devel" rpms? > > [leam@shaphan docs]$ rpm -qi libffi > Name : libffi > Version : 3.1 > Release : 16.fc28 > Architecture: x86_64 > Install Date: Wed 25 Apr 2018 02:26:07 AM EDT > Group : System Environment/Libraries > Size : 55140 > License : BSD > Signature : RSA/SHA256, Fri 09 Feb 2018 12:06:37 AM EST, Key ID > e08e7e629db62fb1 > Source RPM : libffi-3.1-16.fc28.src.rpm > Build Date : Thu 08 Feb 2018 01:51:42 AM EST > Build Host : buildvm-17.phx2.fedoraproject.org > Relocations : (not relocatable) > Packager : Fedora Project > Vendor : Fedora Project > URL : http://sourceware.org/libffi > Summary : A portable foreign function interface library > Description : > Compilers for high level languages generate code that follow certain > conventions. These conventions are necessary, in part, for separate > compilation to work. One such convention is the "calling convention". > The calling convention is a set of assumptions made by the compiler > about where function arguments will be found on entry to a function. A > calling convention also specifies where the return value for a function > is found. > > Some programs may not know at the time of compilation what arguments > are to be passed to a function. For instance, an interpreter may be > told at run-time about the number and types of arguments used to call a > given function. `Libffi' can be used in such programs to provide a > bridge from the interpreter program to compiled code. > > The `libffi' library provides a portable, high level programming > interface to various calling conventions. This allows a programmer to > call any function specified by a call interface description at run time. > > FFI stands for Foreign Function Interface. A foreign function > interface is the popular name for the interface that allows code > written in one language to call code written in another language. The > `libffi' library really only provides the lowest, machine dependent > layer of a fully featured foreign function interface. A layer must > exist above `libffi' that handles type conversions for values passed > between the two languages. > > > > > Unsubscribe: <mailto:[email protected]?subject=unsubscribe> > <http://lists.ruby-lang.org/cgi-bin/mailman/options/ruby-talk> > Unsubscribe: <mailto:[email protected]?subject=unsubscribe> <http://lists.ruby-lang.org/cgi-bin/mailman/options/ruby-talk>