お知らせ

  • 利用規約を守って投稿してください。また、よくある質問および投稿の手引きも参照してください。
  • メッセージの投稿にはアカウントが必要です。未登録の方は、ユーザ登録ページからアカウントを作成することができます。

#1 2017-04-27 14:34:52

rana_mzk
メンバ
登録日: 2017-04-26

clangによる127コンパイルエラー

こんにちは。度々失礼いたします。

UbuntuGnome16.10が正常にインストールできたため、環境構築をしています。


仕事で

ppmck
http://ppmck.web.fc2.com/ppmck.html

NES Sound Driver & Library
http://shaw.la.coocan.jp/nsdl/

を使用しておりまして、こちらに関してはLinux用のドキュメントがございましたので、なんとかコンパイルができました。
これらのツールはChiptuneと呼ばれるジャンルで使われております。ファミコンから音を出すような音楽制作ソフトです。

今回はスーパーファミコンの音源を自作したいと思い、コンパイルをかけているのですが、なかなかうまくいきません。

SuperC-spcdrv
https://github.com/boldowa/SuperC-SPCdrv

まだ正式なリリースにはなっていないのですが、先にUbuntuGnomeを使い始めた知人に聞いてみたところ、コンパイルが通ったとのことでした。

SuperCのコンパイルの際に必要な

wla-dx
https://github.com/boldowa/wla-dx

については手順が乗っていたのでcmakeでのあと数回でコンパイルが通ったのですが、SuperCのコンパイルを通すためにはどのような解決策が考えられるでしょうか?

コマンドライン操作だと ls コマンドやmakeコマンド cdコマンドくらいしか把握しておらず、まだまだLinuxに関しては初心者で申し訳ありません。

コード:

rana@LinuxAir:~$ cd SuperC-SPCdrv-master/
rana@LinuxAir:~/SuperC-SPCdrv-master$ cd mmlc
rana@LinuxAir:~/SuperC-SPCdrv-master/mmlc$ clang
clang: error: no input files
rana@LinuxAir:~/SuperC-SPCdrv-master/mmlc$ make
make -C ../snes
make[1]: ディレクトリ '/home/rana/SuperC-SPCdrv-master/snes' に入ります
wla-65816 -M  -o main.o main.s >main.d
/bin/sh: 1: wla-65816: not found
Makefile:42: ターゲット 'main.o' のレシピで失敗しました
make[1]: *** [main.o] エラー 127
make[1]: ディレクトリ '/home/rana/SuperC-SPCdrv-master/snes' から出ます
Makefile:95: ターゲット '../snes/snes.bin' のレシピで失敗しました
make: *** [../snes/snes.bin] エラー 2
rana@LinuxAir:~/SuperC-SPCdrv-master/mmlc$

不要な部分もあるかと思いますが、初めてコードも投稿させていただきます。

よろしくお願いいたします。

生成されるSPCファイルの再生には

DeaDBeeF
http://deadbeef.sourceforge.net/

にて知人は確認が取れているようです。

オフライン

 

#2 2017-04-27 20:59:57

aaabbbcccdddeeefffggghhh
メンバ
登録日: 2008-02-25

Re: clangによる127コンパイルエラー

rana_mzk による投稿:

コード:

wla-65816 -M  -o main.o main.s >main.d
/bin/sh: 1: wla-65816: not found

wla-65816が無い、というエラーですので、

rana_mzk による投稿:

wla-dx
https://github.com/boldowa/wla-dx

については手順が乗っていたのでcmakeでのあと数回でコンパイルが通ったのですが、SuperCのコンパイルを通すためにはどのような解決策が考えられるでしょうか?

コンパイルが通った後に作成されるwla-65816を、/usr/binなどのパスの通った場所に置けばいいのではないでしょうか。

オフライン

 

#3 2017-04-28 00:55:40

rana_mzk
メンバ
登録日: 2017-04-26

Re: clangによる127コンパイルエラー

ご返答ありがとうございます。

cpコマンドを使ってwla-65816ファイルの移動を試みましたが、場所を間違えてしまったようです。Ubuntuが立ち上がらなくなってしまいました。この返事はMacから書いております。

/user/bin/
などではなく、直接cpコマンドで
/bin/sh

にファイルを移動してしまい、セーフモードでUbuntuを立ち上げるとwla-6816のアセンブラがCUIで立ち上がります。

/bin/sh

でのオプションでファイルを消すなどすればいいのでしょうか?
初歩的な質問で申し訳ありませんが、ご回答いただけると幸いです。

オフライン

 

#4 2017-04-28 08:53:26

rana_mzk
メンバ
登録日: 2017-04-26

Re: clangによる127コンパイルエラー

お世話になります。その後バックアップのUSBフラッシュメモリから再度Ubuntuをインストールいたしました。

cpコマンドを使いファイルを正常に移動し、makeしましたところ

コード:

