[MacPorts] #48085: Upgrade Redis 3.0.2 fatal error: 'jemalloc/jemalloc.h' file not found
#48085: Upgrade Redis 3.0.2 fatal error: 'jemalloc/jemalloc.h' file not found -----------------------------+-------------------------------- Reporter: muriel.hernan@… | Owner: macports-tickets@… Type: defect | Status: new Priority: Normal | Milestone: Component: ports | Version: 2.3.3 Keywords: jemalloc.h | Port: Redis -----------------------------+-------------------------------- In OS X 10.10.3 to run this command: sudo port selfupdate && sudo port upgrade outdated Error: org.macports.build for port redis returned: command execution failed Please see the log file for port redis for details: /opt/local/var/macports/logs/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_databases_redis/redis/main.log Error: Unable to upgrade port: 1 -- Ticket URL: <https://trac.macports.org/ticket/48085> MacPorts <https://www.macports.org/> Ports system for OS X
#48085: Upgrade Redis 3.0.2 fatal error: 'jemalloc/jemalloc.h' file not found ------------------------------+---------------------------- Reporter: muriel.hernan@… | Owner: brianjlandau@… Type: defect | Status: new Priority: Normal | Milestone: Component: ports | Version: 2.3.3 Resolution: | Keywords: Port: redis | ------------------------------+---------------------------- Changes (by ryandesign@…): * keywords: jemalloc.h => * owner: macports-tickets@… => brianjlandau@… * port: Redis => redis Old description:
In OS X 10.10.3 to run this command: sudo port selfupdate && sudo port upgrade outdated
Error: org.macports.build for port redis returned: command execution failed Please see the log file for port redis for details: /opt/local/var/macports/logs/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_databases_redis/redis/main.log Error: Unable to upgrade port: 1
New description: In OS X 10.10.3 to run this command: {{{ sudo port selfupdate && sudo port upgrade outdated }}} {{{ Error: org.macports.build for port redis returned: command execution failed Please see the log file for port redis for details: /opt/local/var/macports/logs/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_databases_redis/redis/main.log Error: Unable to upgrade port: 1 }}} -- Comment: That was not a clean build attempt. Please [https://guide.macports.org/chunked/project.html#project.tickets clean and try again]. -- Ticket URL: <https://trac.macports.org/ticket/48085#comment:1> MacPorts <https://www.macports.org/> Ports system for OS X
#48085: Upgrade Redis 3.0.2 fatal error: 'jemalloc/jemalloc.h' file not found ------------------------------+---------------------------- Reporter: muriel.hernan@… | Owner: brianjlandau@… Type: defect | Status: new Priority: Normal | Milestone: Component: ports | Version: 2.3.3 Resolution: | Keywords: Port: redis | ------------------------------+---------------------------- Comment (by zanderpower@…): In the README included in the source, I see the following: {{{ Allocator --------- Selecting a non-default memory allocator when building Redis is done by setting the `MALLOC` environment variable. Redis is compiled and linked against libc malloc by default, with the exception of jemalloc being the default on Linux systems. This default was picked because jemalloc has proven to have fewer fragmentation problems than libc malloc. To force compiling against libc malloc, use: % make MALLOC=libc To compile against jemalloc on Mac OS X systems, use: % make MALLOC=jemalloc }}} Is it possible that it is compiling against jemalloc on Mac OS X by default? I am experiencing the same problem with an _install_ build, on Leopard 10.5.8 (PPC) myself. -- Ticket URL: <https://trac.macports.org/ticket/48085#comment:2> MacPorts <https://www.macports.org/> Ports system for OS X
#48085: Upgrade Redis 3.0.2 fatal error: 'jemalloc/jemalloc.h' file not found ------------------------------+---------------------------- Reporter: muriel.hernan@… | Owner: brianjlandau@… Type: defect | Status: new Priority: Normal | Milestone: Component: ports | Version: 2.3.3 Resolution: | Keywords: Port: redis | ------------------------------+---------------------------- Comment (by zanderpower@…): redis builds for me manually with {{{ $ make malloc=libc }}} -- Ticket URL: <https://trac.macports.org/ticket/48085#comment:3> MacPorts <https://www.macports.org/> Ports system for OS X
#48085: Upgrade Redis 3.0.2 fatal error: 'jemalloc/jemalloc.h' file not found ------------------------------+---------------------------- Reporter: muriel.hernan@… | Owner: brianjlandau@… Type: defect | Status: new Priority: Normal | Milestone: Component: ports | Version: 2.3.3 Resolution: | Keywords: Port: redis | ------------------------------+---------------------------- Comment (by mp@…): According to the redis README, a `make distclean` is needed for the supplied dependencies to build correctly: {{{ Fixing build problems with dependencies or cached build options --------- Redis has some dependencies which are included into the "deps" directory. "make" does not rebuild dependencies automatically, even if something in the source code of dependencies is changes. When you update the source code with `git pull` or when code inside the dependencies tree is modified in any other way, make sure to use the following command in order to really clean everything and rebuild from scratch: make distclean This will clean: jemalloc, lua, hiredis, linenoise. }}} so adding {{{ compiler.whitelist macports-gcc pre-build { system -W ${worksrcpath} "make distclean" } }}} works fine. (The jemalloc supplied with redis doesn't get configured correctly if `/usr/bin/clang` is chosen as compiler, and fails with {{{ :info:build configure: error: C preprocessor "/lib/cpp" fails sanity check }}} in such a case.) ---- Some other tests: ---- If the line {{{ build.args-append MALLOC=jemalloc }}} in the redis Portfile is commented out, redis installs fine. ---- Redis fails to build even if the jemalloc port is installed manually first.\\ Attached log: attachment:redis-fails-even-with-jemalloc-installed.log \\ The jemalloc supplied with redis should apparently be used. -- Ticket URL: <https://trac.macports.org/ticket/48085#comment:5> MacPorts <https://www.macports.org/> Ports system for OS X
#48085: Upgrade Redis 3.0.2 fatal error: 'jemalloc/jemalloc.h' file not found ------------------------------+---------------------------- Reporter: muriel.hernan@… | Owner: brianjlandau@… Type: defect | Status: new Priority: Normal | Milestone: Component: ports | Version: 2.3.3 Resolution: | Keywords: Port: redis | ------------------------------+---------------------------- Comment (by larryv@…): I am unable to reproduce any of these problems on my Yosemite system with Xcode 6.3.2. Running `make distclean` should not be necessary because MacPorts should always be working from a clean source distribution. We don’t support incremental builds or building from a dirty state. Using FSF GCC as the compiler is not an acceptable solution. In any case, I do not see the preprocessor failure with Apple LLVM Compiler 6.1.0. If the default allocator on OS X is libc’s, why are we explicitly using jemalloc? -- Ticket URL: <https://trac.macports.org/ticket/48085#comment:6> MacPorts <https://www.macports.org/> Ports system for OS X
#48085: Upgrade Redis 3.0.2 fatal error: 'jemalloc/jemalloc.h' file not found ------------------------------+-------------------------------- Reporter: muriel.hernan@… | Owner: macports-tickets@… Type: defect | Status: new Priority: Normal | Milestone: Component: ports | Version: 2.3.3 Resolution: | Keywords: Port: redis | ------------------------------+-------------------------------- Changes (by mf2k@…): * owner: brianjlandau@… => macports-tickets@… Comment: See #47649. -- Ticket URL: <https://trac.macports.org/ticket/48085#comment:7> MacPorts <https://www.macports.org/> Ports system for OS X
#48085: Upgrade Redis 3.0.2 fatal error: 'jemalloc/jemalloc.h' file not found ------------------------------+-------------------------------- Reporter: muriel.hernan@… | Owner: macports-tickets@… Type: defect | Status: closed Priority: Normal | Milestone: Component: ports | Version: 2.3.3 Resolution: worksforme | Keywords: Port: redis | ------------------------------+-------------------------------- Changes (by devans@…): * status: new => closed * resolution: => worksforme Comment: Update to version 3.0.7 in r145650. Builds successfully on local El Capitan and on all active buildbots (including Yosemite) -- Ticket URL: <https://trac.macports.org/ticket/48085#comment:8> MacPorts <https://www.macports.org/> Ports system for OS X
participants (1)
-
MacPorts