From: Santiago Pastorino Date: 2013-12-20T13:25:49-02:00 Subject: [ruby-core:59228] Re: [ruby-trunk - Bug #9264][Feedback] Compiling error: encdb.bundle Undefined symbols for architecture x86_64 --047d7b873a10d8058f04edf8e5d2 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable After a git pull everything seems to be working fine. Fixed here http://bugs.ruby-lang.org/issues/9256 On Fri, Dec 20, 2013 at 12:22 PM, Zachary Scott wrote: > Could you also try --with-yaml-dir and --with-dbm-dir? > > On Dec 20, 2013, at 9:13 AM, Santiago Pastorino > wrote: > > Now I did ... > > autoconf; ./configure --prefix=3D/Users/santiago/.rubies/2.1.0 > --with-openssl-dir=3D"$(brew --prefix openssl)" --with-readline-dir=3D"$(= brew > --prefix readline)" --with-libyaml-dir=3D"$(brew --prefix libyaml)" > --with-gdbm-dir=3D"$(brew --prefix gdbm)" --with-libffi-dir=3D"$(brew --p= refix > libffi)"; make; make install > > and it's working fine for most options but not all. gdbm and libyaml are > not being correctly linked ... > > ~/.rubies/2.1.0/lib/ruby/2.1.0/x86_64-darwin13.0 otool -L psych.bundle > psych.bundle: > /usr/local/lib/libyaml-0.2.dylib (compatibility version 3.0.0, current > version 3.2.0) > /usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version > 1197.1.1) > /usr/lib/libobjc.A.dylib (compatibility version 1.0.0, current version > 228.0.0) > > ~/.rubies/2.1.0/lib/ruby/2.1.0/x86_64-darwin13.0 brew --prefix libyaml > /usr/local/opt/libyaml > > ~/.rubies/2.1.0/lib/ruby/2.1.0/x86_64-darwin13.0 otool -L gdbm.bundle > gdbm.bundle: > /usr/local/lib/libgdbm.4.dylib (compatibility version 5.0.0, current > version 5.0.0) > /usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version > 1197.1.1) > /usr/lib/libobjc.A.dylib (compatibility version 1.0.0, current version > 228.0.0) > > ~/.rubies/2.1.0/lib/ruby/2.1.0/x86_64-darwin13.0 brew --prefix gdbm > /usr/local/opt/gdbm > > > > On Fri, Dec 20, 2013 at 11:47 AM, Santiago Pastorino > wrote: > >> It works but I'm missing to link against homebrew's gdbm, libyaml and >> libffi not sure how to do the same thing for the rest of the packages ..= . >> >> >> On Thu, Dec 19, 2013 at 9:30 PM, Zachary Scott wrote: >> >>> I've been using the following: >>> >>> ../configure --with-openssl-dir=3D`brew --prefix openssl` >>> --with-readline-dir=3D`brew --prefix readline` --with-zlib-dir=3D`brew = --prefix >>> zlib` --prefix=3D/Users/zzak/.rubies/ruby-trunk >>> >>> Although I'm missing a few of the deps, maybe you can try that? >>> >>> >>> >>> On Dec 19, 2013, at 6:16 PM, Santiago Pastorino >>> wrote: >>> >>> It works if I do ... >>> >>> autoconf; ./configure --prefix=3D/Users/santiago/.rubies/2.1.0; make; m= ake >>> install >>> >>> It doesn't if I do ... >>> >>> autoconf; ./configure --prefix=3D/Users/santiago/.rubies/2.1.0 >>> --with-opt-dir=3D"$(brew --prefix openssl):$(brew --prefix readline):$(= brew >>> --prefix libyaml):$(brew --prefix gdbm):$(brew --prefix libffi)"; make; >>> make install >>> >>> So, yeah, something is wrong when I use those deps from homebrew. >>> >>> >>> >>> On Thu, Dec 19, 2013 at 8:18 PM, Zachary Scott wrote: >>> >>>> Sorry I missed the gist, can you try building outside of $srcdir? >>>> >>>> I'm not able to repro it on x86_64: >>>> Darwin mba-2.local 12.5.0 Darwin Kernel Version 12.5.0: Sun Sep 29 >>>> 13:33:47 PDT 2013; root:xnu-2050.48.12~1/RELEASE_X86_64 x86_64 >>>> >>>> >>>> On Dec 19, 2013, at 4:59 PM, Santiago Pastorino >>>> wrote: >>>> >>>> zzak, make distclean is the first thing I've ran. Read the gist again >>>> :), even more after that I've ran git clean. >>>> >>>> On Thu, Dec 19, 2013 at 6:52 PM, zzak (Zachary Scott) wrote= : >>>> >>>>> >>>>> Issue #9264 has been updated by zzak (Zachary Scott). >>>>> >>>>> Category set to build >>>>> Status changed from Open to Feedback >>>>> >>>>> Can you try 'make distclean' and then try again? >>>>> ---------------------------------------- >>>>> Bug #9264: Compiling error: encdb.bundle Undefined symbols for >>>>> architecture x86_64 >>>>> https://bugs.ruby-lang.org/issues/9264#change-43766 >>>>> >>>>> Author: spastorino (Santiago Pastorino) >>>>> Status: Feedback >>>>> Priority: Normal >>>>> Assignee: >>>>> Category: build >>>>> Target version: current: 2.1.0 >>>>> ruby -v: 2.1 >>>>> Backport: 1.9.3: UNKNOWN, 2.0.0: UNKNOWN >>>>> >>>>> >>>>> Using today's trunk, I'm getting the following error on compiling >>>>> >>>>> compiling ./enc/encdb.c >>>>> linking encoding encdb.bundle >>>>> Undefined symbols for architecture x86_64: >>>>> "_rb_enc_set_base", referenced from: >>>>> _Init_encdb in encdb.o >>>>> "_rb_enc_set_dummy", referenced from: >>>>> _Init_encdb in encdb.o >>>>> "_rb_encdb_alias", referenced from: >>>>> _Init_encdb in encdb.o >>>>> "_rb_encdb_declare", referenced from: >>>>> _Init_encdb in encdb.o >>>>> "_rb_encdb_dummy", referenced from: >>>>> _Init_encdb in encdb.o >>>>> "_rb_encdb_replicate", referenced from: >>>>> _Init_encdb in encdb.o >>>>> "_rb_encdb_set_unicode", referenced from: >>>>> _Init_encdb in encdb.o >>>>> ld: symbol(s) not found for architecture x86_64 >>>>> >>>>> Here is the full trace ... >>>>> >>>>> https://gist.github.com/spastorino/1ad2858fce42d0e0a2e2 >>>>> >>>>> Thanks in advance. >>>>> >>>>> >>>>> -- >>>>> http://bugs.ruby-lang.org/ >>>>> >>>> >>>> >>>> >>> >>> >> > > --047d7b873a10d8058f04edf8e5d2 Content-Type: text/html; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable
After a git pull everything seems to be working fine.
=


On Fri, Dec 20, 2013 at 12:22 PM, Zachar= y Scott <e@zzak.io> wrote:
Could you also try --with-yaml-dir and = --with-dbm-dir?

On Dec 20, 2013, a= t 9:13 AM, Santiago Pastorino <spastorino@gmail.com> wrote:

Now I did ...

autoconf; ./configure --prefix=3D/Users/santiago/.rubies/2.= 1.0 --with-openssl-dir=3D"$(brew --prefix openssl)" --with-readli= ne-dir=3D"$(brew --prefix readline)" --with-libyaml-dir=3D"$= (brew --prefix libyaml)" --with-gdbm-dir=3D"$(brew --prefix gdbm)= " --with-libffi-dir=3D"$(brew --prefix libffi)"; make; make = install

and it's working fine for most options but no= t all. gdbm and libyaml are not being correctly linked ...

~/.rubies/2.1.0/lib/ruby/2.1.0/x86_64-darwin13.0 =A0otool -L = psych.bundle
psych.bundle:
/= usr/local/lib/libyaml-0.2.dylib (compatibility version 3.0.0, current versi= on 3.2.0)
/usr/lib/l= ibSystem.B.dylib (compatibility version 1.0.0, current version 1197.1.1)
/usr/lib/libobjc.A.dylib = (compatibility version 1.0.0, current version 228.0.0)

=
~/.rubies/2.1.0/lib/ruby/2.1.0/x86_64-darwin13.0 =A0brew --= prefix libyaml
/usr/local/opt/libyaml

~/.rubies/2= .1.0/lib/ruby/2.1.0/x86_64-darwin13.0 =A0otool -L gdbm.bundle
gdb= m.bundle:
/usr/local= /lib/libgdbm.4.dylib (compatibility version 5.0.0, current version 5.0.0)
/usr/lib/libSystem.B.dyli= b (compatibility version 1.0.0, current version 1197.1.1)
/usr/lib/libobjc.A.dylib (compatibili= ty version 1.0.0, current version 228.0.0)

~/.rubies/2.1.0/lib/ruby/2.1.0/x86_64-darwin= 13.0 =A0brew --prefix gdbm
/usr/local/opt/gdbm


On Fri, Dec 20, 2013 at 11:47 AM, Santiago Pastorino <= spastorino@gmail.= com> wrote:
It works but I'm missing to link against homebrew'= s=A0gdbm, libyaml and libffi not sure how to do the same thing for the rest= of the packages ...


On Thu, Dec 19, 2013 at 9:30 PM, Zachary Scott <e@zzak.io> wrote:
I've been using the following:
=
../configure --with-openssl-dir=3D`brew --prefix openssl` --= with-readline-dir=3D`brew --prefix readline` --with-zlib-dir=3D`brew --pref= ix zlib` --prefix=3D/Users/zzak/.rubies/ruby-trunk

Although I'm missing a few of the deps, maybe you c= an try that?



On = Dec 19, 2013, at 6:16 PM, Santiago Pastorino <spastorino@gmail.com> wrote:

It works if I do ...
autoconf; ./configure --prefix=3D/Users/santiago/.rubies/2.1.0;= make; make install

It doesn't if I do ...=

autoconf; ./configure --prefix=3D/Users/santiago/.rubies/2.1.0 --with-opt-d= ir=3D"$(brew --prefix openssl):$(brew --prefix readline):$(brew --pref= ix libyaml):$(brew --prefix gdbm):$(brew --prefix libffi)"; make; make= install

So, yeah, something is wrong when I use those dep= s from homebrew.


<= br>
On Thu, Dec 19, 2013 at 8:18 PM, Zachary Scot= t <e@zz= ak.io> wrote:
Sorry I = missed the gist, can you try building outside of $srcdir?

I'm not able to repro it on x86_64:
Darwin mba-2.local 12.5.0= Darwin Kernel Version 12.5.0: Sun Sep 29 13:33:47 PDT 2013; root:xnu-2050.= 48.12~1/RELEASE_X86_64 x86_64


On Dec 19, 2013, at 4:59 PM, Santiago Pastorino <spastorino@gmail.com<= /a>> wrote:

zzak, ma= ke distclean is the first thing I've ran. Read the gist again :), even = more after that I've ran git clean.

On Thu, Dec 19, 2013 at 6:52 PM, zzak (Zacha= ry Scott) <e@zzak.io> wrote:

Issue #9264 has been updated by zzak (Zachary Scott).

Category set to build
Status changed from Open to Feedback

Can you try 'make distclean' and then try again?
----------------------------------------
Bug #9264: Compiling error: encdb.bundle Undefined symbols for architecture= x86_64
https://bugs.rub= y-lang.org/issues/9264#change-43766

Author: spastorino (Santiago Pastorino)
Status: Feedback
Priority: Normal
Assignee:
Category: build
Target version: current: 2.1.0
ruby -v: 2.1
Backport: 1.9.3: UNKNOWN, 2.0.0: UNKNOWN


Using today's trunk, I'm getting the following error on compiling
compiling ./enc/encdb.c
linking encoding encdb.bundle
Undefined symbols for architecture x86_64:
=A0 "_rb_enc_set_base", referenced from:
=A0 =A0 =A0 _Init_encdb in encdb.o
=A0 "_rb_enc_set_dummy", referenced from:
=A0 =A0 =A0 _Init_encdb in encdb.o
=A0 "_rb_encdb_alias", referenced from:
=A0 =A0 =A0 _Init_encdb in encdb.o
=A0 "_rb_encdb_declare", referenced from:
=A0 =A0 =A0 _Init_encdb in encdb.o
=A0 "_rb_encdb_dummy", referenced from:
=A0 =A0 =A0 _Init_encdb in encdb.o
=A0 "_rb_encdb_replicate", referenced from:
=A0 =A0 =A0 _Init_encdb in encdb.o
=A0 "_rb_encdb_set_unicode", referenced from:
=A0 =A0 =A0 _Init_encdb in encdb.o
ld: symbol(s) not found for architecture x86_64

Here is the full trace ...

https://gist.github.co= m/spastorino/1ad2858fce42d0e0a2e2

Thanks in advance.


--
http://bugs.ruby-lang.org/








--047d7b873a10d8058f04edf8e5d2--