mac」カテゴリーアーカイブ

macportsのregistry.db

port rev-upgrade
--->  Scanning binaries for linking errors
Warning: Error parsing file /opt/local/bin/alter.mp_1459228313: Error opening or reading file
Warning: Error parsing file /opt/local/bin/asco.mp_1459228313: Error opening or reading file
Warning: Error parsing file /opt/local/bin/asco-test.mp_1459228313: Error opening or reading file
Warning: Error parsing file /opt/local/bin/log.mp_1459228313: Error opening or reading file
Warning: Error parsing file /opt/local/bin/monte.mp_1459228313: Error opening or reading file
Warning: Error parsing file /opt/local/bin/postp.mp_1459228313: Error opening or reading file
Warning: Error parsing file /opt/local/bin/rosen.mp_1459228313: Error opening or reading file
--->  No broken files found.                             

でWarningが出ていました。無視すれば使えていました。
portのコマンドで修正出来ないようなので直接データベースを操作して該当ファイル部分を削除しました。

registry.dbのバックアップをして、dbファイルを開きデータベースの構成を確認します。

cp /opt/local/var/macports/registry/registry.db .
cp registry.db registry.db.orig
sqlite3 registry.db
sqlite> .fullschema
CREATE TABLE metadata (key UNIQUE, value);
CREATE TABLE dependencies (id INTEGER, name TEXT, variants TEXT, FOREIGN KEY(id) REFERENCES ports(id));
CREATE TABLE portgroups (id INTEGER, name TEXT, version TEXT COLLATE VERSION, size INTEGER, sha256 TEXT, FOREIGN KEY(id) REFERENCES ports(id));
CREATE TABLE ports (id INTEGER PRIMARY KEY, name TEXT COLLATE NOCASE, portfile CLOB, location TEXT, epoch INTEGER, version TEXT COLLATE VERSION, revision INTEGER, variants TEXT, negated_variants TEXT, state TEXT, date DATETIME, installtype TEXT, archs TEXT, requested INT, os_platform TEXT, os_major INTEGER, UNIQUE(name, epoch, version, revision, variants));
CREATE TABLE files (id INTEGER, path TEXT, actual_path TEXT, active INTEGER, binary BOOL, FOREIGN KEY(id) REFERENCES ports(id));
CREATE INDEX dep_name ON dependencies (name);
CREATE INDEX portgroup_id ON portgroups(id);
CREATE INDEX portgroup_open ON portgroups(id, name, version, size, sha256);
CREATE INDEX dep_id ON dependencies(id);
CREATE INDEX port_name ON ports(name, epoch, version, revision, variants);
CREATE INDEX port_state ON ports(state);
CREATE INDEX file_port ON files(id);
CREATE INDEX file_path ON files(path);
CREATE INDEX file_actual ON files(actual_path);
/* No STAT tables available */

対象ファイルが有るか確認します。
WHEREの条件式で正規表現の仕方が判らなかったので対象対象ファイル名をそのまま指定しています。

sqlite> select * from files WHERE actual_path=='/opt/local/bin/asco.mp_1459228313' ;
1665|/opt/local/bin/asco|/opt/local/bin/asco.mp_1459228313|1|1

対象ファイルをすべて削除して、sqlite3を終了させてファイルを更新します。

sqlite> DELETE from files WHERE actual_path=='/opt/local/bin/asco.mp_1459228313' ;
省略
sqlite>.quit
sudo cp registry.db /opt/local/var/macports/registry/
sudo chown root:admin /opt/local/var/macports/registry/registry.db

port installed
port rev-upgrade
で動作を確認したところ、Warningは出なくなりました。
SQLは、ほとんど触った事が無かったのですがネットでコマンドを調べ目的は達成できました。

PPC Macでrtl-sdr

macportsからinstallして、

[~/src/macports]rtl_test
Found 1 device(s):
  0:  Generic, RTL2832U, SN: 77771111153705700
Using device 0: Generic RTL2832U
No supported tuner found	

FC0012 tunerが見つかりません。
gitのソースで試します。
エラーが出るので修正します。
src/rtl_test.c

        struct timespec ts;
#ifdef __unix__
        rv = clock_gettime(CLOCK_MONOTONIC, &ts);
        tg->tv_sec = ts.tv_sec;
        tg->tv_nsec = ts.tv_nsec;
#elif __APPLE__
        struct timeval tv;
        rv = gettimeofday(&tv, NULL);
        ts->tv_sec = tv.tv_sec;
        ts->tv_nsec = tv.tv_usec * 1000;
#endif
        return rv;

ts->をtg->に変更します。これで無事コンパイルできました。

追記 2018.03.25
macportsもupdateされて動くようになりました。
ただ上記部分のパッチが

diff --git a/src/rtl_test.c b/src/rtl_test.c
index 42d2c94..8009c6e 100644
--- a/src/rtl_test.c
+++ b/src/rtl_test.c
@@ -162,8 +162,8 @@ static int ppm_gettime(struct time_generic *tg)
 	struct timeval tv;
 
 	rv = gettimeofday(&tv, NULL);
