• 締切済み

BCC32でエラーです。

makeもネイティブc言語の開発も初めてです。 implib -a sqlitexx.lib sqlitexx.DLL で、_sqlite_openがありません。 となりまして、 implib -aa にしてもかわらず、壁にぶち当たっています。 御教助お願い致します。

みんなの回答

  • _kappe_
  • ベストアンサー率68% (1522/2216)
回答No.1

そのsqlitexx.DLLというのはどこから入手したものなのかをまず補足してください。たとえば https://sourceforge.net/projects/sqlitexx/ にsqlitexxというオープンソースプロジェクトがありますが、他にも同様の名前を持つものがあるようです。 また、「_sqlite_openがありません。」というメッセージはimplibの実行時に出るのですか?

関連するQ&A

  • ボーランドC++でのDLL作成トラブル

    いつものように、ボーランド社のコンパイラでdllを作成しましたが、以下のエラーが出ます。 C:\implib a.dll a.lib Borland Implib Version 3.0.22 Copyright (c) 1991, 2000 Inprise Corporation Error a.lib: unknown file type コンパイル直後には、容量が10k以上のファイルになっているのですが、暫くすると、1kになっています。コンパイラが不調なのですが、原因は何でしょう?

  • BCCでのFooty2の使用

    Footy2をBCCで利用したいのですが、なぜか正しくコントロールが表示されません。 implib -c Footy2.lib Footy2.dllでlibファイルを生成してリンクもしてあり、dllも実行ファイルと同じフォルダにおいてあります。 コンパイルエラーは出ていないのですが、実行時にコントロールが表示されていません。 (あと、ifでFOOTY2ERR_*が発生していないかを確認したのですが、発生していないみたいです。) マニュアルを読んだ限りではWM_CREATEが送信されて来た時にFooty2Createを親ウィンドウに対して発行するみたいですが、Footy2Createだけでなく他の関数も発行しなければならないのでしょうか。 分かる方がいれば、回答をお願いします。 OS:WindowsMe BCC:5.5.1 + BCC Developer Footy:2.013

  • BCC5.5のMakeFileについて教えてください。

    小生、只今、WinXPSP3上でC言語を使い、BCC5.5.1でコンパイルしながらプログラミングを勉強しています。 今回質問させて頂きたいのがBCCのMakeFileについてです。 http://blog.tomnekosoft.com/tomnekosoft.php?itemid=645 上記のサイトから、BCCのMakeFileというものを始めて知り、 その内容を理解したいと思いました。 以下にそのMakeFileを記述させて頂きます。 # # make -f fb_sample.mak # # ここの箇所は理解できました。 CFLAGS = -c -w- -a4 -DWIN32 -tWC -IC:\bin\bcc55\include LFLAGS = /m /s /Tpe -LC:\bin\bcc55\Lib LIBS = fbclient_bor.lib CC = bcc32 LINK = ilink32 # この.SUFFIXESというのがわかりません。 .SUFFIXES: .c .obj .c.obj: $(CC) $(CFLAGS) $< # この下も一切わかりません。 fb_sample.exe: fb_sample.obj @echo c0x32.obj+ > link.arg @echo $? >> link.arg @echo $@ >> link.arg @echo $(LFLAGS) >> link.arg @echo $(LIBS)+ >> link.arg @echo import32.lib+ >> link.arg @echo cw32.lib >> link.arg $(LINK) @link.arg 以上です。 分からない場所は、.SUFFIXESとfd_sample.exeから始まる箇所です。 お忙しい中、申し訳ございませんが、先輩方ご教授宜しくお願い致します。

  • PHP5でSQLiteが接続エラーを出します

    PHPには初心者です(データベースには多少知識有るはず)。 PHPからSQLに商品データを登録するシステムを作っていますが、データベースに接続することができません。 繋げるためにはどこを直したらよいでしょうか。 データベース名はshop、テーブル名はitemです。 SQLite:バージョン 2.8.17 PHP:バージョン 5.1.6 WindowsXPのプロフェッショナル、eclipse3.2、参考にした本は『eclipseではじめるPHP(http://item.rakuten.co.jp/book/4296315/)』と『基礎PHP(http://item.rakuten.co.jp/book/1711777/)』です。 エラーが出る行 if(!$db = sqlite_open('/../SQLiteManager/shop')){ die("データベース接続エラー.<br/>"); } エラー文 Warning: sqlite_open() [function.sqlite-open]: unable to open database: C:\SQLiteManager\shop in C:\Eclipse\workspace\shop\touroku.php on line 23 データベース接続エラー. PHPのフォルダ内にある 『PHP.iniextension=php_pdo_sqlite.dll』 『extension=php_sqlite.dll』 のコロンは外しました。 SQLiteManagerはworkspaceの中です。 設定が悪いのかファイルを置く場所が悪いのか、それともプログラムが悪いのかもわかりません。 宜しくお願いいたします。

    • 締切済み
    • PHP
  • C++でのDLL利用について

    http://1c3.world.coocan.jp/wiki/index.php?%A5%B3%A5%F3%A5%C8%A5%ED%A1%BC%A5%EBDLL%A4%F2%BA%EE%A4%ED%A4%A6#p92ca3d9 こちらのページで公開されている、pc-op-rs1-control.dllを使って、 自作プログラムを製作しようと考えています。 開発環境はVisual C++です。 上記ページのAPIリファレンスを見ると、 例えばドライバをオープンする関数は PCOPRS1CONTROL_RET Open(int port_no) というように書かれています。 そこで私の書いてみたプログラムは以下のとおりです。 #include <Windows.h> typedef PCOPRS1CONTROL_RET(WINAPI *OPEN)(int port_no); int _tmain(int argc, _TCHAR* argv[]) { HINSTANCE lib; lib = LoadLibrary(TEXT("pc-op-rs1-control.dll")); //dllはEXEファイルと同じディレクトリに配置 if (lib == NULL){ // ここにはエラーメッセージを入力してください printf("dll呼び出しエラー\n"); return -1; } OPEN Open = (OPEN)GetProcAddress(lib,"open"); printf("実行開始"); PCOPRS1CONTROL_RET open = Open(7); if(open == PCOPRS1CONTROL_RET_OK) printf("Open成功"); bool End = FreeLibrary(lib); return 0; } こうすると、 PCOPRS1CONTROL_RETという型が宣言されていない(?)ので、 コンパイルが通りません。 試しに typedef void(WINAPI *OPEN)(int port_no); としてみたりすると、 Open()を実行した瞬間死にます。 pc-op-rs1-control.dllのソースを見ても、 PCOPRS1CONTROL_RET型についての明記が見当たらないような気がするのですが、 どうしたらいいのでしょうか?

  • VB2010でPC-OP-RS1を読み出すとエラー

    PC-OP-RS1をカスタム利用するDLL、pc-op-rs1-control.dllをVB2010から利用しようとしています。 PC-OP-RS1 - PukiWiki http://1c3.world.coocan.jp/wiki/index.php?%A5%B3%A5%F3%A5%C8%A5%ED%A1%BC%A5%EBDLL%A4%F2%BA%EE%A4%ED%A4%A6 しかし、宣言での引数の指定の仕方が悪いらしく、エラーが出てしまいます。 こちらも参考にしてみました。 http://okwave.jp/qa/q4511807.html このDLLをモジュールで以下のように宣言をして読み出しています。 Public Declare Function remo_close Lib "pc-op-rs1-control.dll" _    Alias "Close" () As Integer closeのように、引数の無いものはうまくいくのですが、引数のある読み出し、例えばOPENを Public Declare Function remo_open Lib "pc-op-rs1-control.dll" _ Alias "Open" (ByVal port As Int32) As Integer このように宣言して  ans = remo_open(1) のように使用すると、 WindowsApplication1.Module1::remo_open' がスタックを不安定にしています。PInvoke シグネチャがアンマネージ ターゲット シグネチャに一致していないことが原因として考えられます。呼び出し規約、および PInvoke シグネチャのパラメーターがターゲットのアンマネージ シグネチャに一致していることを確認してください。 とエラーが出てしまいます。 Int32が悪いかと思い Int16、Int64、UInt32、UInt16、UInt64、Integer、UInt、ByValをByRefにと試してみましたが同様でした。 DLLのソース(C++)では以下のように宣言されています。 PCOPRS1CONTROL_API PCOPRS1CONTROL_RET Open(int port_no) { return(ConvertErrorsFromDevPcoprs1(dev.DEV_Open(port_no))); } 唯一エラーが出なかったのが、 Public Declare Function remo_open Lib "pc-op-rs1-control.dll" _ Alias "Open" () As Integer でした。 どなたか、間違いと思われる部分がわかる方、ご指摘をお願いいたします。

  • sqlite.so のmakeでエラー

    お世話になります。 sqlite.so の作成において、make時にエラーが出ます。 環境 お名前.com VPS CentOS 5 PHP5.3.3 PHPバージョンアップ後、ウェブメールを使えるようにするため sqlite.so を手に入れようとしています。 もともとエラーが出るらしく、修正案を試みましたが、エラーで通りません。 修正案:http://blog.plastik.jp/archives/44 ログ: /bin/sh /tmp/SQLite-1.0.3/libtool --mode=compile cc -I/tmp/SQLite-1.0.3/libsqlite/src -I. -I/tmp/SQLite-1.0.3 -DPHP_ATOM_INC -I/tmp/SQLite-1.0.3/include -I/tmp/SQLite-1.0.3/main -I/tmp/SQLite-1.0.3 -I/usr/include/php -I/usr/include/php/main -I/usr/include/php/TSRM -I/usr/include/php/Zend -I/usr/include/php/ext -I/usr/include/php/ext/date/lib -DHAVE_CONFIG_H -g -O2 -c /tmp/SQLite-1.0.3/sqlite.c -o sqlite.lo cc -I/tmp/SQLite-1.0.3/libsqlite/src -I. -I/tmp/SQLite-1.0.3 -DPHP_ATOM_INC -I/tmp/SQLite-1.0.3/include -I/tmp/SQLite-1.0.3/main -I/tmp/SQLite-1.0.3 -I/usr/include/php -I/usr/include/php/main -I/usr/include/php/TSRM -I/usr/include/php/Zend -I/usr/include/php/ext -I/usr/include/php/ext/date/lib -DHAVE_CONFIG_H -g -O2 -c /tmp/SQLite-1.0.3/sqlite.c -fPIC -DPIC -o .libs/sqlite.o /tmp/SQLite-1.0.3/sqlite.c:125: error: 'third_arg_force_ref' undeclared here (not in a function) /tmp/SQLite-1.0.3/sqlite.c: In function 'php_sqlite_agg_step_function_callback': /tmp/SQLite-1.0.3/sqlite.c:485: error: 'zval' has no member named 'is_ref' make: *** [sqlite.lo] エラー 1 修正をした125行目含め3つでしょうか、エラーが出てます。 同じ修正をした人たちは問題なくいってるようなので、 なぜこれがでるのか判りません。 これだけの情報で判るようでしたら、解決策をお教えください。 よろしくお願いいたします。

  • DLL内からの外部変数の参照

    BCC(フリーコンパイラ)で、WindowsAPIを使った プログラムを作成しています。その過程で、DLLを 作成しているのですが、 test.c を、 bcc32 -WD test.c とし、test.dllを作成しました。 さらにそれを、 implib test.lib test.dll で、test.libを作成ました。 ところが、おなじtest.cファイルで、ほかのファイル の変数を参照しようとして、extern HWND hWnd と書き加えたところ、bcc32 -WD で、参照先が見つか らないというエラーが起こり、DLLが作成できなく なってしまいました。 DLL内から外部の変数を参照するにはどうしたらよいで しょうか。この場合の外部の変数というのは、WinMain 関数のあるmain.cファイル内の静的変数です。 よろしくお願いいたします。

  • makeでエラー

    opensuseでUE-1000T-U3を使おうと思ったんですが ax88179のドライバが入りません。 詳しく説明しますと、AX88179_178A_LINUX_DRIVER_v1.5.0_SOURCE.tar.bz2を 展開したあと # make make -C /lib/modules/3.7.10-1.16-desktop/build SUBDIRS=/home/username/ダウンロード/AX88179_178A_LINUX_DRIVER_v1.5.0_SOURCE modules make[1]: ディレクトリ `/lib/modules/3.7.10-1.16-desktop/build' に入ります make[1]: *** ターゲット `modules' を make するルールがありません. 中止. make[1]: ディレクトリ `/lib/modules/3.7.10-1.16-desktop/build' から出ます make: *** [default] エラー 2 で、エラーが出るんですけど どういう状態で、どう直せばいいでしょうか 教えてください、お願いします。

  • エラーundefined function sqlite_open()

    エラーundefined function sqlite_open() いつもお世話になっております。 SQLiteの勉強をしようと思い、ローカルでも動くようにするための設定を 試行錯誤しておりますがうまくいきません。 色々な参考ページを見ているのですが、どの情報が自分の場合、 適切なのか判断できずに困っております。どうかご指導をお願いいたします。 状況としては・・・ ・ OSはWindows XP Professionalです。 ・ ローカルで通常のPHPはAN HTTPD ver.1.42pを使用して動かしています。 ・ ローカルでphpinfo()を実行すると、「Version 5.2.8」と出ます。 extension_dirの項は Local Value、Master Valueともに「./」です。 関係ないかもしれませんが、SystemRootの項は「C:\WINDOWS」と表示されています。 ただし、phpinfo()にはsqliteの文字は検索しても見当たりません。 ・ C:\WINDOWSの中にあるphp.iniを開き、下記の3つをコメントアウト(先頭の;を削除)しました。 extension=php_pdo.dll (630行目付近) extension=php_pdo_sqlite.dll (640行目付近) extension=php_sqlite.dll (650行目付近) これらのdllファイルは全てC:\php\ext の中に入っています。 ・ http://jp2.php.net/manual/ja/sqlite.installation.php も何度も読みましたが、お恥ずかしながら内容をきちんと理解できずにおります。 ・ http://www.sqlite.org/download.htmlから、「Precompiled Binaries For Windows」 の一番上のファイル「sqlite-3_6_23_1.zip」をDLし、中の「sqlite3.exe」解凍し、 C:\SQLiteを作ってその中に入れました。 以上のような状況です。誠に恐れ入りますが、 アドバイスをどうぞよろしくお願いいたします。m(_ _)m

    • ベストアンサー
    • PHP

専門家に質問してみよう