外部参照

フォーラム(掲示板)ルール
フォーラム(掲示板)ルールはこちら  ※コードを貼り付ける場合は [code][/code] で囲って下さい。詳しくはこちら
くりあ

外部参照

#1

投稿記事 by くりあ » 15年前

よろしくお願いします。VC++を使っています。
AquesTalk2を使ってみたいと思い、プログラムを作ってみたのですが、

error LNK2019: 未解決の外部シンボル _AquesTalk2Da_PlaySync@12 が関数 _main で参照されました。
error LNK1120: 外部参照 1 が未解決です。

と、エラーが出てしまいました。
どうすればいいのでしょう。
ライブラリファイルや、インクルードファイル関係の問題かなと思ったのですが、
オプションで追加したつもりなのですが……

それとも全然見当違いの問題なのでしょうか。
どうすればいいのでしょうか?

お願いします。

Poco

Re:外部参照

#2

投稿記事 by Poco » 15年前

ライブラリ関連の設定を見直してください。
・ライブラリ自体をリンク対象にしているか?
・ライブラリの検索パスに当該ライブラリがおかれているディレクトリが含まれているか?

くりあ

Re:外部参照

#3

投稿記事 by くりあ » 15年前

ぽこさん、回答ありがとうございます。
とりああえず、DXライブラリと同じようにすればいいのかと思い、
同じようにやってみたのですが、他にどうすればいいんでしょうか?

ライブラリ自体をリンクの対象するというのはどうすれば?

ライブラリの検索パスのはちゃんと設定してあるはずです。
何回もやり直してみたのですが、うまくいきません。
何か勘違いをしているのか、別の理由だと思います。

tuelon

Re:外部参照

#4

投稿記事 by tuelon » 15年前

#pragma comment( lib, "AquesTalk2Da.lib" )
をメインcppの最初に書いて、AquesTalk2Da.dllをプロジェクトがあるフォルダにコピーすれば
たぶんできるかと・・・

くりあ

Re:外部参照

#5

投稿記事 by くりあ » 15年前

tuelonさん、回答ありがとうございます。
やってみたのですが、エラーは相変わらずです。
#pragma comment( lib, "AquesTalk2Da.lib" )
これって、ライブラリを使う時は必ず必要なんですか?
DXライブラリの時は使わなくてもいいですよね?

tuelon

Re:外部参照

#6

投稿記事 by tuelon » 15年前

dll形式で配布されているライブラリを使うときはいると思うのですが・・・


ちなみに
こっちの環境では、このコードでちゃんと再生されます。(Aquestalk2じゃなくて旧バージョンですが・・)


#include"AquesTalkDa.h"
#pragma comment(lib, "AquesTalkDa.lib")

int main(){
AquesTalkDa_PlaySync("あ");
return 0;
}

softya

Re:外部参照

#7

投稿記事 by softya » 15年前

ところで、"AquesTalk2Da.lib"はちゃんと見えるところにあるのでしょうか?
dllだけだとエラーになりますよ。
※ LoadLibrary()で自分でDllのロードを管理すれば別ですが。

参考↓
http://web.kyoto-inet.or.jp/people/ysskondo/chap11.html
http://web.kyoto-inet.or.jp/people/ysskondo/chap12.html

くりあ

Re:外部参照

#8

投稿記事 by くりあ » 15年前

出来ました!!ありがとうございます!!
#pragma comment( lib, "AquesTalk2Da.lib" )
これがなかったのが原因でした。
さっきは、これを本当に一番最初に書いたのがエラーの原因のようです。
インクルードファイルの下に書かないとだめなんですね。すいません。
ライブラリとかもっと勉強しなければいけないですね……
本当にありがとうございました。

softyaさん、参考ありがとうございます。
次はこんなことにならないように勉強します。

閉鎖

“C言語何でも質問掲示板” へ戻る