Lattice Diamond をLubuntuメニューに追加する
Lattice Diamond をLubuntuメニューに追加します。
- 環境
Lubuntu 18.04 (LXDE) Lattice Diamond 3.12
*メニューアイテムの作成
/usr/share/applicationフォルダに Lattice Diamond.desktopファイルを新規に作成します。
[Desktop Entry]
Type=Application
Name=Lattice Diamond
Icon=/usr/local/diamond/3.12/docs/webhelp/eng/connect/Lattice_Icon.ico
Exec=/usr/local/diamond/3.12/bin/lin64/diamond
NoDisplay=false
Categories=Development;
StartupNotify=false
Terminal=false
Lattice Diamond on Ubuntu 18.04 alienを使ったインストール2
はじめに
環境
Ubuntu 18.04.6 LTS (Bionic Beaver)
環境構築
Lattice Diamond インストール前の環境構築 これをインストールしておかないとModel Sim Lattice Edition が起動しない
sudo apt-get install csh
sudo apt-get install libxft2:i386
インストール方法
--scriptsを引数に指定してalienでdebパッケージに変換します。
sudo alien --to-deb --scripts diamond_3_12-base-240-2-x86_64-linux.rpm
sudo dpkg -i diamond-3-12-base_3.12-241_amd64.deb
--installを引数に指定すれば、変換した後インストールできます。
sudo alien --to-deb --scripts --install diamond_3_12-base-240-2-x86_64-linux.rpm
サービスパックのインストール方法
サービスパックも同様にインストールします。
sudo alien --to-deb --scripts diamond_3_12-sp1-454-2-x86_64-linux.rpm
sudo dpkg -i diamond-3-10-sp3-x64_3.10-145_amd64.deb
Lattice Diamond を起動させる
cd /usr/local/diamond/3.12/bin/lin64
diamond
参考
Raspberry pi3 modelBをWiFi AccesPoint化する
事前準備
- OS 2019-04-08-raspbian-stretch-full
設定
以下の記事で問題なし。 qiita.com
hostapdの起動(sudo systemctl start hostapd)時にエラーが出たときの対処方法は以下の記事を参照した。 www.raspberrypi.org
Lattice Diamond on Ubuntu 18.04 alienを使ったインストール
はじめに
rpmからスクリプトを抽出してインストールする方法 Lattice Diamond on Ubuntu 18.04 アップデート - makimakidon’s blog Lattice Diamond on Ubuntu 18.04 - makimakidon’s blog より、簡単な方法が見つかった。
インストール方法
--scriptsを引数に指定してalienでdebパッケージに変換します。
sudo alien --to-deb --scripts diamond_3_10-base_x64-111-2-x86_64-linux.rpm
sudo dpkg -i diamond-3-10-base-x64_3.10-112_amd64.deb
--installを引数に指定すれば、変換した後インストールできます。
sudo alien --to-deb --scripts --install diamond_3_10-base_x64-111-2-x86_64-linux.rpm
アップデート方法
アップデートも同様に変更してインストールします。
sudo alien --to-deb --scripts diamond_3_10-sp3_x64-144-3-x86_64-linux.rpm
sudo dpkg -i diamond-3-10-sp3-x64_3.10-145_amd64.deb
Lattice Diamond on Ubuntu 18.04 アップデート
事前準備
アップデートスクリプトcp_packがcshを使用するため、cshをインストールしておきます。
sudo apt-get install csh
作業フォルダとしてlattice_diamond_patchディレクトリを作成します。
diamond_3_10-base_x64-111-2-x86_64-linux.rpm
をインストールしたフォルダ/usr/local/diamond
をlattice_diamond_patchディレクトリにコピーし、ファイル属性はすべてユーザーに変更しておきます。
rpmパッケージの入手
Lattice Diamond のSoftware Update Centerでdiamond_3_10-sp3_x64-144-3-x86_64-linux.rpm
をlattice_diamond_patchディレクトリにダウンロードします。
rpmパッケージの解凍
lattice_diamond_patchディレクトリで、次のコマンドを実行してファイルの内容を抽出します。
rpm2cpio *.rpm | cpio -idmv
ディレクトリ構成がlattice_diamond_patch/usr/local/diamond/sp
となるように、抽出したフォルダをコピーします。
次に、RPMからインストール後のスクリプトレットが必要になります。
rpm -qp --scripts *.rpm > scripts.txt
このコマンドはすべてのスクリプトレットを出力します。 scripts.txtファイルをテキストエディタを開いて、postinstallセクションの内容をpostin.shというファイルに貼り付けます。
if [ -e /usr/local/diamond/3.10_x64/sp/cp_pack ]
then
/usr/local/diamond/3.10_x64/sp/cp_pack 3.10 "" /usr/local
rm -r -f /usr/local/diamond/3.10_x64/sp
fi
export temp=`rpm -ql diamond_3_10-base_x64 | head -1`
export temp1=`echo $temp | cut -f1 -d' '`
if [ "$temp" == "$temp1" ]
then
export dir=`basename $temp`
while [ $dir != "diamond" ]
do
export dir=$temp
export temp=`dirname $dir`
export dir=`basename $temp`
done
export TARGET=`dirname $temp`
else
export TARGET=$RPM_INSTALL_PREFIX
fi
if [ $TARGET != /usr/local ]
then
rm -r -f /usr/local/diamond/3.10_x64/bin
rm -r -f /usr/local/diamond/3.10_x64/cae_library
rm -r -f /usr/local/diamond/3.10_x64/data
rm -r -f /usr/local/diamond/3.10_x64/docs
rm -r -f /usr/local/diamond/3.10_x64/embedded_source
rm -r -f /usr/local/diamond/3.10_x64/examples
rm -r -f /usr/local/diamond/3.10_x64/ispfpga
rm -r -f /usr/local/diamond/3.10_x64/module
rm -r -f /usr/local/diamond/3.10_x64/synpbase
rm -r -f /usr/local/diamond/3.10_x64/tcltk
if [ -d /usr/local/diamond/3.10_x64 ]
then
rmdir --ignore-fail-on-non-empty /usr/local/diamond/3.10_x64
fi
fi
if [ -e ${TARGET}/diamond/3.10_x64/sp/cp_pack ]
then
${TARGET}/diamond/3.10_x64/sp/cp_pack 3.10 "" ${TARGET}
rm -r -f ${TARGET}/diamond/3.10_x64/sp
fi
postin.sh の /usr/local/の前に$PWDを追加し、rpm -ql diamond_3_10-base_x64 をrpm -ql diamond_3_10-base_x64.*.rpmに変更します。
if [ -e $PWD/usr/local/diamond/3.10_x64/sp/cp_pack ]
then
$PWD/usr/local/diamond/3.10_x64/sp/cp_pack 3.10 "" $PWD/usr/local
rm -r -f $PWD/usr/local/diamond/3.10_x64/sp
fi
export temp=`rpm -ql diamond_3_10-base_x64*.rpm | head -1`
export temp1=`echo $temp | cut -f1 -d' '`
if [ "$temp" == "$temp1" ]
then
export dir=`basename $temp`
while [ $dir != "diamond" ]
do
export dir=$temp
export temp=`dirname $dir`
export dir=`basename $temp`
done
export TARGET=`dirname $temp`
else
export TARGET=$RPM_INSTALL_PREFIX
fi
if [ $TARGET != /usr/local ]
then
rm -r -f $PWD/usr/local/diamond/3.10_x64/bin
rm -r -f $PWD/usr/local/diamond/3.10_x64/cae_library
rm -r -f $PWD/usr/local/diamond/3.10_x64/data
rm -r -f $PWD/usr/local/diamond/3.10_x64/docs
rm -r -f $PWD/usr/local/diamond/3.10_x64/embedded_source
rm -r -f $PWD/usr/local/diamond/3.10_x64/examples
rm -r -f $PWD/usr/local/diamond/3.10_x64/ispfpga
rm -r -f $PWD/usr/local/diamond/3.10_x64/module
rm -r -f $PWD/usr/local/diamond/3.10_x64/synpbase
rm -r -f $PWD/usr/local/diamond/3.10_x64/tcltk
if [ -d $PWD/usr/local/diamond/3.10_x64 ]
then
rmdir --ignore-fail-on-non-empty $PWD/usr/local/diamond/3.10_x64
fi
fi
if [ -e ${TARGET}/diamond/3.10_x64/sp/cp_pack ]
then
${TARGET}/diamond/3.10_x64/sp/cp_pack 3.10 "" ${TARGET}
rm -r -f ${TARGET}/diamond/3.10_x64/sp
fi
それが終わったら、ファイルを実行可能にして実行します。
chmod +x postin.sh
./postin.sh
インストール
それでは、ファイルを正しい場所にコピーしてください。
sudo cp -Rva --no-preserve=ownership ./usr/local/diamond /usr/local/
中間ステップ用に作成したlattice_diamondディレクトリは、インストールが完了したら削除できます。
Lattice Diamondの実行ファイルは以下になります。
/usr/local/diamond/3.10_x64/bin/lin64/diamond
Lattice Diamond on Ubuntu 18.04
事前準備
rpmファイルからファイルを取り出すツールをインストールします。
sudo apt-get install rpm rpm2cpio
rpmパッケージの入手
LatticeSemiconductorサイトでユーザー登録し、diamond_3_10-base_x64-111-2-x86_64-linux.rpm
を入手します。
www.latticesemi.com
lattice_diamondディレクトリを作成し、そのディレクトリにダウンロードします。
rpmパッケージの解凍
lattice_diamondディレクトリで、次のコマンドを実行してファイルの内容を抽出します。
rpm2cpio *.rpm | cpio -idmv
次に、RPMからインストール後のスクリプトレットが必要になります。
rpm -qp --scripts *.rpm > scripts.txt
このコマンドはすべてのスクリプトレットを出力します。 scripts.txtファイルをテキストエディタを開いて、postinstallセクションの内容をpostin.shというファイルに貼り付けます。
echo "Extracting compressed data files..."
cd $RPM_INSTALL_PREFIX/diamond/3.10_x64/bin; tar xzf bin.tar.gz; rm -f bin.tar.gz
cd $RPM_INSTALL_PREFIX/diamond/3.10_x64/cae_library; tar xzf cae_library.tar.gz; rm -f cae_library.tar.gz
cd $RPM_INSTALL_PREFIX/diamond/3.10_x64/data; tar xzf data.tar.gz; rm -f data.tar.gz
cd $RPM_INSTALL_PREFIX/diamond/3.10_x64/embedded_source; tar xzf embedded_source.tar.gz; rm -f embedded_source.tar.gz
cd $RPM_INSTALL_PREFIX/diamond/3.10_x64/examples; tar xzf examples.tar.gz; rm -f examples.tar.gz
cd $RPM_INSTALL_PREFIX/diamond/3.10_x64/ispfpga; tar xzf ispfpga.tar.gz; rm -f ispfpga.tar.gz
cd $RPM_INSTALL_PREFIX/diamond/3.10_x64/synpbase; tar xzf synpbase.tar.gz; rm -f synpbase.tar.gz
cd $RPM_INSTALL_PREFIX/diamond/3.10_x64/tcltk; tar xzf tcltk.tar.gz; rm -f tcltk.tar.gz
それが終わったら、ファイルを実行可能にして実行します。
chmod +x postin.sh
RPM_INSTALL_PREFIX=$PWD/usr/local bash postin.sh
インストール
それでは、ファイルを正しい場所にコピーしてください。
sudo cp -Rva --no-preserve=ownership ./usr/local/diamond /usr/local/
中間ステップ用に作成したlattice_diamondディレクトリは、インストールが完了したら削除できます。
Lattice Diamondの実行ファイルは以下になります。
/usr/local/diamond/3.10_x64/bin/lin64/diamond