-	ts->tv_sec = tv.tv_sec;
-	ts->tv_nsec = tv.tv_usec * 1000;
+	ts.tv_sec = tv.tv_sec;
+	ts.tv_nsec = tv.tv_usec * 1000;
 #endif
 	return rv;
 }

tsに代入しても直後にreturnしてどこにも使っていないし、
__unix__定義された場合の動作と異なっていますがいいのかな?

追記 2018.05.14
gitのソースが上記の修正されました。
やぱっりMacPortsのパッチは間違ってうたようです。

commit c403ef0bc1e3ac586495ad0338c56f47e2026b20
Author: Steve Markgraf 
Date:   Thu Apr 26 23:51:15 2018 +0200

    rtl_test: fix build on Mac OS
[rtl-sdr/rtl-sdr/build]/usr/local/bin/rtl_test
Found 1 device(s):
  0:  Generic, RTL2832U, SN: 77771111153705700
Using device 0: Generic RTL2832U
Found Fitipower FC0012 tuner
Supported gain values (5): -9.9 -4.0 7.1 17.9 19.2 
Sampling at 2048000 S/s.

チューナが認識されています。
git logで確認すると

commit 4520f001d85f01d051eaa42af7b18b6ef0837e14 
Author: Steve Markgraf 
Date:   Tue Feb 20 22:09:56 2018 +0100

    lib: fix FC0012 reset GPIO
    
    Since a typo in rtlsdr_set_gpio_output() was fixed,
    FC0012 tuners were not detected anymore, as the reset pin
    is actually 4, not 5.
    
    Thanks to David Basden et al for reporting the bug.

    Signed-off-by: Steve Markgraf 

で修正されたようです。
macportsは、
commit b04c2f9f035c5aede43d731e5d58e4725d2f8bb4
Author: Hoernchen
Date: Tue Sep 19 19:23:00 2017 +0200
です。

FM放送を受信してみます。

[rtl-sdr/rtl-sdr/build]/usr/local/bin/rtl_fm -f 77.8M -s 32k -M wbfm> 0.out
Found 1 device(s):
  0:  Generic, RTL2832U, SN: 77771111153705700
Using device 0: Generic RTL2832U
Found Fitipower FC0012 tuner
Tuner gain set to automatic.
Tuned to 78071000 Hz.
Oversampling input by: 6x.
Oversampling output by: 1x.
Buffer size: 8.03ms
Exact sample rate is: 1020000.026345 Hz
Sampling at 1020000 S/s.
Output at 170000 Hz.

出来上がったファイルをspwaveで再生出来ました。
-s 32kは、spawaveで対応しているサンプリング周波数
最初は-M wbfmを指定していなかったので、うまく再生出来ませんでした。
spwaveの読み込みは
フォーマット raw
ビット/サンプル 16
サンプリング周波数 32000
チャンネル数 1
で再生出来ました。
ハード的には使える事が判ったので、本格的なアプリをinstallしてみます。

Error: SDRplay cannot be installed for the configured build_arch ‘ppc’ because it only supports the arch(s) ‘x86_64’.
Error: gqrx cannot be installed for the configured build_arch ‘ppc’ because it only supports the arch(s) ‘i386 x86_64’.

どちらもPPCは、対象外のようです。

soxをinstallして直接再生してみます。

/usr/local/bin/rtl_fm -f 77.8M -r 32k -M wbfm -E deemp| play -t raw -r 32k --encoding signed-integer -b 16 -c 1 -
Found 1 device(s):
  0:  Generic, RTL2832U, SN: 77771111153705700
Using device 0: Generic RTL2832U
-: (raw)
 File Size: 0         
  Encoding: Signed PCM    
  Channels: 1 @ 16-bit   
Samplerate: 32000Hz      
Replaygain: off         
  Duration: unknown      
In:0.00% 00:00:00.00 [00:00:00.00] Out:0     [      |      ]        Clip:0    Fo

FM放送には、プリエンファシスがかかっているので-E deempを追加しました。

画像の比較

楽天の間違い探しのクイズが有ったので画像処理を試してみました。

問題のページから画像をコピーして
pngtopam false.png > false.pam
pngtopam true.png > true.pam
でnetpbmで扱うフォーマットに変更します。

pamarith -compare true.pam false.pam > compare.ppm
で画像間の演算をします。
最初は二つの画像の差分をとればいいと思い-subしましたが、
true.pam false.pam
false.pam true.pam
の2回して結果を加算となるので、-compareを使います。
-compareは、出力がpamでなくppmです。

ppmtogif compare.ppm > compare.gif
でプレビューで表示できるフォーマットにします。

open compare.gif
結果を表示して、間違い箇所を数えて終わりです。

他の方法として
pamarith -xor true.pam false.pam > xor.pam
pamtopng xor.pam > xor.png
open xor.png
一致部分が0(黒)になるので、色がつく部分が不一致になります。
この方が演算量が少ないと思います。

