Google 网上论坛不再支持新的 Usenet 帖子或订阅项。历史内容仍可供查看。

sqlite3 compile failed

已查看 22 次
跳至第一个未读帖子

norimaki

未读,
2017年8月13日 15:01:102017/8/13
收件人
I compiled sqlite 3 with watcom 1.9 but failed.
I can not do the setup to make DLL well.
I saw "create DLL" of watcom - wiki, "linker" of help, past question etc
of newgroup, but eventually errer did not disappear and I could not
understand.
Will not you show me the settings that succeeded in compiling version 3.20
of sqlite 3?
(I would appreciate it if you can give me a set of successful project
files if possible.)
The OS is Windows XP.

This sentence is translated using a machine translation system.

Frank Beythien

未读,
2017年8月14日 04:16:312017/8/14
收件人
It would be helpful if you supplied the commands and parameters for
wcc386 and wlink and the error messages you get. Or the logfile from the
IDE.

norimaki

未读,
2017年8月14日 10:23:022017/8/14
收件人
Thank you for your response.
I tried using the question and answer about the dll-export-import-macro
definition that became a topic in the past.
I also tried the description about the dll that exists in the open -
watcom - wiki.
I also tried writing export-import-directive by referring also to the
attached help.
I tried to compile link by changing parameters, rewriting directive-file,
setting macros based on these.
However, I have not been able to compile SQLITE 3 for nearly a week.
I am already exhausted and I do not remember exactly what I did and what
was there.
There is only a set of files that have been set up so that I am
overwriting too much and not being usable.
Tell me how to answer correctly.
There is no other way to compare the way to succeed and my way of failing
to find out what I am doing wrong.
I think that it is in a state where it is only necessary to stepping up my
knowledge shortage and understanding shortage with that.
Command options that will succeed in compiling SQLite 3 - Macro definition
- export - import - directive, etc ...
Please tell me the setting.
Also, since I am using machine translation, it is difficult to convey and
understand detailed nuances.


On Mon, 14 Aug 2017 17:16:29 +0900, Frank Beythien <fbey...@gmx.de>
wrote:
--
Opera のメールクライアント: http://jp.opera.com/mail/

Frank Beythien

未读,
2017年8月15日 08:57:572017/8/15
收件人
Am 14.08.2017 um 16:22 schrieb norimaki:

Hi,

once again, if you don't show the error messages you get and the
compiler options which produced them, noboday can help you.

norimaki

未读,
2017年8月16日 09:19:582017/8/16
收件人
Hello.
The cause was found out.
If sqlite3 version is 3_6_23_1, it works normally.
Version 3.7 or later will succeed in compiling, but will fail due to a
memory reading violation.
When generating a dll, the following are required as macro definitions.
#define SQLITE_API __declspec (dllexport)
When using dll, the following macro definitions are required.
#define SQLITE_API __declspec (dllimport)

I'd like to hear if there is a method that can be successfully generated
in version 3.7 or later, but this thread is closed by solving it.



On Tue, 15 Aug 2017 21:57:55 +0900, Frank Beythien <fbey...@gmx.de>

d3x0r

未读,
2017年11月20日 05:37:312017/11/20
收件人
I see you asked this a few months ago... but here's some info...


There is a code generation but that will cause it to fail without code
patches to the sqlite3.c file

see all changes with FIX_DLL_REF

https://sourceforge.net/p/sack/code/ci/6252a3905d5fe0c57754d9c7e411812638a8dfbc/

When a function reference is imported into a structure initilaized with
the function address, the address is actually a double indirect pointer
instead of just being the address of the function, it's the address of the
address of the function.

You will also have to add SQLITE_EXTERN to funstions you wawnt to export
for the DLL.

#ifndef SQLITE_EXTERN
-# define SQLITE_EXTERN extern
+# define SQLITE_EXTERN __declspec(dllexport)
#endif

I've also taken to just linking the sqlite statically so I don't have to
keep doing the changes to export/import the symbols I need.

I suppose making a .def file or something would have been an easier
solution.

Unfortunatly I can't provide just the build for sqlite itself, I use it
within a much larger project.

--
Using Opera's mail client: http://www.opera.com/mail/
0 个新帖子