[ 
https://issues.apache.org/jira/browse/MINIFICPP-1334?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Ivan Serdyuk updated MINIFICPP-1334:
------------------------------------
    Description: 
I was compiling on x86_64 Ubuntu 20.

I used to define CC=clang and CXX=clang++, to build MiNiFi, using Clang.

 

 

[ 52%] Building CXX object 
extensions/rocksdb-repos/CMakeFiles/minifi-rocksdb-repos.dir/RocksDBLoader.cpp.o
 [ 52%] Building CXX object 
extensions/rocksdb-repos/CMakeFiles/minifi-rocksdb-repos.dir/RocksDbStream.cpp.o
 [ 52%] Building CXX object 
extensions/rocksdb-repos/CMakeFiles/minifi-rocksdb-repos.dir/controllers/RocksDbPersistableKeyValueStoreService.cpp.o
 [ 52%] Building CXX object 
extensions/gps/CMakeFiles/minifi-gps.dir/GetGPS.cpp.o
 In file included from 
/media/ubuntu/5d3d053e-8b78-4052-8725-674eb332a753/nifi-minifi-cpp-main/extensions/gps/GetGPS.cpp:44:
 In file included from /usr/include/libgpsmm.h:12:
 /usr/include/gps.h:2335:15: error: declaration of 'mkgmtime' has a different 
language linkage
 extern time_t mkgmtime(struct tm *);
 ^
 
/media/ubuntu/5d3d053e-8b78-4052-8725-674eb332a753/nifi-minifi-cpp-main/extensions/gps/../../libminifi/include/utils/TimeUtil.h:69:15:
 note: previous definition is here
 inline time_t mkgmtime(struct tm *date_time) {
 ^
 1 error generated.
 make[2]: *** [extensions/gps/CMakeFiles/minifi-gps.dir/build.make:63: 
extensions/gps/CMakeFiles/minifi-gps.dir/GetGPS.cpp.o] Error 1
 make[1]: *** [CMakeFiles/Makefile2:4246: 
extensions/gps/CMakeFiles/minifi-gps.dir/all] Error 2
 make[1]: *** Waiting for unfinished jobs....
 [ 52%] Linking CXX static library libminifi-rocksdb-repos.a
 [ 52%] Linking CXX static library libcatch_main.a
 [ 52%] Built target minifi-rocksdb-repos
 [ 52%] Built target catch_main

 

I am using this dev. package:
 $ apt info libgps-dev
 Package: libgps-dev
 Version: 3.20-8ubuntu0.2
 Priority: optional
 Section: libdevel
 Source: gpsd
 Origin: Ubuntu

 

>From the corresponding sub-folder:
 $ pwd
 .../nifi-minifi-cpp-main/build/extensions/gps
 $ make
 [ 6%] Built target zlib-external
 [ 13%] Built target ossp-uuid-external
 [ 20%] Built target yaml-cpp-external
 [ 26%] Built target libressl-portable
 [100%] Built target core-minifi
 [100%] Building CXX object 
extensions/gps/CMakeFiles/minifi-gps.dir/GetGPS.cpp.o
 In file included from 
/media/ubuntu/5d3d053e-8b78-4052-8725-674eb332a753/nifi-minifi-cpp-main/extensions/gps/GetGPS.cpp:44:
 In file included from /usr/include/libgpsmm.h:12:
 /usr/include/gps.h:2335:15: error: declaration of 'mkgmtime' has a different 
language linkage
 extern time_t mkgmtime(struct tm *);
 ^
 
/media/ubuntu/5d3d053e-8b78-4052-8725-674eb332a753/nifi-minifi-cpp-main/extensions/gps/../../libminifi/include/utils/TimeUtil.h:69:15:
 note: previous definition is here
 inline time_t mkgmtime(struct tm *date_time) {
 ^
 1 error generated.
 make[2]: *** [extensions/gps/CMakeFiles/minifi-gps.dir/build.make:63: 
extensions/gps/CMakeFiles/minifi-gps.dir/GetGPS.cpp.o] Error 1
 make[1]: *** [CMakeFiles/Makefile2:4246: 
extensions/gps/CMakeFiles/minifi-gps.dir/all] Error 2
 make: *** [Makefile:163: all] Error 2

 

And btw:
$ ls /usr/include/gps.h
ls: cannot access '/usr/include/gps.h': No such file or directory

  was:
I was compiling on x86_64 Ubuntu 20.

I used to define CC=clang and CXX=clang++, to build MiNiFi, using Clang.

 

 

[ 52%] Building CXX object 
extensions/rocksdb-repos/CMakeFiles/minifi-rocksdb-repos.dir/RocksDBLoader.cpp.o
[ 52%] Building CXX object 
extensions/rocksdb-repos/CMakeFiles/minifi-rocksdb-repos.dir/RocksDbStream.cpp.o
[ 52%] Building CXX object 
extensions/rocksdb-repos/CMakeFiles/minifi-rocksdb-repos.dir/controllers/RocksDbPersistableKeyValueStoreService.cpp.o
[ 52%] Building CXX object extensions/gps/CMakeFiles/minifi-gps.dir/GetGPS.cpp.o
In file included from 
/media/ubuntu/5d3d053e-8b78-4052-8725-674eb332a753/nifi-minifi-cpp-main/extensions/gps/GetGPS.cpp:44:
In file included from /usr/include/libgpsmm.h:12:
/usr/include/gps.h:2335:15: error: declaration of 'mkgmtime' has a different 
language linkage
extern time_t mkgmtime(struct tm *);
 ^
/media/ubuntu/5d3d053e-8b78-4052-8725-674eb332a753/nifi-minifi-cpp-main/extensions/gps/../../libminifi/include/utils/TimeUtil.h:69:15:
 note: previous definition is here
inline time_t mkgmtime(struct tm *date_time) {
 ^
1 error generated.
make[2]: *** [extensions/gps/CMakeFiles/minifi-gps.dir/build.make:63: 
extensions/gps/CMakeFiles/minifi-gps.dir/GetGPS.cpp.o] Error 1
make[1]: *** [CMakeFiles/Makefile2:4246: 
extensions/gps/CMakeFiles/minifi-gps.dir/all] Error 2
make[1]: *** Waiting for unfinished jobs....
[ 52%] Linking CXX static library libminifi-rocksdb-repos.a
[ 52%] Linking CXX static library libcatch_main.a
[ 52%] Built target minifi-rocksdb-repos
[ 52%] Built target catch_main

 

I am using this dev. package:
$ apt info libgps-dev
Package: libgps-dev
Version: 3.20-8ubuntu0.2
Priority: optional
Section: libdevel
Source: gpsd
Origin: Ubuntu

 

>From the corresponding sub-folder:
$ pwd
.../nifi-minifi-cpp-main/build/extensions/gps
$ make
[ 6%] Built target zlib-external
[ 13%] Built target ossp-uuid-external
[ 20%] Built target yaml-cpp-external
[ 26%] Built target libressl-portable
[100%] Built target core-minifi
[100%] Building CXX object extensions/gps/CMakeFiles/minifi-gps.dir/GetGPS.cpp.o
In file included from 
/media/ubuntu/5d3d053e-8b78-4052-8725-674eb332a753/nifi-minifi-cpp-main/extensions/gps/GetGPS.cpp:44:
In file included from /usr/include/libgpsmm.h:12:
/usr/include/gps.h:2335:15: error: declaration of 'mkgmtime' has a different 
language linkage
extern time_t mkgmtime(struct tm *);
 ^
/media/ubuntu/5d3d053e-8b78-4052-8725-674eb332a753/nifi-minifi-cpp-main/extensions/gps/../../libminifi/include/utils/TimeUtil.h:69:15:
 note: previous definition is here
inline time_t mkgmtime(struct tm *date_time) {
 ^
1 error generated.
make[2]: *** [extensions/gps/CMakeFiles/minifi-gps.dir/build.make:63: 
extensions/gps/CMakeFiles/minifi-gps.dir/GetGPS.cpp.o] Error 1
make[1]: *** [CMakeFiles/Makefile2:4246: 
extensions/gps/CMakeFiles/minifi-gps.dir/all] Error 2
make: *** [Makefile:163: all] Error 2


> libgps raised "a different language linkage", while compiling using Clang 
> 11.0.0
> --------------------------------------------------------------------------------
>
>                 Key: MINIFICPP-1334
>                 URL: https://issues.apache.org/jira/browse/MINIFICPP-1334
>             Project: Apache NiFi MiNiFi C++
>          Issue Type: Bug
>    Affects Versions: 0.7.0
>         Environment: $ clang --version
> clang version 11.0.0
> Target: x86_64-unknown-linux-gnu
> $cmake --version
> cmake version 3.16.3
> $ cat /proc/cpuinfo
> processor     : 0
> vendor_id     : GenuineIntel
> cpu family    : 6
> model         : 23
> model name    : Intel(R) Core(TM)2 Quad CPU    Q9400  @ 2.66GHz
>            Reporter: Ivan Serdyuk
>            Assignee: Marton Szasz
>            Priority: Blocker
>
> I was compiling on x86_64 Ubuntu 20.
> I used to define CC=clang and CXX=clang++, to build MiNiFi, using Clang.
>  
>  
> [ 52%] Building CXX object 
> extensions/rocksdb-repos/CMakeFiles/minifi-rocksdb-repos.dir/RocksDBLoader.cpp.o
>  [ 52%] Building CXX object 
> extensions/rocksdb-repos/CMakeFiles/minifi-rocksdb-repos.dir/RocksDbStream.cpp.o
>  [ 52%] Building CXX object 
> extensions/rocksdb-repos/CMakeFiles/minifi-rocksdb-repos.dir/controllers/RocksDbPersistableKeyValueStoreService.cpp.o
>  [ 52%] Building CXX object 
> extensions/gps/CMakeFiles/minifi-gps.dir/GetGPS.cpp.o
>  In file included from 
> /media/ubuntu/5d3d053e-8b78-4052-8725-674eb332a753/nifi-minifi-cpp-main/extensions/gps/GetGPS.cpp:44:
>  In file included from /usr/include/libgpsmm.h:12:
>  /usr/include/gps.h:2335:15: error: declaration of 'mkgmtime' has a different 
> language linkage
>  extern time_t mkgmtime(struct tm *);
>  ^
>  
> /media/ubuntu/5d3d053e-8b78-4052-8725-674eb332a753/nifi-minifi-cpp-main/extensions/gps/../../libminifi/include/utils/TimeUtil.h:69:15:
>  note: previous definition is here
>  inline time_t mkgmtime(struct tm *date_time) {
>  ^
>  1 error generated.
>  make[2]: *** [extensions/gps/CMakeFiles/minifi-gps.dir/build.make:63: 
> extensions/gps/CMakeFiles/minifi-gps.dir/GetGPS.cpp.o] Error 1
>  make[1]: *** [CMakeFiles/Makefile2:4246: 
> extensions/gps/CMakeFiles/minifi-gps.dir/all] Error 2
>  make[1]: *** Waiting for unfinished jobs....
>  [ 52%] Linking CXX static library libminifi-rocksdb-repos.a
>  [ 52%] Linking CXX static library libcatch_main.a
>  [ 52%] Built target minifi-rocksdb-repos
>  [ 52%] Built target catch_main
>  
> I am using this dev. package:
>  $ apt info libgps-dev
>  Package: libgps-dev
>  Version: 3.20-8ubuntu0.2
>  Priority: optional
>  Section: libdevel
>  Source: gpsd
>  Origin: Ubuntu
>  
> From the corresponding sub-folder:
>  $ pwd
>  .../nifi-minifi-cpp-main/build/extensions/gps
>  $ make
>  [ 6%] Built target zlib-external
>  [ 13%] Built target ossp-uuid-external
>  [ 20%] Built target yaml-cpp-external
>  [ 26%] Built target libressl-portable
>  [100%] Built target core-minifi
>  [100%] Building CXX object 
> extensions/gps/CMakeFiles/minifi-gps.dir/GetGPS.cpp.o
>  In file included from 
> /media/ubuntu/5d3d053e-8b78-4052-8725-674eb332a753/nifi-minifi-cpp-main/extensions/gps/GetGPS.cpp:44:
>  In file included from /usr/include/libgpsmm.h:12:
>  /usr/include/gps.h:2335:15: error: declaration of 'mkgmtime' has a different 
> language linkage
>  extern time_t mkgmtime(struct tm *);
>  ^
>  
> /media/ubuntu/5d3d053e-8b78-4052-8725-674eb332a753/nifi-minifi-cpp-main/extensions/gps/../../libminifi/include/utils/TimeUtil.h:69:15:
>  note: previous definition is here
>  inline time_t mkgmtime(struct tm *date_time) {
>  ^
>  1 error generated.
>  make[2]: *** [extensions/gps/CMakeFiles/minifi-gps.dir/build.make:63: 
> extensions/gps/CMakeFiles/minifi-gps.dir/GetGPS.cpp.o] Error 1
>  make[1]: *** [CMakeFiles/Makefile2:4246: 
> extensions/gps/CMakeFiles/minifi-gps.dir/all] Error 2
>  make: *** [Makefile:163: all] Error 2
>  
> And btw:
> $ ls /usr/include/gps.h
> ls: cannot access '/usr/include/gps.h': No such file or directory



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to