[Gambas-user] gb.dwg started

Martin mbelmonte at belmotek.net
Tue Jan 5 14:50:59 CET 2021


Hi Tobias, I saw this email just today, I don't know why it was in the 
my spam folder.Thanks for the tips, I have reviewed them against the 
notes that I am using for the component compiling process.

Tanks.

Martin Belmonte.

El 14/12/20 a las 0:02, Tobias Boege escribió:
> On Sun, 13 Dec 2020, Martin wrote:
>> Hi,
>>
>> I started to make the gb.dwg component I am following the instructions from
>> Tobias Boege "Writing a native component for gambas" [0].
>>
> Oh, I hate documents that don't have their creation date printed on them.
>  From the svn revision 6903 mentioned in the text, I estimate this was
> written in 2015. I haven't tracked how the process changed since then.
>
> I still have the source code for that document and could rehost it (I am
> no longer in control over my old student website) and correct any mistakes.
>
>> The objective is to use the project made for Reini Urban [1] and of course
>> the LibreDWG library.
>>
>> [0] https://wasd.urz.uni-magdeburg.de/tboege/gambas/native_comp.pdf
>>
>> [1] https://github.com/LibreDWG/gambas3-bindings
>>
> Wow, I didn't know Reini Urban was interested in Gambas!
>
>> So I follow the first steps.
>>
>> 0) Install all the dependecies recomended by the web site for Arch distro (I
>> use Manjaro) -> sudo pacman -Syu --needed --noconfirmalure ... here tthe
>> option "--noconfirmalure" doesent work on my terminal then I decide not use
>> it
> This is almost surely a typo. "--noconfirmalure" should be two words:
> "--noconfirm", which is an actual option of pacman (although I would
> personally not use it when I install something interactively anyway),
> and "alure", which is a dependency of gb.openal.
>
>> 1) Download the source code - ok
>>
>> 2 ) Made the gb.dw.conf file, then run ./make-compoente gb.dwg but doesent
>> work properly, the message was:
>>
>> which: no cpp in (/home/USER/.local/bin:/usr/local/bin:/usr/bin:/bin:/usr/local/sbin:/usr/bin/site_perl:/usr/bin/vendor_perl:/usr/bin/core_perl)
>> ./make-component: error: cpp was not found
>>
> This indicates that you do not have a C compiler installed or one whose
> preprocessor is not called "cpp". Install for example "gcc" on Arch Linux
> and you should get your cpp.
>
> Otherwise, make-component is just a convenience script. You do not have
> to use it to make a functional new component. The cargo cult way which I
> used more often than make-component is to copy a small native component
> and adapt its source code. You can, in a clean Gambas repository,
>
>    $ cp -r gb.gmp gb.dwg
>
> and then adapt the following files
>
>    gb.dwg/configure.ac
>      - this is basically what you enter into gb.dwg.conf plus data
>        on how the build process can figure out if the backing native
>        library (something with "dwg"?) is installed or not
>
>    gb.dwg/Makefile.am
>      - rename GMP_DIR to DWG_DIR
>
>    gb.dwg/src/gb.gmp.component
>      - rename to gb.dwg.component and fill in correct information
>
>    gb.dwg/src/Makefile.am
>      - change all GMP to DWG and register your source files
>
>    gb.dwg/src/*.{c,h}
>      - this is your implementation, the files mentioned in the Makefile.am
>
> and register the new component to the top-level build process via
>
>    configure.ac
>      - add gb.dwg to the long list of subdirectories
>
>    Makefile.am
>      - add your @dwg_dir@ to the long list of subdirectories
>
> Then ./reconf-all && ./configure to see if it gets picked up.
>
> Regards,
> Tobias
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.gambas-basic.org/pipermail/user/attachments/20210105/36edc059/attachment-0001.htm>


More information about the User mailing list