追記
画像サイズを変えて出題されました。
[~/tmp]pamfile *.pam
false.pam: PPM raw, 640 by 480 maxval 255
true.pam: PPM raw, 800 by 600 maxval 255

サイズが違うとpamarithが使えないので小さい方を拡大します。
[~/tmp]pnmscale 1.25 false.pam >false1.pam

[~/tmp]pamfile *.pam
false.pam: PPM raw, 640 by 480 maxval 255
false1.pam: PPM raw, 800 by 600 maxval 255
true.pam: PPM raw, 800 by 600 maxval 255

間違い箇所の参考程度にはなりました。

MacOS10.4でgit

MacPortsのgitを使っています。
アップデートしたらエラーが出るようになってしまいました。

[github.com/macports/macports-ports]git status
error: sha1 mismatch 8a1abdde9a46af2b26b4f301a72394764e06a4e3
fatal: bad object HEAD

cloneからやり直してみます。

cd /opt/local/var/macports/sources
sudo mkdir -p github.com/macports/macports-ports/
sudo chown -R $USER:admin github.com
git clone https://github.com/macports/macports-ports.git github.com/macports/macports-ports/
Cloning into 'github.com/macports/macports-ports'...
remote: Counting objects: 901062, done.
remote: Compressing objects: 100% (61/61), done.
remote: Total 901062 (delta 33), reused 73 (delta 23), pack-reused 900964
Receiving objects: 100% (901062/901062), 137.74 MiB | 296.00 KiB/s, done.
fatal: pack is corrupted (SHA1 mismatch)
fatal: index-pack failed

またエラーになります。
10.5上で確認すると問題ありません。git自体に問題があるようです。
2.13.2までは問題なく動いていましたが、2.13.3で発生しています。

結局コンパイラを指定してインストールでエラーは出なくなりました。
port install git configure.compiler=macports-gcc-6

PPC Macのjava

OpenJDK7ですが、awtを使うと

[~/src/Java/awt]java PrefTest
Exception in thread "main" java.awt.HeadlessException
	at java.awt.GraphicsEnvironment.checkHeadless(GraphicsEnvironment.java:202)
	at java.awt.Window.(Window.java:534)
	at java.awt.Frame.(Frame.java:420)
	at java.awt.Frame.(Frame.java:385)
	at PrefFrame.(PrefTest.java:6)
	at PrefTest.main(PrefTest.java:24)

でエラーになります。
検索してみると
>数少ない対策としてSystem Propertyをセットする方法がありますがうまくいくとは限りません。
がみつかりました。
System.setProperty (“java.awt.headless” , “false”);
を追加すれば良いようなので試してみます。

[~/src/Java/awt]java PrefTest
Exception in thread "main" java.lang.InternalError: Can't connect to X11 window server using ':0.0' as the value of the DISPLAY variable.
	at sun.awt.X11GraphicsEnvironment.initDisplay(Native Method)
	at sun.awt.X11GraphicsEnvironment.access$200(X11GraphicsEnvironment.java:65)
	at sun.awt.X11GraphicsEnvironment$1.run(X11GraphicsEnvironment.java:110)
	at java.security.AccessController.doPrivileged(Native Method)
	at sun.awt.X11GraphicsEnvironment.(X11GraphicsEnvironment.java:74)
	at java.lang.Class.forName0(Native Method)
	at java.lang.Class.forName(Class.java:186)
	at java.awt.GraphicsEnvironment.createGE(GraphicsEnvironment.java:102)
	at java.awt.GraphicsEnvironment.getLocalGraphicsEnvironment(GraphicsEnvironment.java:81)
	at java.awt.Window.initGC(Window.java:466)
	at java.awt.Window.init(Window.java:486)
	at java.awt.Window.(Window.java:535)
	at java.awt.Frame.(Frame.java:420)
	at java.awt.Frame.(Frame.java:385)
	at PrefFrame.(PrefTest.java:6)
	at PrefTest.main(PrefTest.java:25)

メッセージが変わりました。
X11を対象にしているようです。
X11のターミナルから起動させると無事動きました。
Appleが提供するjavaのようにどちらの環境でも動く物ではないようです。

AozoraEpub3のコンパイルを試してみます。
git cloneでソースを取得して、

cd src

javac -cp \
../lib/commons-cli-1.2.jar:\
../lib/commons-collections-3.2.1.jar:\
../lib/commons-compress-1.0.jar:\
../lib/commons-lang-2.4.jar:\
../lib/commons-logging-api-1.0.4.jar:\
../lib/jai_codec.jar:\
../lib/jai_core.jar:\
../lib/jsoup-1.7.1.jar:\
../lib/junrar-0.7.jar:\
../lib/velocity-1.7.jar:. AozoraEpub3.java

