help-gnu-emacs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: emacs-module is not GPL compatible (Windows)


From: Óscar Fuentes
Subject: Re: emacs-module is not GPL compatible (Windows)
Date: Sat, 01 Oct 2016 03:14:59 +0200
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/25.1.50 (gnu/linux)

Mambo Levis <address@hidden> writes:

First of all, please don't send usage questions to bug-gnu-emacs. That
list is for reporting defects, suggesting enhancements and submitting
patches.

> I build the emacs-sqlite3 project in Windows using MINGW
> (mingw64_shell.bat) and the following message appears whenI requiere
> the module: sqlite3-core.dll is not GPL compatible
>
> Questions: 
> 1. Have anybody tried to build this project in windows using MINGW or
> Visual Studio?

Which project?

> 2. Do you have any idea about the error message: sqlite3-core.dll is
> not GPL compatible?

Most likely the module does not define and export the symbol
plugin_is_GPL_compatible, as described here:

http://diobla.info/blog-archive/modules-tut.html#sec-2-2

> I found this project (sqlite3-core) more interesting/valuable for
> testing the new emacs-module than the default provided (mod-test) in
> emacs-25.1-src/modules
> Repository: https://github.com/syohex/emacs-sqlite3

Ah, *that* project :-)

> I also found and build a similar
> project https://github.com/thom-jenks/emacs-sqlite but unfortunately
> with the same problem: it is not GPL compatible

The problem is that the code does not export the symbol
plugin_is_GPL_compatible. On GNU/Linux symbols are exported by default
when you build the shared library, but that's not the case of Windows
where you must export them explicitly.

Try changing

int plugin_is_GPL_compatible;

to

__declspec(dllimport) int plugin_is_GPL_compatible;

Probably you will also need to change

int
emacs_module_init(struct emacs_runtime *ert)

to

int __declspec(dllimport)
emacs_module_init(struct emacs_runtime *ert)

Hope this helps.



reply via email to

[Prev in Thread] Current Thread [Next in Thread]