bug-apl
[Top][All Lists]
Advanced

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

Re: [Bug-apl] Error building libapl


From: Rowan Cannaday
Subject: Re: [Bug-apl] Error building libapl
Date: Tue, 4 Jun 2019 01:08:59 +0000

Hello again,

Ran across the following error while building the erlang interface:

```
gcc -o erlang_APL_nif.so -Wall  -fpic -shared -rdynamic -pthread \
 erlang_APL_nif.c -L/usr/local/lib/apl -lapl
erlang_APL_nif.c:36:15: error: #if with no _expression_
 #if HAVE_DIRTY
               ^
make[2]: *** [Makefile:482: erlang_APL_nif.so] Error 1
```

```
Linux 4.19.0-5-amd64 #1 SMP Debian 4.19.37-3 (2019-05-15) x86_64 GNU/Linux
gcc (Debian 8.3.0-7) 8.3.0
```

I'm including the patch I used to fix it:

Index: erlang/erlang_APL_nif.c
===================================================================
--- erlang/erlang_APL_nif.c (revision 1163)
+++ erlang/erlang_APL_nif.c (working copy)
@@ -33,7 +33,7 @@
 # define HAVE_DIRTY   /* we hope so */
 #endif
 
-#if HAVE_DIRTY
+#ifdef HAVE_DIRTY
 # define DIRTY_FLAG , ERL_NIF_DIRTY_JOB_CPU_BOUND
 #else
 # define DIRTY_FLAG



Cheers

- Rowan

On Mon, Jun 3, 2019 at 3:32 PM Dr. Jürgen Sauermann <address@hidden> wrote:
Hi again,

I have checked in SVN 1163. This version should compile  nicely under
g++ version 5.4.0 (the latest that I have) and also when building libapl.

It also passes all automated GNU APL test cases and shows no memory
leaks under valgrind.

Classes UTF8_string and Token_string have been changed to use
std::basic_string<UTF8> and std::vector<Token> instead of
Simple_string<>.

Class UCS_string will be converted next and if that works then I am
planning to release GNU APL 1.8.

Best Rgeards,
Jürgen



On 6/2/19 10:50 PM, Dr. Jürgen Sauermann wrote:
Hi Rowan,

thanks for reporting this. Supposedly fixed in SVN 1162.

Best Regards,
/// Jürgen


On 6/2/19 10:17 PM, Rowan Cannaday wrote:
Hello!

I am trying to compile libapl, and am running into the following error:

```
libtool: compile:  g++ -DHAVE_CONFIG_H -I. -I.. -Wall -I sql -Wold-style-cast -Werror -I/usr/include -I/usr/include/postgresql -rdynamic -g -O2 -MT libapl_la-libapl.lo -MD -MP -MF .deps/libapl_la-libapl.Tpo -c libapl.cc  -fPIC -DPIC -o .libs/libapl_la-libapl.o
libapl.cc: In function 'Value* get_value(APL_value, uint64_t)':
libapl.cc:210:4: error: 'Z' was not declared in this scope
    Z.get()->increment_owner_count(LOC);   // keep value
```

I am using the following to configure:
```
./configure --with-libapl
```
 
I have built the interpreter successfully before.

I also generated a tags file for the project and it is unable to find the definition for 'Z'.

Any help is appreciated, thank you for your time!



reply via email to

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