Opened 14 years ago

Closed 13 years ago

#24603 closed defect (fixed)

yajl universal build fails

Reported by: ryandesign (Ryan Carsten Schmidt) Owned by: benjaminlyu@…
Priority: Normal Milestone:
Component: ports Version: 1.8.2
Keywords: Cc:
Port: yajl

Description

$ sudo port install yajl +universal
--->  Computing dependencies for yajl
--->  Fetching yajl
--->  Verifying checksum(s) for yajl
--->  Extracting yajl
--->  Configuring yajl
Error: Target org.macports.configure returned: configure failure: shell command " cd "/opt/local/var/macports/build/_Users_rschmidt_macports_dports_devel_yajl/work/yajl-1.0.9" && ./configure --prefix=/opt/local --disable-dependency-tracking " returned error 1
Command output: /opt/local/lib/ruby/1.8/optparse.rb:1450:in `complete': invalid option: --disable-dependency-tracking (OptionParser::InvalidOption)
	from /opt/local/lib/ruby/1.8/optparse.rb:1448:in `catch'
	from /opt/local/lib/ruby/1.8/optparse.rb:1448:in `complete'
	from /opt/local/lib/ruby/1.8/optparse.rb:1261:in `parse_in_order'
	from /opt/local/lib/ruby/1.8/optparse.rb:1254:in `catch'
	from /opt/local/lib/ruby/1.8/optparse.rb:1254:in `parse_in_order'
	from /opt/local/lib/ruby/1.8/optparse.rb:1248:in `order!'
	from /opt/local/lib/ruby/1.8/optparse.rb:1339:in `permute!'
	from /opt/local/lib/ruby/1.8/optparse.rb:1360:in `parse!'
	from ./configure:47
	from /opt/local/lib/ruby/1.8/optparse.rb:791:in `initialize'
	from ./configure:37:in `new'
	from ./configure:37

Error: Status 1 encountered during processing.

Change History (2)

comment:1 Changed 14 years ago by benjaminlyu@…

I'm still track down a full fix.

But yajl's configure script is not the normal configure we would expect, it is a ruby script.

So by adding the following to the Portfile, i am able to get through the configure stage:

  configure.universal_args-delete --disable-dependency-tracking

But I now am running into build problems:

    Linking C executable yajl_test
    ld warning: in CMakeFiles/yajl_test.dir/yajl_test.c.o, file is not of required architecture
    ld warning: in ../yajl-1.0.9/lib/libyajl_s.a, file is not of required architecture
    Undefined symbols for architecture ppc:
      "_main", referenced from:
          start in crt1.10.5.o
    ld: symbol(s) not found for architecture ppc
    collect2: ld returned 1 exit status
    lipo: can't open input file: /var/tmp//ccLRHPYD.out (No such file or directory)
    make[3]: *** [test/yajl_test] Error 1
    make[2]: *** [test/CMakeFiles/yajl_test.dir/all] Error 2
    make[1]: *** [all] Error 2
    make: *** [distro] Error 2

It looks like it's been seen before: #14108

Barring that, I can cd into the work directory and actually run make with success:

    bash-3.2# make
    Scanning dependencies of target yajl
    [  5%] Building C object src/CMakeFiles/yajl.dir/yajl.c.o
    [ 11%] Building C object src/CMakeFiles/yajl.dir/yajl_lex.c.o
    [ 17%] Building C object src/CMakeFiles/yajl.dir/yajl_parser.c.o
    [ 23%] Building C object src/CMakeFiles/yajl.dir/yajl_buf.c.o
    [ 29%] Building C object src/CMakeFiles/yajl.dir/yajl_encode.c.o
    [ 35%] Building C object src/CMakeFiles/yajl.dir/yajl_gen.c.o
    [ 41%] Building C object src/CMakeFiles/yajl.dir/yajl_alloc.c.o
    Linking C shared library ../yajl-1.0.9/lib/libyajl.dylib
    [ 41%] Built target yajl
    Scanning dependencies of target yajl_s
    [ 47%] Building C object src/CMakeFiles/yajl_s.dir/yajl.c.o
    [ 52%] Building C object src/CMakeFiles/yajl_s.dir/yajl_lex.c.o
    [ 58%] Building C object src/CMakeFiles/yajl_s.dir/yajl_parser.c.o
    [ 64%] Building C object src/CMakeFiles/yajl_s.dir/yajl_buf.c.o
    [ 70%] Building C object src/CMakeFiles/yajl_s.dir/yajl_encode.c.o
    [ 76%] Building C object src/CMakeFiles/yajl_s.dir/yajl_gen.c.o
    [ 82%] Building C object src/CMakeFiles/yajl_s.dir/yajl_alloc.c.o
    Linking C static library ../yajl-1.0.9/lib/libyajl_s.a
    [ 82%] Built target yajl_s
    Scanning dependencies of target yajl_test
    [88%] Building C object test/CMakeFiles/yajl_test.dir/yajl_test.c.o
    Linking C executable yajl_test
    [ 88%] Built target yajl_test
    Scanning dependencies of target json_reformat
    [ 94%] Building C object reformatter/CMakeFiles/json_reformat.dir/json_reformat.c.o
    Linking C executable json_reformat
    [ 94%] Built target json_reformat
    Scanning dependencies of target json_verify
    [100%] Building C object verify/CMakeFiles/json_verify.dir/json_verify.c.o
    Linking C executable json_verify
    [100%] Built target json_verify

comment:2 Changed 13 years ago by ryandesign (Ryan Carsten Schmidt)

Resolution: fixed
Status: newclosed

It works fine after updating to 1.0.12 and switching to the cmake portgroup; r85720.

Note: See TracTickets for help on using tickets.