問題
Pickit3がEl Capitanで認識しない
環境
Mac OSX El Capitan (10.11.5), MPLABX3.35, Pickit3
原因
El Capitanのセキュリティ強化、System Integrity Protection (SIP)によって、MPLABXインストール時にUSBシリアル通信関連のJavaライブラリがインストールされないため。
/usr/lib/java/libSerialAccessLink.dylib
/usr/lib/libSEGGERAccessLink.dylib
などがインストールされない。
(SIPで/usrディレクトリ下のアクセスが制限されている)
解決
System Integrity Protection (SIP)のちにMPLABXを再インストールする。
1.Command + Rを押しながら再起動(リカバリモードで再起動)
2.ターミナルを開く
3.csrutil disableコマンドを実行
4.再起動
5.既にMPLABXをインストールしている場合は、アンインストール
6.MPLABXをインストール
7.再度リカバリモードで再起動し、csrutil enableを有効に戻す
(ライブラリがインストールされたため、戻して良い)
以上
参考:
http://www.microchip.com/forums/m891731.aspx
http://blog.goo.ne.jp/jh3kxm/e/3db7e3404b3322d4f417f9807d3128f2
http://rcmdnk.github.io/blog/2015/10/10/computer-mac/
Notes about Assembler, C/C++/Objective-C/C#, Java, Python, PHP, Perl, Javascript, ActionScript, LINGO etc.
And developed application will be also announced.
2016年9月26日月曜日
OSX IPv6の切り方
環境:OSX El Capitan (10.11.6)
IPv6の設定を無効にする方法
1.ネットワーク設定名の確認
networksetup -listnetworkserviceorder
2.ネットワーク設定を指定してIPv6をOFFにする
sudo networksetup -setv6off ネットワーク設定名
2016年4月26日火曜日
Adobe AIR for Desktop (Mac) で解像度がRetinaに対応していない問題
問題
Adobe Flash (Animate)のAIR for Desktopで、ランタイム埋め込みで書き出した際に、画質がRetinaディスプレイに対応していない問題
環境
Mac Book Pro Retina Mid 2015, OSX Sierra
Adobe Animate CC 2015
原因
.appファイル内のinfo.plistでHigh Resolution Capableの設定がNOになっている
解決
1.書き出した.appファイルを右クリック>コンテンツを表示 を選択
2.info.plistを開き、High Resolution CapableをYESに変更
参考:
http://stackoverflow.com/questions/18226943/adobe-air-flex-on-retina-display-on-desktop-not-ios
Adobe Flash (Animate)のAIR for Desktopで、ランタイム埋め込みで書き出した際に、画質がRetinaディスプレイに対応していない問題
環境
Mac Book Pro Retina Mid 2015, OSX Sierra
Adobe Animate CC 2015
原因
.appファイル内のinfo.plistでHigh Resolution Capableの設定がNOになっている
解決
1.書き出した.appファイルを右クリック>コンテンツを表示 を選択
2.info.plistを開き、High Resolution CapableをYESに変更
参考:
http://stackoverflow.com/questions/18226943/adobe-air-flex-on-retina-display-on-desktop-not-ios
2016年4月18日月曜日
Raspberry PI GPIOピンで入力設定にする場合の注意点
Raspberry PIのGPIOピンで入力設定にする場合の注意点
環境:Raspberry PI 2, raspbian jessie
Raspberry PI 2のGPIOピンのレイアウトは以下
https://www.raspberrypi.org/documentation/usage/gpio/
・ピン番号はSDカード挿入口に一番近いピンを1、対角線上の反対側が40
・GPIO番号(ピン番号とは違う)は上記サイトを参照
・GPIOの電源投入時のプルダウン/プルアップ状態はピンによって違う
(参考:http://d.hatena.ne.jp/hnw/20150607)
・接続方法を間違えると、ショートしRaspberry PIがこわれる。
(参考:https://tool-lab.com/make/raspberrypi-startup-22/)
例として、GPIO3にスイッチを接続する場合の安全と思われる接続方法は、
GPIO3 -> 330Ω -> SWITCH -> GND
などが考えられる。
解説:
GPIO3は電源投入時、入力モード+プルアップ(1.8kΩ)となる。SWITCHがオフの場合、GPIO3にかかる電圧はプルアップ接続されている3.3Vがかかり、HIGHとなる。SWITCHがオンの場合、GPIO3にかかる電圧は分圧により、約0.5V(= (330Ω / (1800Ω + 330Ω)) * 3.3V) がかかり、0.8V以下となるため、Lowとなる。また、GPIO3が設定ミスで出力モードで電圧が出力された場合、10mA(=3.3V/330Ω)が流れるが、最大定格(16mA)以内のため、安全と考えられる。
環境:Raspberry PI 2, raspbian jessie
Raspberry PI 2のGPIOピンのレイアウトは以下
https://www.raspberrypi.org/documentation/usage/gpio/
・ピン番号はSDカード挿入口に一番近いピンを1、対角線上の反対側が40
・GPIO番号(ピン番号とは違う)は上記サイトを参照
・GPIOの電源投入時のプルダウン/プルアップ状態はピンによって違う
(参考:http://d.hatena.ne.jp/hnw/20150607)
・接続方法を間違えると、ショートしRaspberry PIがこわれる。
(参考:https://tool-lab.com/make/raspberrypi-startup-22/)
例として、GPIO3にスイッチを接続する場合の安全と思われる接続方法は、
GPIO3 -> 330Ω -> SWITCH -> GND
などが考えられる。
解説:
GPIO3は電源投入時、入力モード+プルアップ(1.8kΩ)となる。SWITCHがオフの場合、GPIO3にかかる電圧はプルアップ接続されている3.3Vがかかり、HIGHとなる。SWITCHがオンの場合、GPIO3にかかる電圧は分圧により、約0.5V(= (330Ω / (1800Ω + 330Ω)) * 3.3V) がかかり、0.8V以下となるため、Lowとなる。また、GPIO3が設定ミスで出力モードで電圧が出力された場合、10mA(=3.3V/330Ω)が流れるが、最大定格(16mA)以内のため、安全と考えられる。
2016年4月11日月曜日
Raspberry PI, GNUStepのプライベートフレームワーク作成/使用方法メモ
Raspberry PIでプライベートフレームワークを作成/使用する方法のメモ
フレームワークの作成は手順通りだが、プライベートフレームワークとして使用する際にはリンカオプションなどいくつかコツがいる。
環境:Raspberry PI2, GNUStep, ProjectCenter
以下、HelloWorld.frameworkを作成し、プライベートフレームワークとして使用する例
<GNUStep統合開発環境のProjectCenterを準備する>
1.ProjectCenterをインストール
sudo apt-get install gnustep-devel
<HelloWorld.frameworkの作成>
1.ProjectCenterを起動
Menu > Programming > ProjectCenter
2.新規プロジェクトでFrameworkを作成する
PC > Project > New..を選択
Project Types > Frameworkを選択
フレームワークの名称を付けてOK(ここではHelloWorldとする。)
3.HelloWorldを実装する
Classes > HelloWorld.mに好きなコードを書く
ここでは以下のようにする
#import "HelloWorld.h"
@implementation HelloWorld
- (void)helloWorld
{
NSLog(@"HelloWorld: HelloWorld!!");
}
@end
4.HelloWorld.frameworkをビルドする
Project Builder > Build でビルド
プロジェクトフォルダ内にHelloWorld.frameworkが作成されていればOK。
<HelloWorld.frameworkの使用>
1.ProjectCenterを起動
Menu > Programming > ProjectCenter
2.新規プロジェクトでApplicationを作成する
PC > Project > New..を選択
Project Types > Applicationを選択
アプリの名称を付けてOK(ここではHelloWorldDemoとする。)
3.HelloWorldDemoを実装する
Classes > AppController.mでHelloWorld.hをインポートし、好きなコードを書く
ここでは以下のようにする
#import "AppController.h"
#import "HelloWorld.h"
@implementation AppController
- (void) applicationDidFinishLaunching: (NSNotification *)aNotif
{
HelloWorld *helloWorld = [[HelloWorld alloc] init];
[helloWorld helloWorld];
NSLog(@"HelloWorldDemo: %@", [NSBundle bundleForClass:[MLHelloWorld class]]);
}
@end
4.プロジェクトにHelloWorldフレームワークを追加する
Projectパネル内のLibrariesを選択した状態で、Project > Add Files..を選択
先ほどビルドしたHelloWorld.frameworkの中にあるlibHelloWorld.soを選択
(HelloWorld.frameworkではなく.soを選択しなければならない)
Librariesの一覧が、
gnustep-base
gnustep-gui
HelloWorld
となっていればOK。
※この時、GNUmakefile.preamble内に、リンカオプションとして
ADDITIONAL_GUI_LIBS += -lHelloWorld
が自動的に追加される。
5.プロジェクトのその他のリソースとしてHelloWorldフレームワークを追加する
Projectパネル内のOther Resourcesを選択した状態で、Project > Add Files..を選択
先ほどビルドしたHelloWorld.frameworkを選択
※この時、HelloWorldDemoプロジェクトフォルダ内にあるResourcesフォルダにHelloWorld.frameworkが自動的にコピーされる
6.ヘッダファイルのインクルードパスを追加する。
Project Inspector > Header Directory Search Orderを選択
./Resources/HelloWorld.frameworks/Headers と入力
※この時、GNUmakefile.preamble内に、リンカオプションとして
ADDITIONAL_INCLUDE_DIRS += -I./Resources/HelloWorld.framework/Headers
が自動的に追加される。
※これはビルド時にヘッダファイルを検索するフォルダの指定である
7.実行時のフレームワーク検索のためのリンカオプションを追加する
Project Inspector > Linker Flagsの欄に以下を追加する
-Wl,-R'$$ORIGIN/Resources/HelloWorld.framework/Versions/0.1'
※-Wl-R'path' は、実行ファイルに共有ライブラリの検索パスを追加するオプション
※$ORIGINは、ビルド後の実行ファイルの絶対パスを意味する。
※$$ORIGINの最初の$はエスケープ文字で、2つめの$を文字として扱う
※パスはシングルクォーテーションで囲わなければならない
※HelloWorld.framework内にあるシンボルリンクでは動作しなかったので、Versions/バージョン番号フォルダまで指定する必要がある
※5の操作で、ビルド後、HelloWorld.framework一式は、HelloWorldDemo.app > Resourcesフォルダ内にコピーされる。そのため、-Wl,-Rのパスは上記のようになる。
8.HelloWorldDemoをビルドする
Project Builder > Build でビルド
プロジェクトフォルダ内にHelloWorldDemo.appが作成されていればOK。
9.HelloWorldDemoを起動して確認する
起動してHelloWorld!!が表示されればOK
※NSLog(@"HelloWorldDemo: %@", [NSBundle bundleForClass:[MLHelloWorld class]]);の結果の末尾が、"HelloWorldDemo.app/Resources/HelloWorld.framework"となっていれば、プライベートフレームワークとして機能している。
ところで、ProjectCenterは設定に従って、ファイルの作成やコピー、makeファイルの自動生成を主に行う。特に以下のmakeファイルが設定によって頻繁に更新されるので、直接操作する場合は注意が必要。直接操作後にProjectCenterを開くと、もとの状態に戻る可能性がある。
GNUmakefile
GNUmakefile.preamble
GNUmakefile.postamble
参考:
http://industriousone.com/topic/linking-linux
http://wagavulin.hatenablog.com/entry/20091026/1256577635
フレームワークの作成は手順通りだが、プライベートフレームワークとして使用する際にはリンカオプションなどいくつかコツがいる。
環境:Raspberry PI2, GNUStep, ProjectCenter
以下、HelloWorld.frameworkを作成し、プライベートフレームワークとして使用する例
<GNUStep統合開発環境のProjectCenterを準備する>
1.ProjectCenterをインストール
sudo apt-get install gnustep-devel
<HelloWorld.frameworkの作成>
1.ProjectCenterを起動
Menu > Programming > ProjectCenter
2.新規プロジェクトでFrameworkを作成する
PC > Project > New..を選択
Project Types > Frameworkを選択
フレームワークの名称を付けてOK(ここではHelloWorldとする。)
3.HelloWorldを実装する
Classes > HelloWorld.mに好きなコードを書く
ここでは以下のようにする
#import "HelloWorld.h"
@implementation HelloWorld
- (void)helloWorld
{
NSLog(@"HelloWorld: HelloWorld!!");
}
@end
4.HelloWorld.frameworkをビルドする
Project Builder > Build でビルド
プロジェクトフォルダ内にHelloWorld.frameworkが作成されていればOK。
<HelloWorld.frameworkの使用>
1.ProjectCenterを起動
Menu > Programming > ProjectCenter
2.新規プロジェクトでApplicationを作成する
PC > Project > New..を選択
Project Types > Applicationを選択
アプリの名称を付けてOK(ここではHelloWorldDemoとする。)
3.HelloWorldDemoを実装する
Classes > AppController.mでHelloWorld.hをインポートし、好きなコードを書く
ここでは以下のようにする
#import "AppController.h"
#import "HelloWorld.h"
@implementation AppController
- (void) applicationDidFinishLaunching: (NSNotification *)aNotif
{
HelloWorld *helloWorld = [[HelloWorld alloc] init];
[helloWorld helloWorld];
NSLog(@"HelloWorldDemo: %@", [NSBundle bundleForClass:[MLHelloWorld class]]);
}
@end
4.プロジェクトにHelloWorldフレームワークを追加する
Projectパネル内のLibrariesを選択した状態で、Project > Add Files..を選択
先ほどビルドしたHelloWorld.frameworkの中にあるlibHelloWorld.soを選択
(HelloWorld.frameworkではなく.soを選択しなければならない)
Librariesの一覧が、
gnustep-base
gnustep-gui
HelloWorld
となっていればOK。
※この時、GNUmakefile.preamble内に、リンカオプションとして
ADDITIONAL_GUI_LIBS += -lHelloWorld
が自動的に追加される。
5.プロジェクトのその他のリソースとしてHelloWorldフレームワークを追加する
Projectパネル内のOther Resourcesを選択した状態で、Project > Add Files..を選択
先ほどビルドしたHelloWorld.frameworkを選択
※この時、HelloWorldDemoプロジェクトフォルダ内にあるResourcesフォルダにHelloWorld.frameworkが自動的にコピーされる
6.ヘッダファイルのインクルードパスを追加する。
Project Inspector > Header Directory Search Orderを選択
./Resources/HelloWorld.frameworks/Headers と入力
※この時、GNUmakefile.preamble内に、リンカオプションとして
ADDITIONAL_INCLUDE_DIRS += -I./Resources/HelloWorld.framework/Headers
が自動的に追加される。
※これはビルド時にヘッダファイルを検索するフォルダの指定である
7.実行時のフレームワーク検索のためのリンカオプションを追加する
Project Inspector > Linker Flagsの欄に以下を追加する
-Wl,-R'$$ORIGIN/Resources/HelloWorld.framework/Versions/0.1'
※-Wl-R'path' は、実行ファイルに共有ライブラリの検索パスを追加するオプション
※$ORIGINは、ビルド後の実行ファイルの絶対パスを意味する。
※$$ORIGINの最初の$はエスケープ文字で、2つめの$を文字として扱う
※パスはシングルクォーテーションで囲わなければならない
※HelloWorld.framework内にあるシンボルリンクでは動作しなかったので、Versions/バージョン番号フォルダまで指定する必要がある
※5の操作で、ビルド後、HelloWorld.framework一式は、HelloWorldDemo.app > Resourcesフォルダ内にコピーされる。そのため、-Wl,-Rのパスは上記のようになる。
8.HelloWorldDemoをビルドする
Project Builder > Build でビルド
プロジェクトフォルダ内にHelloWorldDemo.appが作成されていればOK。
9.HelloWorldDemoを起動して確認する
起動してHelloWorld!!が表示されればOK
※NSLog(@"HelloWorldDemo: %@", [NSBundle bundleForClass:[MLHelloWorld class]]);の結果の末尾が、"HelloWorldDemo.app/Resources/HelloWorld.framework"となっていれば、プライベートフレームワークとして機能している。
ところで、ProjectCenterは設定に従って、ファイルの作成やコピー、makeファイルの自動生成を主に行う。特に以下のmakeファイルが設定によって頻繁に更新されるので、直接操作する場合は注意が必要。直接操作後にProjectCenterを開くと、もとの状態に戻る可能性がある。
GNUmakefile
GNUmakefile.preamble
GNUmakefile.postamble
参考:
http://industriousone.com/topic/linking-linux
http://wagavulin.hatenablog.com/entry/20091026/1256577635
2016年4月3日日曜日
Raspberry PI wifi設定(DHCP自動割振)、WEP/WPA/複数の3種
Rapsberry PIでwifiの設定(DHCP自動割振)を行う。
環境:Raspberry PI2 B, Raspbian Jessie, Planex GW-USNano2
<WEPの場合>
1./etc/network/interfacesを開く
sudo vi /etc/network/interfaces
2.wlan0の設定を以下のように変更する(ESSID, WEPKEYは実際のものに読み替える)
iface wlan0 inet dhcp
wireless-essid ESSID
wireless-key s:WEPKEY
wireless-mode managed
3.wlan0を一旦停止する
sudo ifdown wlan0
4.wlan0を再起動
sudo ifup wlan0
以上で、DHCPでIPが割り振られれば設定完了
<WPAの場合>
1./etc/network/interfacesを開く
sudo vi /etc/network/interfaces
2.wlan0の設定を以下のように変更する
iface wlan0 inet dhcp
wpa-conf /etc/wpa_supplicant/wpa_supplicant.conf
3.パスフレーズをwpa_supplicant.confに設定する
sudo wpa_passphrase ESSID PASSWORD >> /etc/wpa_supplicant/wpa_supplicant.conf
4.wpa_supplicant.confを開く
sudo vi /etc/wpa_supplicant/wpa_supplicant.conf
5.以下のように修正(xxxxは3の作業で任意のものがついかされる)
network={
ssid="xxxx"
psk=xxxxxxxxxxxxxxxxxxxxxxxxxxxxx
key_mgmt=WPA-PSK
proto=RSN
pairwise=CCMP
group=CCMP
priority=2
# ステルスなら以下を追加
scan_ssid=1
}
6.wlan0を一旦停止する
sudo ifdown wlan0
7.wlan0を再起動
sudo ifup wlan0
以上で、DHCPでIPが割り振られれば設定完了
<複数のWIFIの設定>
wlan0を任意の論理名に変更して、切り替えることができる
上述のWEPとWPAの設定を任意で切り替える例を以下に示す
1./etc/network/interfaces内で、wlan0としていた箇所を、任意の論理名で両方設定する。
以下は、WEPの論理名をwepconfig, WPAの論理名をwpaconfigとした場合。
以下は、WEPの論理名をwepconfig, WPAの論理名をwpaconfigとした場合。
iface wepconfig inet dhcp
wireless-essid ESSID
wireless-key s:PASSWORD
wireless-mode managed
iface wpaconfig inet dhcp
wpa-conf /etc/wpa_supplicant/wpa_supplicant.conf
2.ifdownでwlan0を停止
sudo ifdown wlan0
3.ifupでwlan0を、論理名を設定して起動する
WEPを使う場合
sudo ifup wlan0=wepconfig
WPAを使う場合
sudo ifup wlan0=wpaconfig
以上で、DHCPでIPが割り振られれば設定完了
※検出できているESSIDのリスト表示
sudo iwlist wlan0 scan | grep ESSID
※/etc/network/interfacesの設定例
auto lo
iface lo inet loopback
iface eth0 inet manual
# wireless wepconfig settings #
iface wepconfig inet dhcp
wireless-essid ESSID
wireless-key s: WEPKEY
wireless-mode managed
# wireless wpaconfig settings #
iface wpaconfig inet dhcp
wpa-conf /etc/wpa_supplicant/wpa_supplicant.conf
iface default inet dhcp
allow-hotplug wlan1
iface wlan1 inet manual
wpa-conf /etc/wpa_supplicant/wpa_supplicant.conf
※検出できているESSIDのリスト表示
sudo iwlist wlan0 scan | grep ESSID
※/etc/network/interfacesの設定例
auto lo
iface lo inet loopback
iface eth0 inet manual
# wireless wepconfig settings #
iface wepconfig inet dhcp
wireless-essid ESSID
wireless-key s: WEPKEY
wireless-mode managed
# wireless wpaconfig settings #
iface wpaconfig inet dhcp
wpa-conf /etc/wpa_supplicant/wpa_supplicant.conf
iface default inet dhcp
allow-hotplug wlan1
iface wlan1 inet manual
wpa-conf /etc/wpa_supplicant/wpa_supplicant.conf
参考:
2016年3月28日月曜日
2016年3月27日日曜日
Raspberry PI, clang リンカオプションメモ
Raspberry PI上でclangを使ってビルドする際のリンカオプションに関するメモ
確認環境:Raspberry PI2 B, Raspbian Jessie, clang3.5.0-10, LLVM 3.5.0
問題:math.hが正常に読み込めない
解決:手動でリンクオプション-lmを設定
例:clang -o HelloWorld HelloWorld.m -lm
参考:http://d.hatena.ne.jp/mickey24/20081008/1223463875
確認環境:Raspberry PI2 B, Raspbian Jessie, clang3.5.0-10, LLVM 3.5.0
問題:math.hが正常に読み込めない
解決:手動でリンクオプション-lmを設定
例:clang -o HelloWorld HelloWorld.m -lm
参考:http://d.hatena.ne.jp/mickey24/20081008/1223463875
2016年3月26日土曜日
Raspberry PI 無線LAN (WEP/DHCP接続) 設定
Raspberry PI 無線LAN (WEP/DHCP接続) 設定
環境:
MacBookPro2015, OS10.10
Raspberry PI2 B, Raspbean Jessie
PLANEX 11n/g/b 150Mbps GW-USNANO2A (FFP)(Raspberry PI対応機器)
1.ineterfacesコンフィグを開き、wlan0(無線ネットワーク)に以下のルールで設定
wireless-essid 無線ルータのSSID
wireless-key s: WEPキー
wireless-mode managed
例)
sudo vi /etc/network/interfaces
-- interfacesコンフィグ--
auto lo
iface lo inet loopback
iface eth0 inet manual
# wireless settings
allow-hotplug wlan0
iface wlan0 inet dhcp
wireless-essid xxxxxxxxxx
wireless-key s: yyyyyyyyyy
wireless-mode managed
iface default inet dhcp
allow-hotplug wlan1
iface wlan1 inet manual
wpa-conf /etc/wpa_supplicant/wpa_supplicant.conf
2.ネットワークを再起動
sudo ifdown wlan0 && sudo ifup wlan0
(再起動し、bound to xxx.xxx.xxx.xxxとDHCPが割り当てられたらOK)
以上
参考:
http://daisukekmr.hatenablog.com/entry/2015/02/11/193000
http://d.hatena.ne.jp/pasela/20121224/raspi_wlan
環境:
MacBookPro2015, OS10.10
Raspberry PI2 B, Raspbean Jessie
PLANEX 11n/g/b 150Mbps GW-USNANO2A (FFP)(Raspberry PI対応機器)
1.ineterfacesコンフィグを開き、wlan0(無線ネットワーク)に以下のルールで設定
wireless-essid 無線ルータのSSID
wireless-key s: WEPキー
wireless-mode managed
例)
sudo vi /etc/network/interfaces
-- interfacesコンフィグ--
auto lo
iface lo inet loopback
iface eth0 inet manual
# wireless settings
allow-hotplug wlan0
iface wlan0 inet dhcp
wireless-essid xxxxxxxxxx
wireless-key s: yyyyyyyyyy
wireless-mode managed
iface default inet dhcp
allow-hotplug wlan1
iface wlan1 inet manual
wpa-conf /etc/wpa_supplicant/wpa_supplicant.conf
2.ネットワークを再起動
sudo ifdown wlan0 && sudo ifup wlan0
(再起動し、bound to xxx.xxx.xxx.xxxとDHCPが割り当てられたらOK)
以上
参考:
http://daisukekmr.hatenablog.com/entry/2015/02/11/193000
http://d.hatena.ne.jp/pasela/20121224/raspi_wlan
2016年3月25日金曜日
Raspberry PI Sambaによるファイル共有
Raspberry PIへSambaをインストールし、Macとファイル共有する。
環境:Mac Book Pro 2015, OS10.10 / Raspberry PI2 B, Raspbian Jessie
1.Sambaをインストール
apt-get install samba
2.Sambaを設定ファイルを開く
sudo vi /etc/samba/smb.conf
3.ファイルの最後に設定を追加
(以下、ログイン名piで共有する場合の例)
[pi]
force user = pi
path = /home/pi
guest ok = no
read only = no
writable = yes
public = yes
directory mode = 0707
create mode = 0606
4.Sambaのログインユーザ/パスワードを設定
sudo smbpasswd -a pi
(パスワードを入力)
5.Sambaの再起動
sudo samba restart
6.Macからアクセスする
Finder>メニューバー>サーバへ移動
smb://xxx.xxx.xxx.xxx
で、ログイン名+パスワードでアクセスする
(ホスト名を設定している場合は、 smb://hostname.localでもOK)
以上
参考:https://tool-lab.com/make/raspberrypi-startup-14/
環境:Mac Book Pro 2015, OS10.10 / Raspberry PI2 B, Raspbian Jessie
1.Sambaをインストール
apt-get install samba
2.Sambaを設定ファイルを開く
sudo vi /etc/samba/smb.conf
3.ファイルの最後に設定を追加
(以下、ログイン名piで共有する場合の例)
[pi]
force user = pi
path = /home/pi
guest ok = no
read only = no
writable = yes
public = yes
directory mode = 0707
create mode = 0606
4.Sambaのログインユーザ/パスワードを設定
sudo smbpasswd -a pi
(パスワードを入力)
5.Sambaの再起動
sudo samba restart
6.Macからアクセスする
Finder>メニューバー>サーバへ移動
smb://xxx.xxx.xxx.xxx
で、ログイン名+パスワードでアクセスする
(ホスト名を設定している場合は、 smb://hostname.localでもOK)
以上
参考:https://tool-lab.com/make/raspberrypi-startup-14/
Raspberry PIでObjective-C開発環境を整える
Raspberry PI2のRaspbian上でObjective-Cの開発環境を整える。
環境:Raspberry PI2 B+, Raspbian Jessie
Raspbian上でObjective-Cをビルドするには、gccまたはclang(+LLVM)とGNUStepのインストールが必要
※GNUStep(GNUStepBaseはFoundationフレームワークを含むライブラリ群。実用的に必須。
※gccはRaspbianにはデフォルトでインストールされている。
※clangは使いたい場合のみインストール。
以下、clangとGNUStepのインストールから、サンプルのコンパイルまでを示す。
1.clang (+LLVM)のインストール(任意)
sudo apt-get install clang
2.GNUStepのインストール
sudo apt-get install gnustep
3.サンプルのビルド
以下、HelloWorld.mのあるディレクトリでビルドする場合の例。
clangの場合:
clang -o HelloWorld HelloWorld.m -l objc -l gnustep-base -I /usr/include/GNUstep/ -fconstant-string-class=NSConstantString
gccの場合:
gcc -o HelloWorld HelloWorld.m -l objc -l gnustep-base -I /usr/include/GNUstep/ -fconstant-string-class=NSConstantString
※コンパイラオプションの解説
-o [バイナリ名 ソースファイル名...] :
ビルド(コンパイル+リンク)後のバイナリファイル名と、 ビルドするソースファイル名(またはオブジェクトファイル名)を指定する。上記では、HelloWorldというバイナリファイル名、HelloWorld.mというソースファイル名を指定している。
-l [ライブラリサーチパス] :
コンパイル時に使用するリンクを指定する
上記ではobjcとgnustep-baseを指定。gnustep-baseはFoundationフレームワークを含むライブラリ。また、AppKitフレームワークを使う場合は、gnustep-guiを追加で指定する必要がある。
-I [ヘッダサーチパス] :
ヘッダファイルを含むディレクトリパスを指定する
上記ではFoundationフレームワークのヘッダファイルを含む/usr/include/GNUstep/を指定している。他のサイトではGNUstepのディレクトリが他になっている場合があるが、自分で試した場合は上記のパスにインストールされていた。
-fconstant-string-class=クラス名:
gcc/clangで使用する文字列定数クラスを変更するオプション。gccのデフォルトではNXConstantStringクラスが使用され、これを使用する場合はソースコードでobjc/NXConstStr.hファイルをインクルードする必要がある。Foundationフレームワークでは文字列定数クラスはNSConstantStringクラスであるため、変更が必要。
(https://gcc.gnu.org/onlinedocs/gcc/Constant-string-objects.html)
以上
環境:Raspberry PI2 B+, Raspbian Jessie
Raspbian上でObjective-Cをビルドするには、gccまたはclang(+LLVM)とGNUStepのインストールが必要
※GNUStep(GNUStepBaseはFoundationフレームワークを含むライブラリ群。実用的に必須。
※gccはRaspbianにはデフォルトでインストールされている。
※clangは使いたい場合のみインストール。
以下、clangとGNUStepのインストールから、サンプルのコンパイルまでを示す。
1.clang (+LLVM)のインストール(任意)
sudo apt-get install clang
2.GNUStepのインストール
sudo apt-get install gnustep
3.サンプルのビルド
以下、HelloWorld.mのあるディレクトリでビルドする場合の例。
clangの場合:
clang -o HelloWorld HelloWorld.m -l objc -l gnustep-base -I /usr/include/GNUstep/ -fconstant-string-class=NSConstantString
gccの場合:
gcc -o HelloWorld HelloWorld.m -l objc -l gnustep-base -I /usr/include/GNUstep/ -fconstant-string-class=NSConstantString
※コンパイラオプションの解説
-o [バイナリ名 ソースファイル名...] :
ビルド(コンパイル+リンク)後のバイナリファイル名と、 ビルドするソースファイル名(またはオブジェクトファイル名)を指定する。上記では、HelloWorldというバイナリファイル名、HelloWorld.mというソースファイル名を指定している。
-l [ライブラリサーチパス] :
コンパイル時に使用するリンクを指定する
上記ではobjcとgnustep-baseを指定。gnustep-baseはFoundationフレームワークを含むライブラリ。また、AppKitフレームワークを使う場合は、gnustep-guiを追加で指定する必要がある。
-I [ヘッダサーチパス] :
ヘッダファイルを含むディレクトリパスを指定する
上記ではFoundationフレームワークのヘッダファイルを含む/usr/include/GNUstep/を指定している。他のサイトではGNUstepのディレクトリが他になっている場合があるが、自分で試した場合は上記のパスにインストールされていた。
-fconstant-string-class=クラス名:
gcc/clangで使用する文字列定数クラスを変更するオプション。gccのデフォルトではNXConstantStringクラスが使用され、これを使用する場合はソースコードでobjc/NXConstStr.hファイルをインクルードする必要がある。Foundationフレームワークでは文字列定数クラスはNSConstantStringクラスであるため、変更が必要。
(https://gcc.gnu.org/onlinedocs/gcc/Constant-string-objects.html)
以上
Raspberry PIにRaspbean Jessieをインストール
MacからRaspbianをSDカードへインストールする方法
環境:MacBookPro2015, OS10.10 / Raspberry PI2 B+, Raspbian Jessie
1.RaspberryPI公式サイトからRaspbianディスクイメージをダウンロードしておく
https://www.raspberrypi.org/downloads/raspbian/
2.SDカードをMacへ挿入
3.Terminalを開く
4.diskutilコマンドでSDカードのディスクIDを確認する。以下例。
diskutil list
環境:MacBookPro2015, OS10.10 / Raspberry PI2 B+, Raspbian Jessie
1.RaspberryPI公式サイトからRaspbianディスクイメージをダウンロードしておく
https://www.raspberrypi.org/downloads/raspbian/
2.SDカードをMacへ挿入
3.Terminalを開く
4.diskutilコマンドでSDカードのディスクIDを確認する。以下例。
diskutil list
5.diskutilコマンドでSDカードをアンマウントする。
以下SDカードがdisk4の場合の例。
diskutil unmountDisk /dev/disk4
6.diskutilコマンドでSDカードを初期化し、Raspbianをインストールする。
以下SDカードがdisk4の場合の例。
以下SDカードがdisk4の場合の例。
diskutil unmountDisk /dev/disk4
6.diskutilコマンドでSDカードを初期化し、Raspbianをインストールする。
以下SDカードがdisk4の場合の例。
sudo dd bs=1m if=2016-03-18-raspbian-jessie.img of=/dev/rdisk4
(5分〜10分かかる。CTL+Tで進捗確認が可能)
以上
参考:
https://www.raspberrypi.org/documentation/installation/installing-images/mac.md
以上
参考:
https://www.raspberrypi.org/documentation/installation/installing-images/mac.md
2016年3月16日水曜日
as3 MouseEvent.MOUSE_WHEEL
環境
MacOS10.10, FlashCC2015, Aid for Desktop 17
問題
Macでのマウスホイールイベントは、FlashPlayerでは動かないが、AIR for Desktopでは動く。
MacOS10.10, FlashCC2015, Aid for Desktop 17
問題
2015年10月23日金曜日
OpenNI OSX10.10 (Yosemite) インストール
Yosemite (OSX 10.10)では、homebrew版でのOpenNIのインストールの際、MD5版が廃止となりエラーがでるため使えない。以前に示した、MacPortによる方法では引き続きインストールが可能なことを確認(以下)。
http://webconsole.blogspot.jp/2012/10/openni-os108.html
また各バイナリ(OpenNI, Xtion Driver, Kinect Driver, NITE)のデータは一応以下に発見。
https://github.com/desirino/spark/tree/master/kinect
また各バイナリ(OpenNI, Xtion Driver, Kinect Driver, NITE)のデータは一応以下に発見。
https://github.com/desirino/spark/tree/master/kinect
また、OpenNIはクローズしたはずだが、以下に少しゾンビのようなサイトがある。
OpenNI2のデータのみダウンロードできるが、ドライバ関係はない。
2015年9月29日火曜日
Wordpressのカスタムテーマ作成時に、Jetpack等統計データが取れない
問題
Wordpressのカスタムテーマを作成した際に、JetpackやGoogle Analyticsなどが軒並み動かない。
原因
wp_header()及びwp_footer()がテーマに含まれていないため、プラグイン関係の処理が正しく行われない(プラグインはwp_headerまたはwp_footerのフックで起動するものがある。)
解決
</head>の直前に
</?php wp_header(); ?>
</body>の直前に
</?php wp_footer(); ?>
を必ず入れるようにする。
参考:http://blog.skyhips.com/article/38960767.html
Wordpressのカスタムテーマを作成した際に、JetpackやGoogle Analyticsなどが軒並み動かない。
原因
wp_header()及びwp_footer()がテーマに含まれていないため、プラグイン関係の処理が正しく行われない(プラグインはwp_headerまたはwp_footerのフックで起動するものがある。)
解決
</head>の直前に
</?php wp_header(); ?>
</body>の直前に
</?php wp_footer(); ?>
を必ず入れるようにする。
参考:http://blog.skyhips.com/article/38960767.html
2015年9月18日金曜日
Apache2.2 + PHP5.5以上 (FreeBSD 9.1)
概要:
PHP5.5以上ではビルドオプションからApacheモジュールの選択が除外されたため、libphp5.soを異なる方法でインストール/設定する必要がある。(PHP5.3まではビルドオプションでApacheの選択がある)
環境:
FreeBSD9.1, Apache2.2, PHP5.6
インストール手順:
1.Apache2.2のインストール
cd /usr/ports/www/apache22/
make install clean
2.PHP5.6のインストール
cd /usr/ports/lang/php56/
make install clean
3.PHP5.6拡張モジュールのインストール
(make configでインストールしたいモジュールを選択する)
cd /usr/ports/lang/php56-extension/
make config
make install clean
4.libphp5.soのインストール
cd /usr/ports/www/mod_php56/
make install clean
参考:
2014年11月8日土曜日
mplab_ipeでPICに焼き込む際にtarget device was not foundとでる問題
環境:
MacOS: 10.8.5
mplab_ipe: ver2.20
問題:
MPLAB X ではmplab_ide(統合開発環境)とmplab_ipe(統合プログラム環境)がある
MacOS: 10.8.5
mplab_ipe: ver2.20
問題:
MPLAB X ではmplab_ide(統合開発環境)とmplab_ipe(統合プログラム環境)がある
hexファイルをPICに焼き込む場合は、mplab_ipeを使用する。
(焼き込みにPickitを使う場合、Pickit 2は使えず、Pickit 3でなければならない。)
Pickit 3に接続後、PICへ焼き込みを行う際に、
target device was not found
というエラーが出る場合がある。
原因:
Pickit 3からPICへ電源を供給が供給されていないため、デバイスを見つける事ができない。
解決:
以下の設定により、Pickit 3からPICへ電源を供給するモードにする必要がある。
1.メニューバー -> Settings -> Advanced Mode でログオンし、Advanced Modeにする
(ログオンのパスワード初期値はMicrochip)
2. Powerタブ -> Power Target Circuit from Tool にチェックを入れる
参考:
http://akizukidenshi.com/download/ds/akizuki/k6720_mplab_1.pdf
http://d.hatena.ne.jp/garyo/20121021/p2
http://detail.chiebukuro.yahoo.co.jp/qa/question_detail/q10125270585;_ylt=A3xTwsSQlV1UCHwAS2nm_PN7?pos=1&ccode=ofv
2014年11月5日水曜日
NSImageでテクスチャ読み込みする場合のPNG Premultiplied AlphaとOpenGLのブレンディング
NSImageでPNGを読み込む場合、内部でNSBitmapImageRepを利用して読み込むため、透過部分はpremultiplied alpha処理が強制的に行われる(回避不可)。このため、OpenGLのブレンディングを行う場合、
×:glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA);
○:glBlendFunc(GL_ONE, GL_ONE_MINUS_SRC_ALPHA);
とすると正しくブレンドできる。
参考:
http://idevapps.com/forum/showthread.php?tid=1784&page=2
https://developer.apple.com/library/mac/Documentation/Cocoa/Reference/ApplicationKit/Classes/NSBitmapImageRep_Class/index.html
×:glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA);
○:glBlendFunc(GL_ONE, GL_ONE_MINUS_SRC_ALPHA);
とすると正しくブレンドできる。
参考:
http://idevapps.com/forum/showthread.php?tid=1784&page=2
https://developer.apple.com/library/mac/Documentation/Cocoa/Reference/ApplicationKit/Classes/NSBitmapImageRep_Class/index.html
2014年9月1日月曜日
Wordpressで更新の反映が遅い問題
環境:
MacOS10.8.5
Wordpress 3.9.2
MAMP 2.2
PHP 5.5.3
問題:
Wordpressでhtml, css, js, php等の更新後、
プラグイン、ブラウザキャッシュのなどの解決策などを用いても
すぐに表示に反映されない。
原因:
PHP5.5以降OPCache(PHPキャッシュ)機能が有効になっている。
解決:
1.Applications/MAMP/bin/php/php5.5.3/conf/php.iniを開く
2.set opcache.revalidate_freq=0 とし、キャッシュ更新頻度を0秒にする
3.MAMPを再起動
参考:
http://stackoverflow.com/questions/19073270/stop-caching-for-php-5-5-3-in-mamp
http://d.hatena.ne.jp/nakamura001/20131218/1387354549
MacOS10.8.5
Wordpress 3.9.2
MAMP 2.2
PHP 5.5.3
問題:
Wordpressでhtml, css, js, php等の更新後、
プラグイン、ブラウザキャッシュのなどの解決策などを用いても
すぐに表示に反映されない。
原因:
PHP5.5以降OPCache(PHPキャッシュ)機能が有効になっている。
解決:
1.Applications/MAMP/bin/php/php5.5.3/conf/php.iniを開く
2.set opcache.revalidate_freq=0 とし、キャッシュ更新頻度を0秒にする
3.MAMPを再起動
参考:
http://stackoverflow.com/questions/19073270/stop-caching-for-php-5-5-3-in-mamp
http://d.hatena.ne.jp/nakamura001/20131218/1387354549
2014年8月19日火曜日
iOSでの外部スクリーン表示
Lightning->HDMI変換を用いて外部スクリーンに別画面を出す際のメモ。
・lightning-digital-avアダプタはレビューにもある通りアップスキャンコンバータが内蔵されており、1080pのディスプレイとして認識しない。
http://store.apple.com/jp/product/MD826ZM/A/lightning-digital-avアダプタ
・1980x1080ディスプレイに接続し、UIScreenのboundsを調べると1600x900という値を返す。他、availableModesで調べるとVGA他、いくつかでるが最大は1600x900。
・「写真」でムービーを出す際には1080pで出る。MPEGエンコーダを通せばいけるという事??
・Apple Forumも含め調べた限りではUIScreenからの制御ではどうやら1080pでは出せないらしい。。。景品表示法違反じゃないのこれ?
参考:
http://cpplover.blogspot.jp/2013/03/lightning-digital-avarm-soc.html
https://developer.apple.com/jp/devcenter/ios/library/documentation/WindowAndScreenGuide.pdf
・lightning-digital-avアダプタはレビューにもある通りアップスキャンコンバータが内蔵されており、1080pのディスプレイとして認識しない。
http://store.apple.com/jp/product/MD826ZM/A/lightning-digital-avアダプタ
・1980x1080ディスプレイに接続し、UIScreenのboundsを調べると1600x900という値を返す。他、availableModesで調べるとVGA他、いくつかでるが最大は1600x900。
・「写真」でムービーを出す際には1080pで出る。MPEGエンコーダを通せばいけるという事??
・Apple Forumも含め調べた限りではUIScreenからの制御ではどうやら1080pでは出せないらしい。。。景品表示法違反じゃないのこれ?
参考:
http://cpplover.blogspot.jp/2013/03/lightning-digital-avarm-soc.html
https://developer.apple.com/jp/devcenter/ios/library/documentation/WindowAndScreenGuide.pdf
登録:
投稿 (Atom)