Opened 12 years ago

Closed 12 years ago

#31748 closed defect (duplicate)

gtkwave @ 3.3.15: fails to build on Mac OS X Lion with Xcode 4.2 (clang) due to references to undefined symbols by lxtminer.o and lxt2vcd.o

Reported by: maehne (Torsten Maehne) Owned by: gwright@…
Priority: Normal Milestone:
Component: ports Version: 2.0.3
Keywords: haspatch Cc: ryandesign (Ryan Carsten Schmidt), ranauei@…
Port: gtkwave

Description

The current version 3.3.15 of gtkwave available in MacPorts fails to build with the following linker errors:

...
Undefined symbols for architecture x86_64:
  "_lxt2_rd_clr_fac_process_mask", referenced from:
      _vcd_callback in lxt2miner.o
  "_lxt2_rd_get_num_facs", referenced from:
      _process_lxt2 in lxt2miner.o
  "_lxt2_rd_set_fac_process_mask_all", referenced from:
      _process_lxt2 in lxt2miner.o
  "_lxt2_rd_set_max_block_mem_usage", referenced from:
      _process_lxt2 in lxt2miner.o
ld: symbol(s) not found for architecture x86_64
...
Undefined symbols for architecture x86_64:
  "_lxt2_rd_get_num_facs", referenced from:
      _process_lxt in lxt2vcd.o
  "_lxt2_rd_set_fac_process_mask_all", referenced from:
      _process_lxt in lxt2vcd.o
  "_lxt2_rd_set_max_block_mem_usage", referenced from:
      _process_lxt in lxt2vcd.o
  "_lxt2_rd_get_timescale", referenced from:
      _process_lxt in lxt2vcd.o
  "_lxt2_rd_get_alias_root", referenced from:
      _process_lxt in lxt2vcd.o
  "_lxt2_rd_get_start_time", referenced from:
      _process_lxt in lxt2vcd.o
  "_lxt2_rd_get_end_time", referenced from:
      _process_lxt in lxt2vcd.o
ld: symbol(s) not found for architecture x86_64
...

I'm using Mac OS X Lion 10.7.2 with Xcode 4.2 (clang). Apparently, the source code is not yet compatible to clang. I succeeded to compile it by setting configure.compiler to llvm-gcc-4.2.

A patch for the Portfile is attached, which also bumps the gtkwave version to 3.3.26.

Attachments (1)

patch-gtkwave-Portfile.diff (864 bytes) - added by maehne (Torsten Maehne) 12 years ago.
Patch for Portfile

Download all attachments as: .zip

Change History (8)

comment:1 Changed 12 years ago by maehne (Torsten Maehne)

I would like to add that the upstream developer is aware of the problem id 3416140. The problem is marked as fixed, but a new version hasn't been released yet.

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

Keywords: haspatch added

You can't just set configure.compiler to llvm-gcc-4.2 unconditionally; that will probably cause problems for Tiger and Leopard users. Read wiki:PortfileRecipes#compiler for the correct incantation.

comment:3 Changed 12 years ago by maehne (Torsten Maehne)

@ryandesign: Thank you for your remark, I have updated the Portfile so that llvm-gcc-4.2 is only selected if clang has been chosen as compiler. This is reflected in the updated patch.

Changed 12 years ago by maehne (Torsten Maehne)

Attachment: patch-gtkwave-Portfile.diff added

Patch for Portfile

comment:4 Changed 12 years ago by ryandesign (Ryan Carsten Schmidt)

Cc: ryandesign@… added; gwright@… removed
Owner: changed from macports-tickets@… to gwright@…

#32631 claims to supersede this ticket, that 3.3.28 will build with clang.

comment:5 Changed 12 years ago by ranauei@…

Cc: ranauei@… added

Cc Me!

comment:6 Changed 12 years ago by maehne (Torsten Maehne)

I can confirm that #32631 supersedes this ticket and gtkwave 3.3.28 compiled with clang works fine for me.

comment:7 Changed 12 years ago by ryandesign (Ryan Carsten Schmidt)

Resolution: duplicate
Status: newclosed
Note: See TracTickets for help on using tickets.