Skip to Content.
Sympa Menu

sm-grimoire-bugs - [SM-Grimoire-Bugs] [Bug 15738] New: gcj 4.3.3 installs files into /usr/lib64 on a 64bit system (=no multi-lib)

sm-grimoire-bugs AT lists.ibiblio.org

Subject: SourceMage Grimoire Bug List

List archive

Chronological Thread  
  • From: bugzilla-daemon AT bugs.sourcemage.org
  • To: sm-grimoire-bugs AT lists.ibiblio.org
  • Subject: [SM-Grimoire-Bugs] [Bug 15738] New: gcj 4.3.3 installs files into /usr/lib64 on a 64bit system (=no multi-lib)
  • Date: 8 Jun 2010 20:41:42 -0000

http://bugs.sourcemage.org/show_bug.cgi?id=15738

Summary: gcj 4.3.3 installs files into /usr/lib64 on a 64bit
system (=no multi-lib)
Product: Codex
Version: stable grimoire
Platform: x86
OS/Version: Linux
Status: NEW
Severity: normal
Priority: P3
Component: java
AssignedTo: sm-grimoire-bugs AT lists.ibiblio.org
ReportedBy: henkjans_bagger AT hotmail.com


Created an attachment (id=7473)
--> (http://bugs.sourcemage.org/attachment.cgi?id=7473)
install log of gcj-4.3.3 demonstrating that it indeed is responsible for
dumping stuff into /usr/lib64

On a non-multilib 64-bit system as set in the gcc-config gcj installs the
following files into /usr/lib64

drwxr-xr-x 4 root root 4096 Jun 6 01:15 .
drwxr-xr-x 16 root root 4096 Jun 6 01:15 ..
drwxr-xr-x 2 root root 4096 Jun 6 01:15 gcj-4.3.3-9
-rw-r--r-- 1 root root 8733554 Jun 6 01:13 libgcj-tools.a
-rwxr-xr-x 1 root root 1036 Jun 6 01:13 libgcj-tools.la
lrwxrwxrwx 1 root root 21 Jun 6 01:15 libgcj-tools.so ->
libgcj-tools.so.9.0.0
lrwxrwxrwx 1 root root 21 Jun 6 01:15 libgcj-tools.so.9 ->
libgcj-tools.so.9.0.0
-rwxr-xr-x 1 root root 6750277 Jun 6 01:13 libgcj-tools.so.9.0.0
-rw-r--r-- 1 root root 128716208 Jun 6 01:13 libgcj.a
-rwxr-xr-x 1 root root 1018 Jun 6 01:13 libgcj.la
lrwxrwxrwx 1 root root 15 Jun 6 01:15 libgcj.so -> libgcj.so.9.0.0
lrwxrwxrwx 1 root root 15 Jun 6 01:15 libgcj.so.9 -> libgcj.so.9.0.0
-rwxr-xr-x 1 root root 94114911 Jun 6 01:13 libgcj.so.9.0.0
-rw-r--r-- 1 root root 25158 Jun 6 01:13 libgcj_bc.a
-rwxr-xr-x 1 root root 23924 Jun 6 01:13 libgcj_bc.so
lrwxrwxrwx 1 root root 18 Jun 6 01:15 libgcj_bc.so.1 ->
libgcj_bc.so.1.0.0
-rwxr-xr-x 1 root root 1925 Jun 6 01:13 libgcj_bc.so.1.0.0
-rw-r--r-- 1 root root 13630 Jun 6 01:13 libgij.a
-rwxr-xr-x 1 root root 1105 Jun 6 01:13 libgij.la
lrwxrwxrwx 1 root root 15 Jun 6 01:15 libgij.so -> libgij.so.9.0.0
lrwxrwxrwx 1 root root 15 Jun 6 01:15 libgij.so.9 -> libgij.so.9.0.0
-rwxr-xr-x 1 root root 14699 Jun 6 01:13 libgij.so.9.0.0
-rw-r--r-- 1 root root 1437 Jun 6 01:13 logging.properties
drwxr-xr-x 2 root root 4096 Jun 6 01:15 security

I think no files should be installed into /usr/lib64 as all libraries should
go
into /usr/lib if running a pure 64-bit system. Libraries are all 64-bit btw as
checked with readelf.

My thoughts on why might go wrong based on the difference in BUILD-scripts
between gcj and gcc (not sure which of the two is most likely to be the
solution)

1) The build-file for gcj contains :

# take multilib option from GCC
# ignore return value as it is only available on x86_64
persistent_read gcc GCC_MULTILIB GCC_MULTILIB

and

persistent_read gcc GCC_CFLAGS CFLAGS &&
persistent_read gcc GCC_LDFLAGS LDFLAGS &&

However only the last to are stored in the gcc build-script using a
persistent_add. The is no line storing GCC_MULTILIB using a
persistent_add....which appears counter-intuitive

2) Other option: build-file for gcc contains:

# install gcc libraries to /lib instead of /lib64
sedit "s/lib64/lib/" gcc/config/i386/linux64.h &&
if [[ "$GCC_NOLIB64" == 'y' ]]; then
# tell gcc to target binaries to expect the linker in /lib instead of /lib64
sedit "s/lib64/lib/" gcc/config/i386/t-linux64
fi

Corresponding section in build-file for gcj if missing the bit from the
if-case
above and only has one of the sed lines:

sedit "s/lib64/lib/" gcc/config/i386/linux64.h

Again seems strange...

--
Configure bugmail: http://bugs.sourcemage.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.




Archive powered by MHonArc 2.6.24.

Top of Page