rana@LinuxAir:~/SuperC-SPCdrv-master/mmlc$ make
clang -Wall -O2 gstdafx.h
make: clang: コマンドが見つかりませんでした
Makefile:98: ターゲット 'gstdafx.h.gch' のレシピで失敗しました
make: *** [gstdafx.h.gch] エラー 127

というエラーがでました。
こちらはSuperC特有のエラーのようで、先にご紹介しましたGitHubにソリューションが乗っていました。

現在、作者さまに問い合わせをしてみております。

また解決方法などありましたら教えてください。しばらく様子をみてみます。

オフライン

 

#5 2017-04-28 20:11:33

aaabbbcccdddeeefffggghhh
メンバ
登録日: 2008-02-25

Re: clangによる127コンパイルエラー

rana_mzk による投稿:

コード:

make: clang: コマンドが見つかりませんでした

clangが正常にインストールされているかどうか確認してみてください。

オフライン

 

#6 2017-04-29 07:06:35

rana_mzk
メンバ
登録日: 2017-04-26

Re: clangによる127コンパイルエラー

こんにちは。ありがとうございます。

clangが正常にインストールされているかどうか確認してみてください。

Macでもコンパイルを試してみましたが、clangのインストールは癖があるようですね。確認してみます。
確認のために便利なコマンドなどあれば是非教えてください。

オフライン

 

#7 2017-04-29 12:43:58

rana_mzk
メンバ
登録日: 2017-04-26

Re: clangによる127コンパイルエラー

こんにちは。

clangはインストールできたようです。

コード:

rana@LinuxAir:~/build$ clang -v
clang version 3.8.1-12ubuntu1 (tags/RELEASE_381/final)
Target: x86_64-pc-linux-gnu
Thread model: posix
InstalledDir: /usr/bin
Found candidate GCC installation: /usr/bin/../lib/gcc/x86_64-linux-gnu/5.4.1
Found candidate GCC installation: /usr/bin/../lib/gcc/x86_64-linux-gnu/6.2.0
Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/5.4.1
Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/6.2.0
Selected GCC installation: /usr/bin/../lib/gcc/x86_64-linux-gnu/6.2.0
Candidate multilib: .;@m64
Selected multilib: .;@m64

この環境で/usr/binにwla-65816をcpコマンドで置きまして、SuperCのmmlc内部でmakeしましたら次のようにエラーがでました。

コード:

rana@LinuxAir:~/SuperC-SPCdrv-master/mmlc$ make
clang -Wall -O2 gstdafx.h
clang -MMD -c -Wall -O2 mmlc.c
clang -MMD -c -Wall -O2 compile.c
clang -MMD -c -Wall -O2 mmlman.c
clang -MMD -c -Wall -O2 binaryman.c
clang -MMD -c -Wall -O2 errorman.c
clang -MMD -c -Wall -O2 spc.c
clang -MMD -c -Wall -O2 timefunc.c
clang -MMD -c -Wall -O2 pathfunc.c
clang -MMD -c -Wall -O2 snsf.c
clang -MMD -c -Wall -O2 address.c
clang -MMD -c -Wall -O2 md5.c
make -C ../snes
make[1]: ディレクトリ '/home/rana/SuperC-SPCdrv-master/snes' に入ります
wla-65816 -M  -o main.o main.s >main.d
/bin/sh: 1: wla-65816: not found
Makefile:42: ターゲット 'main.o' のレシピで失敗しました
make[1]: *** [main.o] エラー 127
make[1]: ディレクトリ '/home/rana/SuperC-SPCdrv-master/snes' から出ます
Makefile:95: ターゲット '../snes/snes.bin' のレシピで失敗しました
make: *** [../snes/snes.bin] エラー 2

こちらはまたwla-65816ファイルが見つからないというエラーのようですが、何故コンパイルに失敗するのかがわかりません。

以上今回の内容ですが、何か解決案をご提案くださればと思います。よろしくお願いいたします。

オフライン

 

#8 2017-04-29 14:40:19

aaabbbcccdddeeefffggghhh
メンバ
登録日: 2008-02-25

Re: clangによる127コンパイルエラー

rana_mzk による投稿:

この環境で/usr/binにwla-65816をcpコマンドで置きまして、SuperCのmmlc内部でmakeしましたら次のようにエラーがでました。

以下のコマンドを実行してwla-65816に実行権限があるか確認して下さい。

ls -l /usr/bin/wla-65816

オフライン

 

#9 2017-04-29 15:09:48

rana_mzk
メンバ
登録日: 2017-04-26

Re: clangによる127コンパイルエラー

ありがとうございます。現在以下のようになっているようです。

コード:

rana@LinuxAir:~$ cd /usr/bin/build-wla
rana@LinuxAir:/usr/bin/build-wla$ ls -l wla-65816
-rwxr-xr-x 1 root root 249480  4月 29 12:03 wla-65816

ファイルの場所ですが、wla-dxのドキュメントにbuild-wlaを作ることが推奨されていましたので、そちらに一旦移してみました。
実行権限を与えればコンパイルが通るのでしょうか?

