Opened 18 years ago

Closed 16 years ago

Last modified 16 years ago

#9167 closed enhancement (fixed)

BUG: inventor-2.1.5 dylibs lack install_names

Reported by: bhu@… Owned by: cssdev
Priority: Low Milestone:
Component: ports Version:
Keywords: Cc:
Port: inventor

Description (last modified by cssdev)

The shared libraries (libInventor.dylib and libInventorXt.dylib) are not given "install_name" when linked. The consequence is that we need to set DYLD_LIBRARY_PATH to use the executables that are linked against the libraries. Adding the "install_name" option to the linker's command line should solve the problem.

1) patch for lib/GNUmakefile:

--- GNUmakefile 2006-05-29 21:21:36.000000000 -0400
+++ GNUmakefile.new     2006-05-29 21:21:49.000000000 -0400
@@ -3,7 +3,7 @@

 LIBDSO = libInventor.so

-LLDDSOOPTS += -L$(IVDEPTH)/libimage -L$(FLDIR)
+LLDDSOOPTS += -L$(IVDEPTH)/libimage -install_name /opt/local/lib/libInventor.dylib -L$(FLDIR)

 LLDLIBS = \
        -ljpeg -limage $(FLLIB) \

2) patch for .../libSoXt

--- GNUmakefile 2006-05-29 21:24:59.000000000 -0400
+++ GNUmakefile.new     2006-05-29 21:24:39.000000000 -0400
@@ -7,6 +7,8 @@
        -lXm -lXt -lXext -lXi -lX11 -lm \
        -lInventor -lGLU -lGL

+LLDDSOOPTS += -install_name /opt/local/lib/libInventorXt.dylib
+
 LLDLIBS += $(shell [ -e $(X11LIBDIR)/libXp.so ] && echo -lXp)

 OBJECTS = \

Change History (13)

comment:1 Changed 18 years ago by mww@…

Summary: Specifying names for the dynamic shared librariesRFE: libinventor? Specifying names for the dynamic shared libraries

would you mind at least mentioning the name of the port in the summary? ;)

comment:2 Changed 18 years ago by cssdev@…

Use of a library load path environment variable is considered official practice for SGI Open Inventor. However, the enhancement would certainly be useful. (I could probably also check about contributing it upstream.) Any use of install_name should use ${prefix} to properly work with DarwinPorts installations placed into other locations. I'll have to check, but it might be best to use IVPREFIX to pick up the install location from make/ivcommondefs.

comment:3 Changed 18 years ago by rhwood@…

severity: minorenhancement

Make the list of bugs easier to scan.

comment:4 Changed 18 years ago by cssdev

Owner: changed from macports-tickets@… to css@…

Reassign to maintainer.

comment:5 Changed 18 years ago by cssdev

Status: newassigned

comment:6 Changed 18 years ago by cssdev

Cc: cssdev@… removed
Summary: RFE: libinventor? Specifying names for the dynamic shared librariesRFE: inventor-2.1.5: dylibs lack install_names

Modified summary to match the port name and the specific issue.

comment:7 Changed 18 years ago by pipping@…

Milestone: Available Ports

comment:8 Changed 18 years ago by pipping@…

Milestone: Available PortsPort Enhancements

comment:9 Changed 17 years ago by nox@…

Milestone: Port EnhancementsPort Bugs
Priority: Nice to haveLow
Summary: RFE: inventor-2.1.5: dylibs lack install_namesBUG: inventor-2.1.5 dylibs lack install_names
Version: 1.2

comment:10 Changed 16 years ago by cssdev

Description: modified (diff)
Port: inventor added

comment:11 Changed 16 years ago by cssdev

Description: modified (diff)

It should be feasible to use -install_name $(IVPREFIX)/$(LIBDSO) in each GNUmakefile.

comment:12 Changed 16 years ago by cssdev

Resolution: fixed
Status: assignedclosed

r44643 adds -install_name $(IVPREFIX)/lib/$(LIBDSO) when linking each library.

comment:13 Changed 16 years ago by (none)

Milestone: Port Bugs

Milestone Port Bugs deleted

Note: See TracTickets for help on using tickets.