Opened 19 years ago

Closed 19 years ago

#3028 closed defect (fixed)

"c++filt3 does not exist." and conflict of return type in "com.c" and "com.h"

Reported by: mail2dais@… Owned by: gwright@…
Priority: Normal Milestone:
Component: base Version: 1.0
Keywords: Cc:
Port:

Description

While I was installing math/R, it occurs while building g77.

-- $ sudo port install R ---> Building g77 with target bootstrap-lean Error: Target com.apple.build returned: shell command "cd "/opt/local/var/db/dpor ts/build/file._opt_local_var_db_dports_sources_rsync.rsync.opendarwin.org_dpupdat e_dports_lang_g77/work/build" && make bootstrap-lean" returned error 2 Command output: make[2]: Nothing to be done for `all'. Bootstrapping the compiler make CC=" stage1/xgcc -Bstage1/ -B/opt/local/powerpc-apple-darwin8.0.0/bin/" \

STAGE_PREFIX=stage1/ \ ADAC="\$(CC)" AR_FOR_TARGET="ar" RANLIB_FOR_TARGET="ranlib" CFLAGS="-g -

O2" LDFLAGS="" WARN_CFLAGS="\$(GCC_WARN_CFLAGS)" STRICT_WARN="-Wtraditional -peda ntic -Wno-long-long" libdir=/opt/local/lib LANGUAGES="c gcov f77" MAKEOVERRIDES= OUTPUT_OPTION="-o \$@" stage1/xgcc -Bstage1/ -B/opt/local/powerpc-apple-darwin8.0.0/bin/ -g -O2 -DIN_G CC -W -Wall -Wwrite-strings -Wstrict-prototypes -Wmissing-prototypes -Wtraditio nal -pedantic -Wno-long-long -DHAVE_CONFIG_H -DGENERATOR_FILE -o gengtype \

gengtype.o gengtype-lex.o gengtype-yacc.o ../libiberty/libiberty.a

xgcc: installation problem, cannot exec `c++filt3': No such file or directory /usr/bin/ld: warning prebinding disabled because of undefined symbols /usr/bin/ld: Undefined symbols: _fprintf$LDBLStub collect2: ld returned 1 exit status make[2]: * [gengtype] Error 1 make[1]: * [stage2_build] Error 2 make: * [bootstrap-lean] Error 2

Error: The following dependencies failed to build: g77

--- It seems that "c++filt3" does not exist at "/usr/bin".

-- $ ls -la c++* lrwxr-xr-x 1 root wheel 7 May 5 15:59 c++@ -> g++-4.0 lrwxr-xr-x 1 root wheel 7 May 5 15:57 c++-3.3@ -> g++-3.3 -rwxr-xr-x 1 root wheel 39524 Mar 21 05:56 c++-4.0* -rwxr-xr-x 1 root wheel 351836 Mar 21 08:22 c++filt*

-- It seems that making symbolic link from "c++filt" to "c++filt3", it works. However, next problem appears.

