[MacPorts] #21865: wine-devel doesn't like x86_64
#21865: wine-devel doesn't like x86_64 -----------------------------------+---------------------------------------- Reporter: Damien@… | Owner: macports-tickets@… Type: defect | Status: new Priority: Normal | Milestone: Component: ports | Version: 1.8.1 Keywords: x86_64, libexpat | Port: wine-devel -----------------------------------+---------------------------------------- wine-devel seems to think that my architecture is i386, but it is x86_64. I didn't compile anything with +universal. {{{ … ---> Verifying checksum(s) for wine-devel DEBUG: Executing org.macports.checksum (wine-devel) ---> Checksumming wine-1.1.30.tar.bz2 DEBUG: Correct (md5) checksum for wine-1.1.30.tar.bz2 DEBUG: Correct (sha1) checksum for wine-1.1.30.tar.bz2 DEBUG: Correct (rmd160) checksum for wine-1.1.30.tar.bz2 DEBUG: setting option extract.cmd to /usr/bin/bzip2 ---> Extracting wine-devel DEBUG: Executing proc-pre-org.macports.extract-extract-0 Error: You cannot install wine-devel for the architecture(s) i386 because /opt/local/lib/libexpat.dylib does not contain the architecture i386. Error: Target org.macports.extract returned: incompatible architectures in dependencies DEBUG: Backtrace: incompatible architectures in dependencies while executing "$pre $targetname" Warning: the following items did not execute (for wine-devel): org.macports.activate org.macports.extract org.macports.patch org.macports.configure org.macports.build org.macports.destroot org.macports.archive org.macports.install Error: Status 1 encountered during processing. … }}} -- Ticket URL: <http://trac.macports.org/ticket/21865> MacPorts <http://www.macports.org/> Ports system for Mac OS
#21865: wine-devel doesn't like x86_64 -----------------------------------+---------------------------------------- Reporter: Damien@… | Owner: ryandesign@… Type: defect | Status: new Priority: Normal | Milestone: Component: ports | Version: 1.8.1 Keywords: x86_64, libexpat | Port: wine-devel -----------------------------------+---------------------------------------- Changes (by macsforever2000@…): * cc: jwa@… (added) * owner: macports-tickets@… => ryandesign@… -- Ticket URL: <http://trac.macports.org/ticket/21865#comment:1> MacPorts <http://www.macports.org/> Ports system for Mac OS
#21865: wine-devel doesn't like x86_64 -----------------------------------+---------------------------------------- Reporter: Damien@… | Owner: ryandesign@… Type: defect | Status: assigned Priority: Normal | Milestone: Component: ports | Version: 1.8.1 Keywords: x86_64, libexpat | Port: wine-devel -----------------------------------+---------------------------------------- Changes (by ryandesign@…): * status: new => assigned Comment: wine must be built 32-bit. The developers are working on 64-bit support but it will probably take a long time. If you want to install wine, you must therefore have all its dependencies installed 32-bit as well, either by setting build_arch to i386 and rebuilding all of them, or by setting universal_archs to i386 x86_64 and rebuilding all of them. -- Ticket URL: <http://trac.macports.org/ticket/21865#comment:2> MacPorts <http://www.macports.org/> Ports system for Mac OS
#21865: wine-devel doesn't like x86_64 -----------------------------------+---------------------------------------- Reporter: Damien@… | Owner: ryandesign@… Type: defect | Status: assigned Priority: Normal | Milestone: Component: ports | Version: 1.8.1 Keywords: x86_64, libexpat | Port: wine-devel -----------------------------------+---------------------------------------- Comment(by jussi.eskelinen@…): I tried this and it didn't work, especially xml2 seems to have trouble installing because of "incompatible architecture dependencies". -- Ticket URL: <http://trac.macports.org/ticket/21865#comment:3> MacPorts <http://www.macports.org/> Ports system for Mac OS
#21865: wine-devel doesn't like x86_64 -----------------------------------+---------------------------------------- Reporter: Damien@… | Owner: ryandesign@… Type: defect | Status: assigned Priority: Normal | Milestone: Component: ports | Version: 1.8.1 Keywords: x86_64, libexpat | Port: wine-devel -----------------------------------+---------------------------------------- Comment(by ryandesign@…): Show me exactly what error you get and tell me what port you're installing when you get it. wine-devel installs fine on Snow Leopard if you install the dependencies with the right architectures. I have not personally tried using the build_arch method, but I have used the universal build method. -- Ticket URL: <http://trac.macports.org/ticket/21865#comment:4> MacPorts <http://www.macports.org/> Ports system for Mac OS
#21865: wine-devel doesn't like x86_64 -----------------------------------+---------------------------------------- Reporter: Damien@… | Owner: ryandesign@… Type: defect | Status: assigned Priority: Normal | Milestone: Component: ports | Version: 1.8.1 Keywords: x86_64, libexpat | Port: wine-devel -----------------------------------+---------------------------------------- Comment(by jussi.eskelinen@…): This is what it says: {{{ pikku-delfiini:~ jussi$ sudo port -f -R install wine-devel ---> Computing dependencies for wine-devel ---> Extracting wine-devel Error: You cannot install wine-devel for the architecture(s) i386 because /opt/local/lib/libxml2.dylib does not contain the architecture i386. Error: Target org.macports.extract returned: incompatible architectures in dependencies Error: Status 1 encountered during processing.}}} -- Ticket URL: <http://trac.macports.org/ticket/21865#comment:5> MacPorts <http://www.macports.org/> Ports system for Mac OS
#21865: wine-devel doesn't like x86_64 -----------------------------------+---------------------------------------- Reporter: Damien@… | Owner: ryandesign@… Type: defect | Status: assigned Priority: Normal | Milestone: Component: ports | Version: 1.8.1 Keywords: x86_64, libexpat | Port: wine-devel -----------------------------------+---------------------------------------- Comment(by ryandesign@…): Ok. What architectures does libxml2 contain? {{{ lipo -info /opt/local/lib/libxml2.dylib }}} How is libxml2 installed? {{{ port installed libxml2 }}} It sounds like it was not installed with the universal variant. To fix this, reinstall it with the universal variant: {{{ sudo port upgrade --enforce-variants libxml2 +universal }}} P.S: You don't want to use the `-f` or `-R` flags when you `port install`. -- Ticket URL: <http://trac.macports.org/ticket/21865#comment:6> MacPorts <http://www.macports.org/> Ports system for Mac OS
#21865: wine-devel doesn't like x86_64 -----------------------------------+---------------------------------------- Reporter: Damien@… | Owner: ryandesign@… Type: defect | Status: assigned Priority: Normal | Milestone: Component: ports | Version: 1.8.1 Keywords: x86_64, libexpat | Port: wine-devel -----------------------------------+---------------------------------------- Comment(by ryandesign@…): Replying to [comment:6 ryandesign@…]:
Ok. What architectures does libxml2 contain? P.S: I have modified the archcheck portgroup in r59100 so it will automatically tell us this in the future.
-- Ticket URL: <http://trac.macports.org/ticket/21865#comment:7> MacPorts <http://www.macports.org/> Ports system for Mac OS
#21865: wine-devel doesn't like x86_64 -----------------------------------+---------------------------------------- Reporter: Damien@… | Owner: ryandesign@… Type: defect | Status: assigned Priority: Normal | Milestone: Component: ports | Version: 1.8.1 Keywords: x86_64, libexpat | Port: wine-devel -----------------------------------+---------------------------------------- Comment(by jussi.eskelinen@…): Thanks for the help. I did as you suggested, but still no luck: {{{ pikku-delfiini:~ jussi$ sudo port install wine-devel +universal ---> Computing dependencies for wine-devel ---> Extracting wine-devel Error: You cannot install wine-devel for the architecture(s) i386 because /opt/local/lib/libxslt.dylib does not contain the architecture i386. Error: Target org.macports.extract returned: incompatible architectures in dependencies Error: Status 1 encountered during processing. }}} I get the same message even without +universal. -- Ticket URL: <http://trac.macports.org/ticket/21865#comment:8> MacPorts <http://www.macports.org/> Ports system for Mac OS
#21865: wine-devel doesn't like x86_64 -----------------------------------+---------------------------------------- Reporter: Damien@… | Owner: ryandesign@… Type: defect | Status: assigned Priority: Normal | Milestone: Component: ports | Version: 1.8.1 Keywords: x86_64, libexpat | Port: wine-devel -----------------------------------+---------------------------------------- Comment(by ryandesign@…): Please sync first so you have the latest files. {{{ sudo port sync }}} Then rebuild libxml2 with the universal variant, as I showed. {{{ sudo port upgrade --enforce-variants libxml2 +universal }}} -- Ticket URL: <http://trac.macports.org/ticket/21865#comment:9> MacPorts <http://www.macports.org/> Ports system for Mac OS
#21865: wine-devel doesn't like x86_64 -----------------------------------+---------------------------------------- Reporter: Damien@… | Owner: ryandesign@… Type: defect | Status: assigned Priority: Normal | Milestone: Component: ports | Version: 1.8.1 Keywords: x86_64, libexpat | Port: wine-devel -----------------------------------+---------------------------------------- Comment(by ryandesign@…): Oh, sorry, I missed that your error message has changed: now it's complaining about libxslt. So rebuild libxslt with the universal variant. {{{ sudo port upgrade --enforce-variants libxslt +universal }}} Do similar for any other ports it complains about. -- Ticket URL: <http://trac.macports.org/ticket/21865#comment:10> MacPorts <http://www.macports.org/> Ports system for Mac OS
#21865: wine-devel doesn't like x86_64 -----------------------------------+---------------------------------------- Reporter: Damien@… | Owner: ryandesign@… Type: defect | Status: assigned Priority: Normal | Milestone: Component: ports | Version: 1.8.1 Keywords: x86_64, libexpat | Port: wine-devel -----------------------------------+---------------------------------------- Comment(by jussi.eskelinen@…): Sorry, my bad! Will try that. -- Ticket URL: <http://trac.macports.org/ticket/21865#comment:11> MacPorts <http://www.macports.org/> Ports system for Mac OS
#21865: wine-devel doesn't like x86_64 -----------------------------------+---------------------------------------- Reporter: Damien@… | Owner: ryandesign@… Type: defect | Status: assigned Priority: Normal | Milestone: Component: ports | Version: 1.8.1 Keywords: x86_64, libexpat | Port: wine-devel -----------------------------------+---------------------------------------- Comment(by jussi.eskelinen@…): Yep, I was able to install wine-devel without further problems. In case someone has a similar problem: I had to first run sudo port install portname and then run sudo port upgrade --enforce-variants portname +universal for each package. -- Ticket URL: <http://trac.macports.org/ticket/21865#comment:12> MacPorts <http://www.macports.org/> Ports system for Mac OS
#21865: wine-devel doesn't like x86_64 -----------------------------------+---------------------------------------- Reporter: Damien@… | Owner: ryandesign@… Type: defect | Status: assigned Priority: Normal | Milestone: Component: ports | Version: 1.8.1 Keywords: x86_64, libexpat | Port: wine-devel -----------------------------------+---------------------------------------- Comment(by arno+macports@…): Would it be a bad idea to make "+universal" a default variant? Or would this be better handled by a mechanism to automatically handle such cases by either informing the user that they must rebuild specific ports as universal, or automatically rebuilding the required ports as such? -- Ticket URL: <http://trac.macports.org/ticket/21865#comment:13> MacPorts <http://www.macports.org/> Ports system for Mac OS
#21865: wine-devel doesn't like x86_64 ------------------------------------+--------------------------------------- Reporter: Damien@… | Owner: ryandesign@… Type: defect | Status: closed Priority: Normal | Milestone: Component: ports | Version: 1.8.1 Resolution: fixed | Keywords: x86_64, libexpat Port: wine-devel | ------------------------------------+--------------------------------------- Changes (by ryandesign@…): * status: assigned => closed * resolution: => fixed Comment: Replying to [comment:12 jussi.eskelinen@…]:
In case someone has a similar problem: I had to first run sudo port install portname and then run sudo port upgrade --enforce-variants portname +universal for each package.
It should be sufficient to initially install the ports with the +universal variant; upgrading with --enforce-variants is only necessary if you already have the ports installed without +universal. Of course, by the time you see wine-devel's message, the dependencies will already have been installed with the wrong architectures. Unfortunately it is not possible for the wine-devel portfile itself to do anything until its dependencies have been installed. A better solution to this could probably be implemented in MacPorts base. Replying to [comment:13 arno+macports@…]:
Would it be a bad idea to make "+universal" a default variant?
That might be useful starting with Snow Leopard. I [http://lists.macosforge.org/pipermail/macports- dev/2009-September/009724.html suggested this] on the mailing list and have done so on my machine, but this has revealed just how many ports have trouble building x86_64/i386 universal, which is quite a lot. So that's not a good idea at this time.
Or would this be better handled by a mechanism to automatically handle such cases by either informing the user that they must rebuild specific ports as universal,
I added advice to rebuild dependencies universal to the archcheck portgroup in r59112.
or automatically rebuilding the required ports as such?
That and the above are handled by request #20728. -- Ticket URL: <http://trac.macports.org/ticket/21865#comment:14> MacPorts <http://www.macports.org/> Ports system for Mac OS
#21865: wine-devel doesn't like x86_64 ------------------------------------+--------------------------------------- Reporter: Damien@… | Owner: ryandesign@… Type: defect | Status: closed Priority: Normal | Milestone: Component: ports | Version: 1.8.1 Resolution: fixed | Keywords: x86_64, libexpat Port: wine-devel | ------------------------------------+--------------------------------------- Comment(by jussi.eskelinen@…): Replying to [comment:14 ryandesign@…]:
Replying to [comment:12 jussi.eskelinen@…]:
In case someone has a similar problem: I had to first run sudo port install portname and then run sudo port upgrade --enforce-variants portname +universal for each package.
It should be sufficient to initially install the ports with the +universal variant; upgrading with --enforce-variants is only necessary if you already have the ports installed without +universal. Of course, by the time you see wine-devel's message, the dependencies will already have been installed with the wrong architectures. Unfortunately it is not possible for the wine-devel portfile itself to do anything until its dependencies have been installed. A better solution to this could probably be implemented in MacPorts base.
When I tried to install with +universal variant first, I got an error message: {{{ pikku-delfiini:~ jussi$ sudo port install xorg-libxcursor +universal ---> Computing dependencies for xorg-libXcursor ---> Fetching xorg-libXcursor ---> Verifying checksum(s) for xorg-libXcursor ---> Extracting xorg-libXcursor ---> Configuring xorg-libXcursor ---> Building xorg-libXcursor Error: Target org.macports.build returned: shell command " cd "/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports .org_release_ports_x11_xorg-libXcursor/work/libXcursor-1.1.10" && /usr/bin/make -j2 all " returned error 2 Command output: "_XRenderCreateCursor", referenced from: _XcursorImageLoadCursor in cursor.o "_XCreatePixmap", referenced from: _XcursorImageLoadCursor in cursor.o _XcursorImageLoadCursor in cursor.o _XcursorImageLoadCursor in cursor.o "_XLoadFont", referenced from: __XcursorCreateFontCursor in cursor.o "_XRenderFreePicture", referenced from: _XcursorImageLoadCursor in cursor.o "_XCreateGC", referenced from: _XcursorImageLoadCursor in cursor.o _XcursorImageLoadCursor in cursor.o "_XFreePixmap", referenced from: _XcursorImageLoadCursor in cursor.o _XcursorImageLoadCursor in cursor.o _XcursorImageLoadCursor in cursor.o "_XFreeGC", referenced from: _XcursorImageLoadCursor in cursor.o _XcursorImageLoadCursor in cursor.o "__XLockMutex_fn", referenced from: __XLockMutex_fn$non_lazy_ptr in display.o "_XRenderQueryExtension", referenced from: __XcursorGetDisplayInfo in display.o ld: symbol(s) not found collect2: ld returned 1 exit status lipo: can't open input file: /var/tmp//ccpVo5qx.out (No such file or directory) make[2]: *** [libXcursor.la] Error 1 make[1]: *** [all-recursive] Error 1 make: *** [all] Error 2 Error: Status 1 encountered during processing. }}} Maybe port clean would have been enough to solve that, but I did as I described. -- Ticket URL: <http://trac.macports.org/ticket/21865#comment:15> MacPorts <http://www.macports.org/> Ports system for Mac OS
#21865: wine-devel doesn't like x86_64 ------------------------------------+--------------------------------------- Reporter: Damien@… | Owner: ryandesign@… Type: defect | Status: closed Priority: Normal | Milestone: Component: ports | Version: 1.8.1 Resolution: fixed | Keywords: x86_64, libexpat Port: wine-devel | ------------------------------------+--------------------------------------- Comment(by ryandesign@…): That indicates you tried to build xorg-libXcursor +universal but at least one of its dependencies (the one(s) that provide(s) the symbols _XCreatePixmap, _XLoadFont, etc.) was not universal. Installing with the debug flag (e.g. `sudo port -d install xorg-libXcursor +universal`) can give you more information. Only very few of our ports (at this point, 7 out of over 6200 ports) will explicitly alert you about the mismatched architectures, and it is not my intention to add this individually to all ports, because it's something MacPorts base should be able to figure out automatically for all ports. But that code has not yet been written and the number of people encountering the issue with wine (probably close to 100% of Snow Leopard users trying to install wine) and the number of users encountering it with other ports after upgrading to Snow Leopard and not knowing they needed to reinstall all ports (see [wiki:Migration Migration]) prompted me to implement an immediate if imperfect solution in form of the archcheck portgroup. -- Ticket URL: <http://trac.macports.org/ticket/21865#comment:16> MacPorts <http://www.macports.org/> Ports system for Mac OS
#21865: wine-devel doesn't like x86_64 ------------------------------------+--------------------------------------- Reporter: Damien@… | Owner: ryandesign@… Type: defect | Status: closed Priority: Normal | Milestone: Component: ports | Version: 1.8.1 Resolution: fixed | Keywords: x86_64, libexpat Port: wine-devel | ------------------------------------+--------------------------------------- Comment(by adam.fasoldt@…): Hello! I just bought my first mac about a month ago. I'm running on a 64 bit iMac and trying to get some of my favorite Windows apps to run on my machine. I am a web programmer and command line doesn't really come easily to me but I've been slogging through it. I've gotten to this point, myself. I had the same problem with xorg-libsm but found the dependency xorg-libice in a thread on this page. Sadly, I am stuck here on this xorg-libXcursor. Is there an easy way to list the dependencies so I can install those as well? I looked at the debug text for this and it seems to have found them all so I don't think it's that (see below) I apologize for my ignorance. As I said, I have made the move to the wonderful world of Mac, but I'm still cutting my teeth and am eager to learn more! Thanks, in advance, for your time. ---> Computing dependencies for xorg-libXcursor DEBUG: Searching for dependency: xorg-libXfixes DEBUG: Found Dependency: receipt exists for xorg-libXfixes DEBUG: Searching for dependency: xrender DEBUG: Found Dependency: receipt exists for xrender DEBUG: Searching for dependency: pkgconfig DEBUG: Found Dependency: receipt exists for pkgconfig DEBUG: Searching for dependency: xorg-fixesproto DEBUG: Found Dependency: receipt exists for xorg-fixesproto DEBUG: Searching for dependency: xorg-renderproto DEBUG: Found Dependency: receipt exists for xorg-renderproto DEBUG: Executing org.macports.main (xorg-libXcursor) DEBUG: Skipping completed org.macports.fetch (xorg-libXcursor) DEBUG: Skipping completed org.macports.checksum (xorg-libXcursor) DEBUG: setting option extract.cmd to /usr/bin/bzip2 DEBUG: Skipping completed org.macports.extract (xorg-libXcursor) DEBUG: Skipping completed org.macports.patch (xorg-libXcursor) DEBUG: Skipping completed org.macports.configure (xorg-libXcursor) -- Ticket URL: <http://trac.macports.org/ticket/21865#comment:17> MacPorts <http://www.macports.org/> Ports system for Mac OS
#21865: wine-devel doesn't like x86_64 ------------------------------------+--------------------------------------- Reporter: Damien@… | Owner: ryandesign@… Type: defect | Status: closed Priority: Normal | Milestone: Component: ports | Version: 1.8.1 Resolution: fixed | Keywords: x86_64, libexpat Port: wine-devel | ------------------------------------+--------------------------------------- Comment(by adam.fasoldt@…): Found it! $ sudo port upgrade --enforce-variants xorg-libXcursor +universal -- Ticket URL: <http://trac.macports.org/ticket/21865#comment:18> MacPorts <http://www.macports.org/> Ports system for Mac OS
#21865: wine-devel doesn't like x86_64 ------------------------------------+--------------------------------------- Reporter: Damien@… | Owner: ryandesign@… Type: defect | Status: closed Priority: Normal | Milestone: Component: ports | Version: 1.8.1 Resolution: fixed | Keywords: x86_64, libexpat Port: wine-devel | ------------------------------------+--------------------------------------- Comment(by ryandesign@…): I updated the archcheck portgroup in r61899 to suggest using `--enforce- variants` when telling the user to rebuild a port's dependency. -- Ticket URL: <http://trac.macports.org/ticket/21865#comment:19> MacPorts <http://www.macports.org/> Ports system for Mac OS
participants (1)
-
MacPorts