Sunday, February 18, 2018, 00:43 - OS / Misc
Posted by ELIN
Buffaloのゴミ(WZR-HP-AG300H)にDD-WRTを入れるだけ……
なのに1日かかりました

1. DD-WRT最新版(34929)はopkgもipkgもない
したがって、SoftEther VPNの.ipkをインストールできない、困った困った
しかし実は.ipkは単なる.tar.gzでしかないのでバラして/jffs以下へ自分で置けばよい
wget -O - http://.../softethervpn_4.19-9605_ar71xx.ipk|tar zxO ./data.tar.gz|tar zxvf - -C /jffs

2. -sh: vpnserver: not found
原因不明
「パス通ってないだけじゃねえの?」とか思うかもしれないが、そういう初歩的な問題ではない
厄介な問題だったが、結論はバイナリの作りの問題のよう
例えば古いDD-WRT(23xxxとか……)はOpenWRTでいうところの12.09用にmakeしたものが正常に動作するが、14.07以降のバイナリでnot foundと言われる
逆に新しいDDWRT(30xxx以降とか……)は17.01でなければダメのよう
このDD-WRTがいくつのときどうとかの閾値はまったくわからんし、実験したくもない

なので17.01でSoftEther VPNをmakeし直す

ちなみに28598/30826/34311/34760を試したが、これらは17.01のバイナリが必要な模様
但しbrcm47xxのWZR-D1100Hについては30826で17.01のバイナリではないもので実際に動いているので、ちょっと試験のエビデンスが怪しい

3. こんぱいるえらー
/root/sdb1/LEDE/build_dir/host/cmake-3.10.1/Source/cmGlobalNinjaGenerator.cxx: In member function 'void cmGlobalNinjaGenerator::AppendTargetDependsClosure(const cmGeneratorTarget*, cmNinjaOuts&, bool)':
/root/sdb1/LEDE/build_dir/host/cmake-3.10.1/Source/cmGlobalNinjaGenerator.cxx:1077:40: error: 'class std::map<const cmGeneratorTarget*, std::set<std::basic_string<char> > >' has no member named 'emplace_hint'

はい、これはgccが古いからですね
筆者の環境はOpenWRT用にSoftEther VPNの.ipkを作っていたときから進んでいません
数年前にメインリポジトリにマージされてからほったらかしてたのでgccは4.7.2
これを通すには4.8.xが必要になる(らしい)

コンパイル方法はhttps://github.com/el1n/OpenWRT-package-softetherを参考に
feed.confのpackages(1行目のやつ)にはSoftEther VPNが含まれているのでコメントアウト
2 comments ( 3172 views )

| 1 | 2 | 3 | 4 | Next> Last>>