Opened 9 years ago

Closed 9 years ago

#29881 closed defect (fixed)

hdfeos: C preprocessor "/lib/cpp" fails sanity check with hdf4 +universal

Reported by: watsodw Owned by: tenomoto (Takeshi Enomoto)
Priority: Normal Milestone:
Component: ports Version: 1.9.2
Keywords: universal Cc: ryandesign (Ryan Schmidt)
Port: hdfeos

Description

hdfeos fails to upgrade

Attachments (3)

main.log (4.8 KB) - added by watsodw 9 years ago.
hdfeos_config.log (18.1 KB) - added by watsodw 9 years ago.
hdfeos-patch.diff (1.0 KB) - added by ryandesign (Ryan Schmidt) 9 years ago.
possibly useful patch

Download all attachments as: .zip

Change History (12)

Changed 9 years ago by watsodw

Attachment: main.log added

comment:1 Changed 9 years ago by jmroot (Joshua Root)

Cc: takeshi@… removed
Owner: changed from macports-tickets@… to takeshi@…
Summary: hdfeos fails to upgradehdfeos fails to upgrade: "error: C preprocessor "/lib/cpp" fails sanity check"

comment:2 Changed 9 years ago by watsodw

Still trying to upgrade hdfeos, changing compilers to gcc-mp-4.4 as installed by macports, get this error:

:info:configure checking for C compiler default output file name... 
:info:configure configure: error: C compiler cannot create executables

After looking around I can't find the hdf4 libraries in destroot, but port command shows they are installed and active. Where are they and can this be the cause of my problem?

comment:3 Changed 9 years ago by tenomoto (Takeshi Enomoto)

I don't have /lib/cpp. I have /usr/bin/cpp. Can you attach config.log?

Changed 9 years ago by watsodw

Attachment: hdfeos_config.log added

comment:4 in reply to:  3 Changed 9 years ago by watsodw

Replying to takeshi@…:

I don't have /lib/cpp. I have /usr/bin/cpp. Can you attach config.log?

Sorry, the first hdfeos_config.log I attached was the wrong one. Replaced it with the correct one.

comment:5 Changed 9 years ago by tenomoto (Takeshi Enomoto)

It appears that

h4cc -E

causes an error by complaining that

gcc-4.2: -E, -S, -save-temps and -M options are not allowed with multiple -arch flags

I would like to take a look at

$ port installed hdf4

and CFLAGS in ${prefix}/bin/h4cc.

comment:6 in reply to:  5 Changed 9 years ago by watsodw

Replying to takeshi@…:

It appears that

h4cc -E

causes an error by complaining that

gcc-4.2: -E, -S, -save-temps and -M options are not allowed with multiple -arch flags

I would like to take a look at

$ port installed hdf4

and CFLAGS in ${prefix}/bin/h4cc.

port installed hdf4 gives "hdf4 @4.2.6_0+universal (active)" CFLAGS from h4cc is CFLAGS=" -pipe -O2 -arch x86_64 -arch i386 -O"

comment:7 Changed 9 years ago by tenomoto (Takeshi Enomoto)

Resolution: fixed
Status: newclosed

h4cc -E of universal variant does not work since multiple -arch is given. It would be better to fix hdf4 to make h4cc -E work correctly but it is beyond the work of the maintainer. I replaced /lib/cpp with /usr/bin/cpp in configure as a quick fix. Committed in r80888.

comment:8 Changed 9 years ago by ryandesign (Ryan Schmidt)

Cc: ryandesign@… added
Keywords: universal added
Resolution: fixed
Status: closedreopened
Summary: hdfeos fails to upgrade: "error: C preprocessor "/lib/cpp" fails sanity check"hdfeos: C preprocessor "/lib/cpp" fails sanity check with hdf4 +universal

r80888 fixed the problem when building hdfeos with the universal variant, but the problem doesn't really have anything to do with hdfeos's universal variant; it has to do with hdf4's universal variant. So the problem still occurs when hdf4 is built with the universal variant but hdfeos is built without the universal variant. Why restrict this patch to the universal variant -- why not do it all the time? While we're at it, why not use ${configure.cpp} instead of hardcoding /usr/bin/cpp? See attached patch.

However, we now see that if hdf4 is built +universal and we install hdfeos -universal, hdfeos builds, but ends up being universal anyway! This is a bug in hdf4 for which I've filed #30260.

Changed 9 years ago by ryandesign (Ryan Schmidt)

Attachment: hdfeos-patch.diff added

possibly useful patch

comment:9 Changed 9 years ago by tenomoto (Takeshi Enomoto)

Resolution: fixed
Status: reopenedclosed

Committed in r80921.

Note: See TracTickets for help on using tickets.