javac -cp \
../lib/commons-cli-1.2.jar:\
../lib/commons-collections-3.2.1.jar:\
../lib/commons-compress-1.0.jar:\
../lib/commons-lang-2.4.jar:\
../lib/commons-logging-api-1.0.4.jar:\
../lib/jai_codec.jar:\
../lib/jai_core.jar:\
../lib/jsoup-1.7.1.jar:\
../lib/junrar-0.7.jar:\
../lib/velocity-1.7.jar:. AozoraEpub3Applet.java

[Java/AozoraEpub3/src]jar cvfm ../AozoraEpub3.jar META-INF/MANIFEST.MF .
[~/src/Java/AozoraEpub3]java -cp AozoraEpub3.jar AozoraEpub3
usage: AozoraEpub3 [-options] input_files(txt,zip,cbz)
                   version : 1.1.0b46
[~/src/Java/AozoraEpub3]java -cp AozoraEpub3.jar AozoraEpub3Applet
Exception in thread "main" java.awt.HeadlessException
	at java.awt.GraphicsEnvironment.checkHeadless(GraphicsEnvironment.java:202)
	at java.awt.Window.(Window.java:534)
	at java.awt.Frame.(Frame.java:420)
	at javax.swing.JFrame.(JFrame.java:224)
	at AozoraEpub3Applet.main(AozoraEpub3Applet.java:4680)

無事コンパイル出来ました。
System.setPropertyを追加しましたが、Appletの方はダメなようです。
コンパイルしたAozoraEpub3.jarに置き換えて、narou.rbを試しましたが問題なくepubファイルが出来ました。

jarファイルに余分なファイルが含まれてしまうので、以下の手順に変更しました。

echo jar cvfm ../AozoraEpub3.jar META-INF/MANIFEST.MF \\>tmp.sh
find . -name \*.class | sed 's/\$/\\\$/' | sed 's/$/ \\/' >>tmp.sh
find . -name \*.png   | sed 's/\$/\\\$/' | sed 's/$/ \\/' >>tmp.sh
sh tmp.sh

PPC Macでnarou.rbを動かす

git clone https://github.com/whiteleaf7/narou/
でソースを取得します。

sudo port select ruby ruby23
でruby2.3が使われるように設定します。

不足しているモジュールをinstallします。
sudo gem2.3 install require_relative
sudo gem2.3 install require
sudo gem2.3 install open_uri_redirections
sudo gem2.3 install memoist
sudo gem2.3 install systemu
sudo gem2.3 install termcolorlight
これで起動出来るようになりました。
[~/src/Ruby/narou]bin/narou init
[~/src/Ruby/narou]bin/narou d n9669bk
で結合されたテキストファイルが作成できます。

epubで出力するには、AozoraEpub3が使われます。
/usr/bin/javaだと
AozoraEpub3でEPUBに変換しています………
Exception in thread “main” java.lang.UnsupportedClassVersionError: Bad version number in .class file
になるので、
[~/src/Ruby/narou]java -version
openjdk version “1.7.0-internal”
OpenJDK Runtime Environment (build 1.7.0-internal-jyeary_2012_02_16_07_18-b00)
OpenJDK Zero VM (build 21.0-b17, interpreted mode)
になるように設定します。
もう少し新しい物がありました。
[~/src/Ruby/narou]java -version
openjdk version “1.7.0-internal”
OpenJDK Runtime Environment (build 1.7.0-internal-truk_2012_03_14_11_04-b00)
OpenJDK Zero VM (build 22.0-b10, interpreted mode)

[~/src/Ruby/narou]bin/narou s device=kobo
[~/src/Ruby/narou]bin/narou c 0
ID:0 無職転生 - 異世界行ったら本気だす – の変換を開始
小説状態の調査結果を 調査ログ.txt に出力しました(エラー:0件、警告:43件、INFO:1件)
縦書用の変換が終了しました
AozoraEpub3でEPUBに変換しています
——–
変換開始 : /Users/isomura/src/Ruby/narou/小説データ/小説家になろう/n9669bk 無職転生 - 異世界行ったら本気だす -/[理不尽な孫の手] 無職転生 - 異世界行ったら本気だす -.txt
画像回転: 0001.png (744,1292)
画像回転: 0002.png (753,1290)
画像回転: 0003.png (757,1296)
java.io.IOException: This archives contains unclosed entries.
at org.apache.commons.compress.archivers.zip.ZipArchiveOutputStream.finish(ZipArch\
iveOutputStream.java:343)

画像回転は、windows(cygwin)だと実行されません。なぜ?
windows上でAozoraEpub3を起動して変換すると画像回転が実行されます。
画像回転: 0004.jpg (646,775)
で変換完了しています。0004.jpgでエラーになっているようです。
変換された結果をみても世界地図の部分で画像の回転の有無がありました。
回転させないと横長の画像なので小さく表示されます。
回転させると地図が大きく表示されるのでこちらも有りだと思います。
生成されるepubサイズもかなり違っていました。
0004.jpgに相当するファイルを回転したファイルに置き換えると無事処理が終了しました。

