RJVB / macstrop

RJVB's repository of alternative macports, with ports missing from or overriding those in the standard collection, including a set of KF5 ports.
20 stars 9 forks source link

libcxx extract issue #20

Closed gitdevmod closed 5 years ago

gitdevmod commented 5 years ago

Trying to install kf5-libkcddb, it fails during extract of libcxx: :debug:extract extract phase started at Sat Nov 10 16:56:05 CET 2018 :notice:extract ---> Extracting libcxx :debug:extract setting option extract.cmd to /opt/local/bin/xz :debug:extract Executing org.macports.extract (libcxx) :debug:extract Executing proc-post-org.macports.extract-extract-0 :error:extract Failed to extract libcxx: error renaming "/opt/local/var/macports/build/_opt_local_macstrop_lang_libcxx/libcxx/work/libcxxabi-6.0.0.src": no such file or directory :debug:extract Error code: NONE :debug:extract Backtrace: error renaming "/opt/local/var/macports/build/_opt_local_macstrop_lang_libcxx/libcxx/work/libcxxabi-6.0.0.src": no such file or directory :debug:extract while executing :debug:extract "$post $targetname" :error:extract See /opt/local/var/macports/logs/_opt_local_macstrop_lang_libcxx/libcxx/main.log for details.

RJVB commented 5 years ago

Hmm, that looks like an error in port:libcxx that I overlooked. Curiously I cannot reproduce it. I take it you already have cmake installed?

Can you do a port clean libcxx and try again? If it fails anew, I'd be interested in the full main.log, as well as the output from

> ls -l `port work libcxx`
gitdevmod commented 5 years ago

After a port clean libcxx, it still fails

$ port installed|grep -i cmake cmake @3.12.3_0 (active) kde-extra-cmake-modules @5.50.0_0 (active) $ sudo port clean libcxx ---> Cleaning libcxx savane:~ tom$ sudo port install libcxx ---> Computing dependencies for libcxx ---> Fetching distfiles for libcxx ---> Verifying checksums for libcxx ---> Extracting libcxx Error: Failed to extract libcxx: error renaming "/opt/local/var/macports/build/_opt_local_macstrop_lang_libcxx/libcxx/work/libcxxabi-6.0.0.src": no such file or directory Error: See /opt/local/var/macports/logs/_opt_local_macstrop_lang_libcxx/libcxx/main.log for details. Error: Follow https://guide.macports.org/#project.tickets to report a bug. Error: Processing of port libcxx failed $ port work libcxx /opt/local/var/macports/build/_opt_local_macstrop_lang_libcxx/libcxx/work $ ls -l port work libcxx $

main.log

gitdevmod commented 5 years ago

In case, it was a problem with my local git repository, I cloned your repository same issue. It seems it does not fech distfiles ?

$ sudo port distfiles libcxx ---> Distfiles for libcxx $

$ sudo port fetch libcxx $

RJVB commented 5 years ago

$ sudo port distfiles libcxx

Ahh, thanks, I understand where this comes from now, will look into it later today.

RJVB commented 5 years ago

Should be fixed now with this change:

diff --git a/lang/libcxx/Portfile b/lang/libcxx/Portfile index 975656ed7f4ea7118101d8c7e03963de00a7f2ee..28fd2942b49754c5bff70f9a6c15059986dc8c12 100644 --- a/lang/libcxx/Portfile +++ b/lang/libcxx/Portfile @@ -59,11 +59,6 @@ if {[tbool use_cmake]} { port:libxml2 \ port:zlib

gitdevmod commented 5 years ago

@RJVB patch fails to apply because it references 6.0.0 instead of 6.0.1. Don't know if it ok to just change version in patch?

RJVB commented 5 years ago

Yes you can, or you just do a pull of my repo...

gitdevmod commented 5 years ago

I already did :-)

gitdevmod commented 5 years ago

@RJVB libcxx from you repo still does not build, even with replacing 6.0.0 by 6.0.1 it fails

port work directory is empty ? $ ls -la /opt/local/var/macports/build/_opt_local_macstrop_lang_libcxx/libcxx/work/llvm-6.0.1.src/ total 0 drwxr-xr-x 2 macports admin 68 20 nov 17:50 . drwxr-xr-x 6 macports admin 204 20 nov 17:50 ..

$ sudo port patch libcxx ---> Computing dependencies for libcxx ---> Applying patches to libcxx Error: Failed to patch libcxx: command execution failed Error: See /opt/local/var/macports/logs/_opt_local_macstrop_lang_libcxx/libcxx/main.log for details. Error: Follow https://guide.macports.org/#project.tickets to report a bug. Error: Processing of port libcxx failed $ less /opt/local/var/macports/logs/_opt_local_macstrop_lang_libcxx/libcxx/main.log

