[MacPorts] #42506: kdevplatform build failure
#42506: kdevplatform build failure ------------------------+-------------------------------- Reporter: jwhowse4@… | Owner: macports-tickets@… Type: defect | Status: new Priority: Normal | Milestone: Component: ports | Version: 2.2.1 Keywords: | Port: kdevplatform ------------------------+-------------------------------- I am using an Intel Mac Pro running Mac OS 10.8.5 (Mountain Lion) with XCode 5.0.2. When I try to upgrade the port kdevplatform from version 1.5.2 to version 1.6.0 the build fails with the attached error log. Any suggestions for a fix? -- Ticket URL: <https://trac.macports.org/ticket/42506> MacPorts <http://www.macports.org/> Ports system for OS X
#42506: kdevplatform build failure ---------------------------+-------------------------------- Reporter: jwhowse4@… | Owner: macports-tickets@… Type: defect | Status: new Priority: Normal | Milestone: Component: ports | Version: 2.2.1 Resolution: | Keywords: Port: kdevplatform | ---------------------------+-------------------------------- Comment (by nicos@…): The definition of HASH_FUN_H should be in sparseconfig.h, from sparsehash port. It seems surprising that the definition would be wrong, but it is true that in my case it is not <tr1/functional> as it seems from your log, but <functional> only. However, these are also different systems (10.8 vs. 10.9 for me). I see also that you have Macports installed on a custom location, while sparsehash has a pre-compiled binary, where the configuration may not be correct for your system. Does forcing to install sparsehash from source solves the issue? {{{ sudo port -f uninstall sparsehash sudo port -s install sparsehash }}} -- Ticket URL: <https://trac.macports.org/ticket/42506#comment:1> MacPorts <http://www.macports.org/> Ports system for OS X
#42506: kdevplatform build failure ---------------------------+-------------------------------- Reporter: jwhowse4@… | Owner: macports-tickets@… Type: defect | Status: new Priority: Normal | Milestone: Component: ports | Version: 2.2.1 Resolution: | Keywords: Port: kdevplatform | ---------------------------+-------------------------------- Comment (by jwhowse4@…): Replying to [comment:1 nicos@…]:
The definition of HASH_FUN_H should be in sparseconfig.h, from sparsehash port. It seems surprising that the definition would be wrong, but it is true that in my case it is not <tr1/functional> as it seems from your log, but <functional> only. However, these are also different systems (10.8 vs. 10.9 for me).
I see also that you have Macports installed on a custom location, while sparsehash has a pre-compiled binary, where the configuration may not be correct for your system. Does forcing to install sparsehash from source solves the issue? {{{ sudo port -f uninstall sparsehash sudo port -s install sparsehash }}}
I do not see how sparsehash could have a precompiled binary since I install everything from source. However, I uninstalled and reinstalled sparsehash as you suggested. I then deactivated the currently active version of kdevplatform and tried to install the new version. The result was the same as previously. I have attached the new log file in the event details have changed. -- Ticket URL: <https://trac.macports.org/ticket/42506#comment:2> MacPorts <http://www.macports.org/> Ports system for OS X
#42506: kdevplatform build failure ---------------------------+-------------------------------- Reporter: jwhowse4@… | Owner: macports-tickets@… Type: defect | Status: new Priority: Normal | Milestone: Component: ports | Version: 2.2.1 Resolution: | Keywords: Port: kdevplatform | ---------------------------+-------------------------------- Changes (by nicos@…): * cc: hum@… (added) Comment: Well, in this case, I strongly suspect that there is an issue in sparsehash's portfile, since internal symbols seem incorrect (cc'ed the maintainer), as to my understanding, HASH_FUN_H, defined as <tr1/functional> in your log should be <functional>. In the meantime, that's an ugly workaround, which would also be overridden with updates of sparsehash, but redefining HASH_FUN_H in the file ${prefix}/include/sparsehash/internal/sparseconfig.h should solve this issue. -- Ticket URL: <https://trac.macports.org/ticket/42506#comment:3> MacPorts <http://www.macports.org/> Ports system for OS X
#42506: kdevplatform build failure ---------------------------+-------------------------------- Reporter: jwhowse4@… | Owner: macports-tickets@… Type: defect | Status: new Priority: Normal | Milestone: Component: ports | Version: 2.2.1 Resolution: | Keywords: Port: kdevplatform | ---------------------------+-------------------------------- Comment (by jwhowse4@…): Replying to [comment:3 nicos@…]:
Well, in this case, I strongly suspect that there is an issue in sparsehash's portfile, since internal symbols seem incorrect (cc'ed the maintainer), as to my understanding, HASH_FUN_H, defined as <tr1/functional> in your log should be <functional>.
In the meantime, that's an ugly workaround, which would also be overridden with updates of sparsehash, but redefining HASH_FUN_H in the file ${prefix}/include/sparsehash/internal/sparseconfig.h should solve this issue.
While I agree this is an ugly hack, it does work for me. By the way I also had to redefine HASH_NAMESPACE to std. The question in my mind is why these two variable were not properly defined on my system in the first place. -- Ticket URL: <https://trac.macports.org/ticket/42506#comment:4> MacPorts <http://www.macports.org/> Ports system for OS X
#42506: sparsehash: configuration error -------------------------+------------------- Reporter: jwhowse4@… | Owner: hum@… Type: defect | Status: new Priority: Normal | Milestone: Component: ports | Version: 2.2.1 Resolution: | Keywords: Port: sparsehash | -------------------------+------------------- Changes (by nicos@…): * owner: macports-tickets@… => hum@… * cc: hum@… (removed) * port: kdevplatform => sparsehash Old description:
I am using an Intel Mac Pro running Mac OS 10.8.5 (Mountain Lion) with XCode 5.0.2. When I try to upgrade the port kdevplatform from version 1.5.2 to version 1.6.0 the build fails with the attached error log. Any suggestions for a fix?
New description: I am using an Intel Mac Pro running Mac OS 10.8.5 (Mountain Lion) with XCode 5.0.2. When I try to upgrade the port kdevplatform from version 1.5.2 to version 1.6.0 the build fails with the attached error log. Any suggestions for a fix? Edit: The error log above is symptomatic of configuration errors in sparsehash, where HASH_FUN_H is defined as <tr1/functional> instead of <functional> (see discussion below). -- Comment: Thanks for the feedback. This confirms that the issue is located in the configuration of sparsehash, and that the build issue of kdevplatform is only a symptom. I changed the description accordingly, and assigned the ticket to the maintainer of sparsehash. I may have a look if I find the time, but not being familiar with the details of sparsehash, I may not be very efficient at solving the issue. -- Ticket URL: <https://trac.macports.org/ticket/42506#comment:5> MacPorts <http://www.macports.org/> Ports system for OS X
#42506: sparsehash: configuration error -------------------------+------------------- Reporter: jwhowse4@… | Owner: hum@… Type: defect | Status: new Priority: Normal | Milestone: Component: ports | Version: 2.2.1 Resolution: | Keywords: Port: sparsehash | -------------------------+------------------- Comment (by nicos@…): Has duplicate #42755. By looking in slightly more details, it seems that the discrepancy in the declaration of HASH_FUN_H depends on the compiler. If compiled with gcc or llvm-gcc, it reduces to <tr1/funtional>, while with clang, it reduces to <functional>. -- Ticket URL: <https://trac.macports.org/ticket/42506#comment:6> MacPorts <http://www.macports.org/> Ports system for OS X
participants (1)
-
MacPorts