[~/src/Ruby/narou]bin/narou d n8725k
AozoraEpub3でEPUBに変換しています
[WARN] ルビが長すぎます (35998)
変換しました
[橙乃ままれ] ログ・ホライズン.kepub.epub を出力しました
EPUBファイルを出力しました
小説の保存フォルダを開きますか (y/n)?: n
こちらは無事出力されました。画像(jpeg 縦長)も含まれています。
画像を回転させなければ大丈夫なのかもしれません。

bin/narou web
を実行して不足しているモジュールをgemでインストールします。
sinatra/jsontoと表示されるのは、sinatra-jsonのインストルでOKです。
Safariで無事表示できました。

[~/src/Ruby/narou]sudo gem2.3 list
*** LOCAL GEMS ***
backports (3.8.0)
bigdecimal (default: 1.2.8)
did_you_mean (1.0.0)
erubis (2.7.0)
haml (5.0.1)
io-console (default: 0.4.5)
json (2.1.0, default: 1.8.3)
memoist (0.16.0)
minitest (5.8.5, 5.8.4)
multi_json (1.12.1)
mustermann (1.0.0)
open_uri_redirections (0.2.1)
psych (default: 2.1.0)
rack (2.0.3, 1.6.8)
rack-protection (2.0.0, 1.5.3)
rake (11.1.2, 10.4.2)
rdoc (4.2.2, default: 4.2.1)
require (0.2.7)
require_relative (1.0.3)
rubygems-update (2.6.3)
sass (3.4.25)
sinatra (2.0.0, 1.4.8)
sinatra-contrib (2.0.0)
sinatra-json (0.1.0)
sinatra-reloader (1.0)
systemu (2.6.5)
temple (0.8.0)
termcolorlight (1.1.1)
tilt (2.0.7)

追記
[~/src/Ruby/narou]gem2.3 search narou
*** REMOTE GEMS ***
narou (3.1.2)
runaround (1.0.0)

gemに有るので面倒な手順はいらなかったみたいです。

MacOS10.5でcgi

webページの掲示板が動かなかったので、webFTPでまとめてダウンロードしてローカンルのwebサーバで確認してみます。
MacOS10.5(PPC)でweb共有を使います。システム環境設定でon/offできます。
perlが/usr/local/bin/perlでなく/opt/local/bin/perlになるので該当分を修正します。
これだけだとアクセスカウンターも掲示板も動作しません。
httpdがcgiを処理できるように修正します。

sudo ng /private/etc/apache2/httpd.conf
    AddHandler cgi-script .cgi #を削除する

sudo ng /private/etc/apache2/users/isomura.conf 
以下を追加
<Directory "/Users/isomura/Sites/iso-ena/cgi-bin/">
    Options +ExecCGI -Indexes -MultiViews
</Directory>

ngは、エディターです。修正を反映させるために。web共有をシステム環境設定でoff/onします。
前の投稿で書いたjcode.plの修正で動くようになりました。

deep-learning-from-scratch

git clone https://github.com/oreilly-japan/deep-learning-from-scratch

でソースコードを入手します。

README.mdをみると

* Python 3.x
* NumPy
* Matplotlib

が必要なのでmac portsでinstallします。
py35-matplotlibをinstallして動作を確認します。
~/.matplotlib/matplotlibrcで
backend : MacOSX
を指定します。

[~/src/Python]python3.5 simple_plot.py --verbose-helpful
machdep: class is not implemented
$HOME=/Users/isomura
matplotlib data path /opt/local/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/site-packages/matplotlib/mpl-data

*****************************************************************
You have the following UNSUPPORTED LaTeX preamble customizations:

Please do not ask for support with these customizations active.
*****************************************************************

loaded rc file /Users/isomura/.matplotlib/matplotlibrc
matplotlib version 2.0.0
verbose.level helpful
interactive is False
platform is darwin
CACHEDIR=/Users/isomura/.matplotlib
font search path ['/opt/local/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/site-packages/matplotlib/mpl-data/fonts/ttf', '/opt/local/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/site-packages/matplotlib/mpl-data/fonts/afm', '/opt/local/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/site-packages/matplotlib/mpl-data/fonts/pdfcorefonts']
terminate called after throwing an instance of 'char*'
Abort

いろいろやりましたが、ダメでした。python3.6でも同じでした。
python2.7だとmatplotlibは動きました。

[~/src/Python]python2.7 simple_plot.py --verbose-helpful
machdep: class is not implemented
$HOME=/Users/isomura
matplotlib data path /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/matplotlib/mpl-data

*****************************************************************
You have the following UNSUPPORTED LaTeX preamble customizations:

Please do not ask for support with these customizations active.
*****************************************************************

loaded rc file /Users/isomura/.matplotlib/matplotlibrc
matplotlib version 2.0.0
verbose.level helpful
interactive is False
platform is darwin
CACHEDIR=/Users/isomura/.matplotlib
Using fontManager instance from /Users/isomura/.matplotlib/fontList.cache
backend MacOSX version unknown
findfont: Matching :family=sans-serif:style=normal:variant=normal:weight=400:stretch=normal:size=10.0 to DejaVu Sans (u'/opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/matplotlib/mpl-data/fonts/ttf/DejaVuSans.ttf') with score of 0.000000