-- $ ls -la c++* lrwxr-xr-x 1 root wheel 7 May 5 15:59 c++@ -> g++-4.0 lrwxr-xr-x 1 root wheel 7 May 5 15:57 c++-3.3@ -> g++-3.3 -rwxr-xr-x 1 root wheel 39524 Mar 21 05:56 c++-4.0* -rwxr-xr-x 1 root wheel 351836 Mar 21 08:22 c++filt* lrwxr-xr-x 1 root wheel 16 May 8 00:14 c++filt3@ -> /usr/bin/c++filt $ sudo port install R ---> Building g77 with target bootstrap-lean Error: Target com.apple.build returned: shell command "cd "/opt/local/var/db/dpor ts/build/file._opt_local_var_db_dports_sources_rsync.rsync.opendarwin.org_dpupdat e_dports_lang_g77/work/build" && make bootstrap-lean" returned error 2 Command output: make[2]: Nothing to be done for `all'. Bootstrapping the compiler make CC=" stage1/xgcc -Bstage1/ -B/opt/local/powerpc-apple-darwin8.0.0/bin/" \

STAGE_PREFIX=stage1/ \ ADAC="\$(CC)" AR_FOR_TARGET="ar" RANLIB_FOR_TARGET="ranlib" CFLAGS="-g -

O2" LDFLAGS="" WARN_CFLAGS="\$(GCC_WARN_CFLAGS)" STRICT_WARN="-Wtraditional -peda ntic -Wno-long-long" libdir=/opt/local/lib LANGUAGES="c gcov f77" MAKEOVERRIDES= OUTPUT_OPTION="-o \$@" stage1/xgcc -Bstage1/ -B/opt/local/powerpc-apple-darwin8.0.0/bin/ -g -O2 -DIN_G CC -W -Wall -Wwrite-strings -Wstrict-prototypes -Wmissing-prototypes -Wtraditio nal -pedantic -Wno-long-long -DHAVE_CONFIG_H -DGENERATOR_FILE -o gengtype \

gengtype.o gengtype-lex.o gengtype-yacc.o ../libiberty/libiberty.a

/usr/bin/ld: warning prebinding disabled because of undefined symbols /usr/bin/ld: Undefined symbols: _fprintf$LDBLStub collect2: ld returned 1 exit status make[2]: * [gengtype] Error 1 make[1]: * [stage2_build] Error 2 make: * [bootstrap-lean] Error 2

Error: The following dependencies failed to build: g77

-- I found that those files of "com.c" and "com.h" at /opt/local/var/db/dports/build/ file._opt_local_var_db_dports_sources_rsync.rsync.opendarwin.org_dpupdate_dports_lang_g77/work/ gcc-3.3.3/gcc/f/ has a different return type;

com.c: ffeinfoBasictype ffecom_gfrt_basictype (ffecomGfrt gfrt) com.h: ffeinfoKindtype ffecom_gfrt_basictype (ffecomGfrt ix);

I hope these bugs are small.

Change History (11)

comment:1 Changed 19 years ago by gwright@…

Status: newassigned

Known problem that is being worked on.

Note to self: change the dependency of R from g77 to gcc-3.4.3; standalone g77 port should be deprecated.

/gw

comment:2 Changed 19 years ago by mail2dais@…

Thank you for your reply, Gregory.

Honestly speaking, I do not understand or know how to change the dependency, as you told me. Could you please explain your proposing approach? thank you.

(In reply to comment #1)

Known problem that is being worked on.

Note to self: change the dependency of R from g77 to gcc-3.4.3; standalone g77 port should be deprecated.

/gw

comment:3 Changed 19 years ago by gwright@…

The g77 compiler is built as part of the gcc34 port. With the octave port we had to make certain that the c++, c and fortran compilers were from the same build to avoid linking problems. The "note to self" is a note to me to change the dependency of the R port once the compiler issues are fixed.

I hope to have the gcc34 compilers fixed in a day or so.

/gw

comment:4 Changed 19 years ago by ghenshaw@…

I second this bug. It's currently preventing me from building octave, which apparently relies on gcc34. Please hurry!

comment:5 Changed 19 years ago by jmpp@…

Owner: changed from darwinports-bugs@… to gwright@…
Status: assignednew

comment:6 Changed 19 years ago by gwright@…

Status: newassigned

gcc34 is fixed, and the octave port now builds. The R port has more problems; it may have to be converted to build with gcc40, or made to use the gcc-3.3 compiler by default. It is being looked at.

/gw

comment:7 Changed 19 years ago by marius173@…

gcc34 has been fixed? I ran 'port selfupdate' under Tiger 10.4.1 this morning - and also had this issue.

sudo ln -s /bin/c++filt3 /bin/c++filt

fixed my problem.

comment:8 Changed 19 years ago by jeffrey_chang@…

Is the R port still being looked at? As far as I can tell, R still depends on g77, which still produces this error. Creating a symlink to c++filt will result in successful compilation of g77, but produce errors down the road in R.

Thanks, Jeff

comment:9 Changed 19 years ago by gwright@…

Question: are you running Tiger (10.4.x) and Xcode 1.5? That will lead to problems. First, make certain you are using Xcode 2.0.

The R port will be changed to use gcc34, rather than building g77. This is required to ensure a consistent ABI so that the c, fortran and c++ components will link properly.

I'll update the R port soon even if it still has problems. At least we can all be working on the version that will be used going forward.

/gw

comment:10 Changed 19 years ago by jeffrey_chang@…

Yes, I running a clean format and install (not upgrade) of 10.4.1 with XCode 2 (just verified). I really appreciate your help.

Thanks, Jeff

comment:11 Changed 19 years ago by gwright@…

Resolution: fixed
Status: assignedclosed

OK, I'm going to close this bug, since the c++filt problem was really the TIger/Xcode 1.5 issue.

R doesn't build yet, but for reasons unrelated to this (linking problem in lapack).

-Greg

Note: See TracTickets for help on using tickets.