FreeBSD - メンテナンス・トラブルシュート - pkg・ports アップデート関連 - cmake automake - cmake-3.11.2 → 3.11.3

 
1. 概要
2. 試行錯誤1
3. 試行錯誤2
4. python を更新して解決

1. 概要

 発生は 2018年6月6日。

> pkg version -vl "<"
cmake-3.11.2                       <   needs updating (index has 3.11.3)
 てことで

> portupgrade -Rr cmake
[Reading data from pkg(8) ... - 391 packages found - done]
[Gathering depends for devel/cmake ............................................................................................. done]
[Exclude up-to-date packages ................................. done]
--->  Upgrading 'cmake-3.11.2' to 'cmake-3.11.3' (devel/cmake)
--->  Building '/usr/ports/devel/cmake'
===>  Cleaning for cmake-3.11.3

	・・・略・・・

/usr/local/lib/libcurl.so: undefined reference to `SSL_get_peer_cert_chain@OPENSSL_1_1_0'
/usr/local/lib/libcurl.so: undefined reference to `SSL_get_shutdown@OPENSSL_1_1_0'
/usr/local/lib/libcurl.so: undefined reference to `X509_get_serialNumber@OPENSSL_1_1_0'
/usr/local/lib/libcurl.so: undefined reference to `X509_NAME_get_index_by_NID@OPENSSL_1_1_0'
/usr/local/lib/libcurl.so: undefined reference to `X509_get0_notBefore@OPENSSL_1_1_0'
/usr/local/lib/libcurl.so: undefined reference to `PEM_write_bio_X509@OPENSSL_1_1_0'
//usr/local/lib/heimdal/libhcrypto.so.4: undefined reference to `EVP_CIPHER_CTX_free@OPENSSL_1_1_0'
/usr/local/lib/libcurl.so: undefined reference to `SHA256_Init@OPENSSL_1_1_0'

	・・・略・・・

/usr/local/lib/libcurl.so: undefined reference to `SSL_CTX_use_certificate_file@OPENSSL_1_1_0'
/usr/local/lib/libcurl.so: undefined reference to `OPENSSL_sk_num@OPENSSL_1_1_0'
/usr/local/lib/libcurl.so: undefined reference to `BIO_free@OPENSSL_1_1_0'
c++: error: linker command failed with exit code 1 (use -v to see invocation)
--- bin/ccmake ---
*** [bin/ccmake] Error code 1

make[4]: stopped in /usr/ports/devel/cmake/work/cmake-3.11.3
1 error

	・・・略・・・

make[2]: stopped in /usr/ports/devel/cmake/work/cmake-3.11.3
===> Compilation failed unexpectedly.
Try to set MAKE_JOBS_UNSAFE=yes and rebuild before reporting the failure to
the maintainer.
*** Error code 1

Stop.
make[1]: stopped in /usr/ports/devel/cmake
*** Error code 1

Stop.
make: stopped in /usr/ports/devel/cmake
** Command failed [exit code 1]: /usr/bin/script -qa /tmp/portupgrade20180606-83537-11qc8v1 env UPGRADE_TOOL=portupgrade UPGRADE_PORT=cmake-3.11.2 UPGRADE_PORT_VER=3.11.2 make
** Fix the problem and try again.
** Listing the failed packages (-:ignored / *:skipped / !:failed)
	! devel/cmake (cmake-3.11.2)	(linker error)
 う~む。これもどうも openssl と openssl-devel の問題だなぁ。

openssl-1.0.2o_2,1             SSL and crypto library
openssl-devel-1.1.0h_1         SSL and crypto library (1.1.x)

2. 試行錯誤1

 しょうがないので、また openssl をアンインストール、openssl-devel をインストールして、cmake を portupgrade できるようにしてみます。

プロンプト略
cd /usr/ports/security/openssl
make deinstall
cd /usr/ports/security/openssl-devel
make
make install

3. 試行錯誤2

 前項を行って

> portupgrade -Rr cmake
 すると途中で


・・・略・・・

--- Utilities/Sphinx/doc_format_man ---
*** [Utilities/Sphinx/doc_format_man] Error code 1

make[4]: stopped in /usr/ports/devel/cmake/work/cmake-3.11.3
1 error

make[4]: stopped in /usr/ports/devel/cmake/work/cmake-3.11.3
--- Utilities/Sphinx/CMakeFiles/documentation.dir/all ---
*** [Utilities/Sphinx/CMakeFiles/documentation.dir/all] Error code 2

make[3]: stopped in /usr/ports/devel/cmake/work/cmake-3.11.3
A failure has been detected in another branch of the parallel make

make[4]: stopped in /usr/ports/devel/cmake/work/cmake-3.11.3
--- Source/kwsys/CMakeFiles/cmsys_c.dir/all ---
*** [Source/kwsys/CMakeFiles/cmsys_c.dir/all] Error code 2

make[3]: stopped in /usr/ports/devel/cmake/work/cmake-3.11.3
A failure has been detected in another branch of the parallel make

make[4]: stopped in /usr/ports/devel/cmake/work/cmake-3.11.3
--- Source/kwsys/CMakeFiles/cmsys.dir/all ---
*** [Source/kwsys/CMakeFiles/cmsys.dir/all] Error code 2

make[3]: stopped in /usr/ports/devel/cmake/work/cmake-3.11.3
3 errors

make[3]: stopped in /usr/ports/devel/cmake/work/cmake-3.11.3
*** [all] Error code 2

make[2]: stopped in /usr/ports/devel/cmake/work/cmake-3.11.3
1 error

make[2]: stopped in /usr/ports/devel/cmake/work/cmake-3.11.3
===> Compilation failed unexpectedly.
Try to set MAKE_JOBS_UNSAFE=yes and rebuild before reporting the failure to
the maintainer.
*** Error code 1

Stop.
make[1]: stopped in /usr/ports/devel/cmake
*** Error code 1

Stop.
make: stopped in /usr/ports/devel/cmake
** Command failed [exit code 1]: /usr/bin/script -qa /tmp/portupgrade20180611-66669-1b2arqx env UPGRADE_TOOL=portupgrade UPGRADE_PORT=cmake-3.11.2 UPGRADE_PORT_VER=3.11.2 make
** Fix the problem and try again.
** Listing the failed packages (-:ignored / *:skipped / !:failed)
        ! devel/cmake (cmake-3.11.2)    (unknown build error)
 仕方ないので言われるままに

プロンプト略
cd /usr/ports/devel/cmake
make MAKE_JOBS_UNSAFE=yes

4. python を更新して解決

 ここで、cmake が python の sphinx に依存していることが判明・・・。  python のモジュールをインストールするのですが。  ここで python27 を python36 に入れ替えました。  その手順は「メンテナンス・トラブルシュート - python」の方をご参照ください。  python のモジュール入替後

プロンプト略
cd /usr/ports/devel/cmake
make MAKE_JOBS_UNSAFE=yes
make deinstall
make install
 後はいつものように様子見ですかな。