170604

追記
machdep: class is not implemented
が表示されてしまいます。原因を調べてみます。

[lib/python2.7/site-packages]grep -r machdep *
バイナリファイル numpy/core/multiarray.so に一致しました
バイナリファイル objc/_objc.so に一致しました
[lib/python2.7/site-packages]strings numpy/core/multiarray.so|grep mac
sysctl -n machdep.cpu.features | grep -q AVX
[lib/python2.7/site-packages]strings objc/_objc.so|grep mac
macroman
[lib/python2.7/site-packages]sysctl -n machdep.cpu.features
machdep: class is not implemented

multiarray.soで使っているsysctlにmachdepが無いのが原因のようです。
AVX拡張命令セットが有るかを判定しているようです。
sysctl -a hw.machine
hw.machine: Power Macintosh
なので無視しても問題ないと思います。
とりあえず出ないようにしてみます。
sudo mv /usr/sbin/sysctl /usr/sbin/sysctl.orig
にして、シェルスクリプトにします。

cat /usr/sbin/sysctl
#! /bin/sh
if [ "$2" = "machdep.cpu.features" ] 
then
	exit
fi
/usr/sbin/sysctl.orig $*

これで、machdep: class is not implementedはでなくなりました。

準備ができたので動かしてみます。

[Python/deep-learning-from-scratch/ch01]python hungry.py 
I'm hungry!
[Python/deep-learning-from-scratch/ch01]python man.py 
Initilized!
Hello David!
Good-bye David!
[Python/deep-learning-from-scratch/ch01]python simple_graph.py 
[Python/deep-learning-from-scratch/ch01]python sin_graph.py 
[Python/deep-learning-from-scratch/ch01]python sin_cos_graph.py 
[Python/deep-learning-from-scratch/ch01]python img_show.py 
[Python/deep-learning-from-scratch/ch02]python and_gate.py 
(0, 0) -> 0
(1, 0) -> 0
(0, 1) -> 0
(1, 1) -> 1
[Python/deep-learning-from-scratch/ch02]python nand_gate.py 
(0, 0) -> 1
(1, 0) -> 1
(0, 1) -> 1
(1, 1) -> 0
[Python/deep-learning-from-scratch/ch02]python or_gate.py 
(0, 0) -> 0
(1, 0) -> 1
(0, 1) -> 1
(1, 1) -> 1
[Python/deep-learning-from-scratch/ch02]python xor_gate.py 
(0, 0) -> 0
(1, 0) -> 1
(0, 1) -> 1
(1, 1) -> 0
[Python/deep-learning-from-scratch/ch03]python step_function.py 
[Python/deep-learning-from-scratch/ch03]python sigmoid.py 
[Python/deep-learning-from-scratch/ch03]python sig_step_compare.py 
[Python/deep-learning-from-scratch/ch03]python relu.py 
[Python/deep-learning-from-scratch/ch03]python3.6 neuralnet_mnist.py
Accuracy:0.9352
[Python/deep-learning-from-scratch/ch03]python3.6 neuralnet_mnist_batch.py 
Accuracy:0.9352

[Python/deep-learning-from-scratch/ch03]python3.6 mnist_show.py
Traceback (most recent call last):
  File "mnist_show.py", line 6, in 
    from PIL import Image
ModuleNotFoundError: No module named 'PIL'

mac ports で’PIL’を探してinstallします。
py36-Pillow @4.1.1 (python, devel)
Python Imaging Library (fork)
sudo port install py36-Pillow

[Python/deep-learning-from-scratch/ch03]python3.6 mnist_show.py 
5
(784,)
(28, 28)
[Python/deep-learning-from-scratch/ch04]python gradient_1d.py 
0.199999999999