:info:patch | and newer Availability.h :info:patch | :info:patch |Signed-off-by: Jeremy Huddleston Sequoia jeremyhu@apple.com :info:patch |--- :info:patch | include/iterator | 4 ++-- :info:patch | include/locale | 4 ++-- :info:patch | 2 files changed, 4 insertions(+), 4 deletions(-) :info:patch | :info:patch |diff --git libcxx-6.0.1.src/projects/libcxx/include/iterator libcxx-6.0.1.src/projects/libcxx/include/iterator :info:patch |index d163ab1b0..a44890712 100644 :info:patch |--- libcxx-6.0.1.src/projects/libcxx/include/iterator :info:patch |+++ libcxx-6.0.1.src/projects/libcxx/include/iterator :info:patch -------------------------- :info:patch File to patch: :info:patch Skip this patch? [y] :info:patch Skipping patch. :info:patch 1 out of 1 hunk ignored :info:patch can't find file to patch at input line 32 :info:patch Perhaps you used the wrong -p or --strip option? :info:patch The text leading up to this was: :info:patch -------------------------- :info:patch |diff --git libcxx-6.0.1.src/projects/libcxx/include/locale libcxx-6.0.1.src/projects/libcxx/include/locale :info:patch |index d30d950c7..cd2869561 100644 :info:patch |--- libcxx-6.0.1.src/projects/libcxx/include/locale :info:patch |+++ libcxx-6.0.1.src/projects/libcxx/include/locale :info:patch -------------------------- :info:patch File to patch: :info:patch Skip this patch? [y] :info:patch Skipping patch. :info:patch 1 out of 1 hunk ignored :info:patch Command failed: cd "/opt/local/var/macports/build/_opt_local_macstrop_lang_libcxx/libcxx/work/llvm-6.0.1.src" && /usr/bin/patch -Np1 < '/opt/local/macstrop/lang/libcxx/files/3001-Fix-local-and-iterator-when-building-with-Lion-and-n.patch' :info:patch Exit code: 1 :error:patch Failed to patch libcxx: command execution failed :debug:patch Error code: CHILDSTATUS 3824 1 :debug:patch Backtrace: command execution failed :debug:patch while executing :debug:patch "system {}$notty {}$nice $fullcmdstring" :debug:patch invoked from within :debug:patch "command_exec patch "" "< '$patch'"" :debug:patch (procedure "portpatch::patch_main" line 41) :debug:patch invoked from within :debug:patch "$procedure $targetname" :error:patch See /opt/local/var/macports/logs/_opt_local_macstrop_lang_libcxx/libcxx/main.log for details. `

RJVB commented 5 years ago

I take it this is before installing cmake, and without a cmake binary in the path?

Can you please attach the entire main.log (if it was made after a port clean)?

RJVB commented 5 years ago

Belay my last request, I found the error. A stupid oversight as usual, I should have rechecked the cmake-less build once more after upgrading the port to 6.0.1 ...

This time I actually tested the patch phase with port:cmake deactivated so as to have a representative set-up for someone doing a bootstrap build.

gitdevmod commented 5 years ago

@RJVB I did a new git clone just to be sure but it still does not extract corectly.

$ ls -la /opt/local/var/macports/build/_opt_local_macstrop_lang_libcxx/libcxx/work/llvm-6.0.1.src/ total 0 drwxr-xr-x 2 macports admin 68 23 nov 15:44 . drwxr-xr-x 6 macports admin 204 23 nov 15:44 ..

main.log

RJVB commented 5 years ago

$ ls -la /opt/local/var/macports/build/_opt_local_macstrop_lang_libcxx/libcxx/work/llvm-6.0.1.src/ total 0 drwxr-xr-x 2 macports admin 68 23 nov 15:44 . drwxr-xr-x 6 macports admin 204 23 nov 15:44 ..

One oversight at a time (and a lot of patience...) we may finally get there...

gitdevmod commented 5 years ago

$ sudo port install libcxx ---> Computing dependencies for libcxx ---> Fetching distfiles for libcxx ---> Verifying checksums for libcxx ---> Extracting libcxx ---> Configuring libcxx ---> Building libcxx Error: Failed to build libcxx: error renaming "/opt/local/var/macports/build/_opt_local_macstrop_lang_libcxx/libcxx/work/build/lib/libc++abi.6.0.1.dylib": no such file or directory Error: See /opt/local/var/macports/logs/_opt_local_macstrop_lang_libcxx/libcxx/main.log for details. Error: Follow https://guide.macports.org/#project.tickets to report a bug. Error: Processing of port libcxx failed savane:macstrop tom$ ls /opt/local/var/macports/build/_opt_local_macstrop_lang_libcxx/libcxx/work build savane:macstrop tom$ less /opt/local/var/macports/logs/_opt_local_macstrop_lang_libcxx/libcxx/main.log

main.log

RJVB commented 5 years ago

Yep, you found another oversight.

I've done some more reorganisation, and don't see any other errors, let's hope I'm right this time.

gitdevmod commented 5 years ago

It's ok now :-)

$ port installed libcxx The following ports are currently installed: libcxx @6.0.1_0+universal (active)

RJVB commented 5 years ago

Whew!

Out of curiosity, what are you using +universal for?

gitdevmod commented 5 years ago

I do not know, it's default a installation

RJVB commented 5 years ago

Ok, never mind, indeed it's the default for this port :-/