以上よろしくお願いいたします。

オフライン

 

#10 2017-04-29 15:40:39

aaabbbcccdddeeefffggghhh
メンバ
登録日: 2008-02-25

Re: clangによる127コンパイルエラー

rana_mzk による投稿:

コード:

rana@LinuxAir:~$ cd /usr/bin/build-wla
rana@LinuxAir:/usr/bin/build-wla$ ls -l wla-65816
-rwxr-xr-x 1 root root 249480  4月 29 12:03 wla-65816

ファイルの場所ですが、wla-dxのドキュメントにbuild-wlaを作ることが推奨されていましたので、そちらに一旦移してみました。
実行権限を与えればコンパイルが通るのでしょうか?

実行権限は付いてますけど、実行ファイルは/usr/bin直下でなければなりません。
ですので、以下のコマンドを実行して移動させて下さい。

sudo mv /usr/bin/build-wla/wla-65816 /usr/bin/

オフライン

 

#11 2017-04-29 16:07:36

aaabbbcccdddeeefffggghhh
メンバ
登録日: 2008-02-25

Re: clangによる127コンパイルエラー

私の環境でコンパイルを試してみましたが、SuperCのコンパイルにはwlalinkも必要ですので、そちらも/usr/binにコピーして下さい。

sudo cp -av wlalink /usr/bin/

オフライン

 

#12 2017-04-29 16:26:26

rana_mzk
メンバ
登録日: 2017-04-26

Re: clangによる127コンパイルエラー

コンパイルまで試していただいてありがとうございます。

wla-65816とwlalinkを指定の場所に移動しましたらコンパイルは通ったようです。

ここからはUbuntuは関係ないのかもしれませんがお聞かせください。
SuperCのMMLコンパイルコマンドは

コード:

mmlc mmlファイル名 出力したいSPCファイル名

とのことです。(GitHubを参照しました。)

サンプルになります、MMLファイルが

https://github.com/boldowa/SuperC-SPCdrv/releases
こちらのWindows用のバイナリーに含まれておりますが、そちらはmmlcでコンパイル可能でしょうか

コード:

rana@LinuxAir:~/SuperC-SPCdrv-master/mmlc$ mmlc wvtes.mml wvtes.spc
コマンド 'mmlc' は見つかりませんでした。もしかして:
 コマンド 'nmlc' - パッケージ 'nml' (universe)
 コマンド 'wmlc' - パッケージ 'wap-wml-tools' (multiverse)
 コマンド 'mmls' - パッケージ 'sleuthkit' (universe)
 コマンド 'pmlc' - パッケージ 'pcp' (universe)
mmlc: コマンドが見つかりません
rana@LinuxAir:~/SuperC-SPCdrv-master/mmlc$

こちらではmmlcがないとエラーが出てしまいます。

オフライン

 

#13 2017-04-29 17:40:30

aaabbbcccdddeeefffggghhh
メンバ
登録日: 2008-02-25

Re: clangによる127コンパイルエラー

rana_mzk による投稿:

コード:

rana@LinuxAir:~/SuperC-SPCdrv-master/mmlc$ mmlc wvtes.mml wvtes.spc
コマンド 'mmlc' は見つかりませんでした。もしかして:
 コマンド 'nmlc' - パッケージ 'nml' (universe)
 コマンド 'wmlc' - パッケージ 'wap-wml-tools' (multiverse)
 コマンド 'mmls' - パッケージ 'sleuthkit' (universe)
 コマンド 'pmlc' - パッケージ 'pcp' (universe)
mmlc: コマンドが見つかりません
rana@LinuxAir:~/SuperC-SPCdrv-master/mmlc$

こちらではmmlcがないとエラーが出てしまいます。

mmlcはspccore.binと同一のフォルダーに置かないと動かないようです。
私の環境で試した所、一応コンパイルは出来るようです。

コード:

test@test-desktop:~/Downloads/superc_v093_win$ ./mmlc ./mml/wvtes.mml wvtes.spc 
spc core Version: 00.92
[INFO ] seqStart: 0x3700
Make SPC success.
  Total data size: 14080 bytes
  51456 bytes(78.52%) free.

Complete. Compiled in 0.001 seconds.

オフライン

 

#14 2017-04-29 18:03:12

rana_mzk
メンバ
登録日: 2017-04-26

Re: clangによる127コンパイルエラー

ありがとうございます。

該当のWindowsバイナリにspccore.binがありましたので、移動させまして、mmlcでコンパイルしましたところ無事にコンパイルが通りました。

また冒頭で述べさせていただいたDeaDBeeFにて再生の確認が取れております。

今後は

SNES SPC Player on FPGA
https://www.youtube.com/watch?v=J22l-H3YLVQ

などでこちらで作ったSPCを利用する予定でおります。

ありがとうございました。

rana

オフライン

 

Board footer

Powered by FluxBB