Opened 5 years ago

Last modified 4 days ago

#40112 reopened defect

Julius 4.2.3 fails to upgrade non-universal to universal on 10.6

Reported by: Raptor007 (Raptor007) Owned by: hem@…
Priority: Low Milestone:
Component: ports Version: 2.2.0
Keywords: universal, snowleopard Cc: ryandesign (Ryan Schmidt)
Port: julius

Description

It looks like julius is searching /opt/local/lib for libjulius.a and libsent.a instead of just using the freshly-built copies; these libs are part of the julius port. This means if you try to upgrade from a non-universal build to universal, it fails to link for other architectures.

:info:build /usr/bin/llvm-gcc-4.2 -O2 -arch x86_64 -arch i386 -I. -I../libjulius/include -I../libsent/include -I/opt/local/include `../libsent/libsent-config --cflags` `../libjulius/libjulius-config --cflags` -o julius main.o recogloop.o module.o output_module.o output_stdout.o output_file.o record.o charconv.o c
:info:build ld: warning: ignoring file /opt/local/lib/libjulius.a, file was built for archive which is not the architecture being linked (i386)
:info:build ld: warning: ignoring file /opt/local/lib/libsent.a, file was built for archive which is not the architecture being linked (i386)
:info:build Undefined symbols for architecture i386:
:info:build   "_j_put_version", referenced from:
:info:build       _main in main.o
...
:info:build ld: symbol(s) not found for architecture i386

I was able to solve this by simply removing /opt/local/lib/libjulius.a and /opt/local/lib/libsent.a, but surely the build process shouldn't be looking in /opt/local/lib for libs that are included in this port?

Attachments (1)

main.log (14.2 KB) - added by Raptor007 (Raptor007) 5 years ago.
Main log when upgrading julius from non-universal to universal.

Download all attachments as: .zip

Change History (5)

Changed 5 years ago by Raptor007 (Raptor007)

Attachment: main.log added

Main log when upgrading julius from non-universal to universal.

comment:1 Changed 5 years ago by ryandesign (Ryan Schmidt)

Cc: ryandesign@… added
Keywords: snowleopard added; snow leopard removed
Owner: changed from macports-tickets@… to hem@…

Agreed. The -L flags are probably in the wrong order in the Makefile somewhere.

comment:2 Changed 5 days ago by kencu (Ken)

Resolution: wontfix
Status: newclosed

Five years, no fix. Only happens upgrading from non-universal to universal. Too esoteric. Nobody will ever fix this. Please reopen if this is still an issue.

comment:3 Changed 5 days ago by ryandesign (Ryan Schmidt)

Resolution: wontfix
Status: closedreopened

It does not only affect universal builds. The fact that the MacPorts library path appears before project-local library paths is a build system bug that can cause all sorts of build problems, and we should fix it.

comment:4 Changed 5 days ago by kencu (Ken)

OK, I built it cleanly +universal on 10.6 without hiccup, as a data point. It also builds cleanly as -universal.

But I didn't try building it -universal then upgrading to +universal, which is I believe the esoteric case where the build fails.

Last edited 4 days ago by kencu (Ken) (previous) (diff)
Note: See TracTickets for help on using tickets.