[Python/deep-learning-from-scratch/ch04]python gradient_2d.py
/opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/matplotlib/axes/_axes.py:545: UserWarning: No labelled objects found. Use label='...' kwarg on individual plots.
  warnings.warn("No labelled objects found. "
D:\cygwin\home\root\src\deep-learning-from-scratch\ch04>python gradient_2d.py
C:\Users\isomura\Anaconda3\lib\site-packages\matplotlib\axes\_axes.py:545: UserWarning: No labelled objects found. Use label='...' kwarg on individual plots.
  warnings.warn("No labelled objects found. "

windowsでも同じ結果になるようです。

[Python/deep-learning-from-scratch/ch04]python gradient_method.py 
[Python/deep-learning-from-scratch/ch04]python gradient_simplenet.py 
[[ 0.44710081  0.02188944 -0.46899026]
 [ 0.67065122  0.03283417 -0.70348539]]
[Python/deep-learning-from-scratch/ch04]python two_layer_net.py 
[Python/deep-learning-from-scratch/ch04]python train_neuralnet.py 
Traceback (most recent call last):
  File "train_neuralnet.py", line 6, in 
    from dataset.mnist import load_mnist
  File "../dataset/mnist.py", line 5, in 
    raise ImportError('You should use Python 3.x')
ImportError: You should use Python 3.x
[Python/deep-learning-from-scratch/ch04]python3.6 train_neuralnet.py
terminate called after throwing an instance of 'char*'

動かないのが出てしまいました。matplotlibを使ってPython3.xを要求するのがダメです。
当然windowsなら動きます。

D:\cygwin\home\root\src\deep-learning-from-scratch\ch04>python train_neuralnet.py
train acc, test acc | 0.112366666667, 0.1135
train acc, test acc | 0.798, 0.8032
train acc, test acc | 0.8754, 0.8783
train acc, test acc | 0.898433333333, 0.9023
train acc, test acc | 0.908833333333, 0.9112
train acc, test acc | 0.915266666667, 0.9173
train acc, test acc | 0.920666666667, 0.9223
train acc, test acc | 0.92485, 0.9247
train acc, test acc | 0.928333333333, 0.9299
train acc, test acc | 0.930466666667, 0.9322
train acc, test acc | 0.935066666667, 0.9361
train acc, test acc | 0.93715, 0.9383
train acc, test acc | 0.9396, 0.9394
train acc, test acc | 0.94245, 0.9419
train acc, test acc | 0.9443, 0.9442
train acc, test acc | 0.946433333333, 0.9452
train acc, test acc | 0.9483, 0.9468

[Python/deep-learning-from-scratch/ch05]python buy_apple.py 
('price:', 220)
('dApple:', 2.2)
('dApple_num:', 110)
('dTax:', 200)
[Python/deep-learning-from-scratch/ch05]python buy_apple_orange.py 
('price:', 715)
('dApple:', 2.2)
('dApple_num:', 110)
('dOrange:', 3.3000000000000003)
('dOrange_num:', 165)
('dTax:', 650)
[Python/deep-learning-from-scratch/ch05]python layer_naive.py
[Python/deep-learning-from-scratch/ch05]python two_layer_net.py 
[Python/deep-learning-from-scratch/ch05]python3.6 train_neuralnet.py
0.081 0.0792
0.903683333333 0.9073
0.923266666667 0.9267
0.935433333333 0.9352
0.944883333333 0.9433
0.951283333333 0.9492
0.956066666667 0.9547
0.959766666667 0.9556
0.964466666667 0.9591
0.9666 0.9618
0.968883333333 0.9644
0.971683333333 0.9663
0.971233333333 0.9644
0.973433333333 0.9665
0.975616666667 0.9682
0.97765 0.9699
0.978683333333 0.9697
[Python/deep-learning-from-scratch/ch05]python3.6 gradient_check.py
W1:2.68363647145e-13
b1:9.32718058604e-13
W2:9.38517990943e-13
b2:1.21014305521e-10

この後は、動かないのが多くなりました。

[Python/deep-learning-from-scratch/ch06]python3.6 batch_norm_gradient_check.py
W1:0.0
b1:0.0
gamma1:0.0
beta1:0.0
W2:0.0
b2:0.0
gamma2:0.0
beta2:0.0507355901743
W3:0.0
b3:1.20126128489e-10
[Python/deep-learning-from-scratch/ch06]python optimizer_compare_naive.py
[Python/deep-learning-from-scratch/ch06]python weight_init_activation_histogram.py
[Python/deep-learning-from-scratch/ch07]python3.6 gradient_check.py 
W1 7.96847710054e-13
b1 8.53629631716e-13
W2 4.16094078313e-13
b2 0.000294700165544
W3 5.09735778418e-13
b3 1.20570220474e-10
[Python/deep-learning-from-scratch/ch07]python3.6 simple_convnet.py
[Python/deep-learning-from-scratch/ch08]python3.6 awesome_net.py
[Python/deep-learning-from-scratch/ch08]python3.6 deep_convnet.py

python3.6がうまく動いていないようです。

[~/src/macports]python3.6
Python 3.6.1 (default, Jun 25 2017, 10:31:32) 
[GCC 5.4.0] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> 7/5
Python(94954) malloc: *** error for object 0x866e8: Non-aligned pointer being freed
*** set a breakpoint in malloc_error_break to debug
1.4
>>> Python(94954) malloc: *** error for object 0x866e0: Non-aligned pointer being freed (2)
*** set a breakpoint in malloc_error_break to debug

検索してみると、readlineに関係しているようです。

[~/src/macports]sudo port deactivate py36-readline @6.2.4.1_1
Password:
--->  Deactivating py36-readline @6.2.4.1_1
--->  Cleaning py36-readline
[~/src/macports]python3.6
Python 3.6.1 (default, Jun 25 2017, 10:31:32) 
[GCC 5.4.0] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> 7/5
1.4
>>> 

readline extensionは、py36-readlineの他にpy36-gnureadlineが有ったので試してみます。

[Python/deep-learning-from-scratch/ch01]port installed py36-gnureadline py36-readline python36
The following ports are currently installed:
  py36-gnureadline @6.3.3_1 (active)
  py36-readline @6.2.4.1_1
  python36 @3.6.1_1+readline (active)

py36-gnureadlineだと大丈夫なようです。
でもまだmatplotlibを使うとエラーになってしまいます。

追記
matplotlib動くようになりました。

[~/src/Python]python3.6 simple_plot.py --verbose-helpful
$HOME=/Users/isomura
matplotlib data path /opt/local/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/matplotlib/mpl-data
loaded rc file /Users/isomura/.matplotlib/matplotlibrc
matplotlib version 2.1.1
verbose.level helpful
interactive is False
platform is darwin
CACHEDIR=/Users/isomura/.matplotlib
Using fontManager instance from /Users/isomura/.matplotlib/fontList.json
backend MacOSX version unknown
findfont: Matching :family=sans-serif:style=normal:variant=normal:weight=normal:stretch=normal:size=10.0 to DejaVu Sans ('/opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/matplotlib/mpl-data/fonts/ttf/DejaVuSans.ttf') with score of 0.050000

クローズをクリックすると

terminate called after throwing an instance of 'std::runtime_error'
  what():  Couldn't close file
Abort

が表示されます。python2.7では問題ありません。
エラーメッセージを検索するとロケール関係の問題のようです。
setenv LANG ja_JP.UTF-8

ソースの1行目には
# coding: UTF-8
になっています。
setenv LANG C
で実行しても同じ結果になります。
locale -a
すると
ja_JP.UTF-8
は有ります。

MacPorts 2.4.0

MacPortsがアップデートされて2.4.0になったのでインストールしてみました。
10.5は問題なくインストールできましたが
10.4ではmakeでエラーになります。2.3.5まではOKでした。
spawn.hをincludeしているのですが、10.4ではありません。
10.5では、/usr/include/spawn.hにあります。

10.4では、libc++が作成出来なくてアップデートできない物が出てきていたのでそろそろ諦める時かもしれません。

追記 2018. 4.26
MacPorts-2.4.3は無事インストールできました。
sudo port -v syncでエラーが出ていましたが
Ports failed: 0
で終了しました。

macportsがgitに

svn log https://svn.macports.org/repository/macports/trunk/dports/math/octave
とすると
————————————————————————
r153773 | mps@macports.org | 2016-10-11 06:40:54 +0900 (2016/10/11 (火)) | 2 lines
で最近の更新が反映されていません。
調べてみるとsvnからgitに変更されたようです。
ここ
を参考にgitを使うようにしました。

[~/src/macports]cd /opt/local/var/macports/sources/github.com/macports/macports-ports/math/octave
[macports-ports/math/octave]ls
./		../		Portfile	files/
[macports-ports/math/octave]git log Portfile
commit a099fb31427d00275534827896d84c934fe0af10
Author: Marcus Calhoun-Lopez 
Date:   Tue Dec 27 21:48:52 2016 -0700

    octave: make distributable

commit f9ab7cac0c41427968293f1fc1fadbafe3c294b0
Author: Marcus Calhoun-Lopez 
Date:   Tue Dec 20 13:50:46 2016 -0700

    octave: use older libstdc++ ABI on older system
    
    See https://trac.macports.org/ticket/53044

個別のlogや特定のバージョンの取り出しなどgitの使い方を調べないとだめなようです。

追記
特定のバージョンの取り出しは、

[macports/macports-ports/lang]git checkout aa5b79dc64405f39bc8267e398a7200db479363a sbcl/Portfile 

git checkoutに続きcommit IDを指定すればできました。
commit IDは、git logで表示されます。

sudo port -v sync
--->  Updating the ports tree
Synchronizing local ports tree from file:///opt/local/var/macports/sources/github.com/macports/macports-ports/
/opt/local/var/macports/sources/github.com/macports/macports-ports /Users/isomura/src/macports
error: cannot pull with rebase: You have unstaged changes.
error: please commit or stash them.

と変更したままだとエラーになります。

[github.com/macports/macports-ports]git status
On branch master
Your branch is up-to-date with 'origin/master'.
Changes not staged for commit:
  (use "git add ..." to update what will be committed)
  (use "git checkout -- ..." to discard changes in working directory)
	modified:   gnome/gtk3/files/patch-gdk_quartz_gdkcursor-quartz-10_6_compat.diff
	modified:   lang/sbcl/Portfile
It took 10.08 seconds to enumerate untracked files. 'status -uno'
may speed it up, but you have to be careful not to forget to add
new files yourself (see 'git help status').
no changes added to commit (use "git add" and/or "git commit -a")
[github.com/macports/macports-ports]git checkout lang/sbcl/Portfile
[github.com/macports/macports-ports]git checkout gnome/gtk3/files/patch-gdk_quartz_gdkcursor-quartz-10_6_compat.diff

変更ファイルを戻します。