Giter Site home page Giter Site logo

bsc-pm / nanox Goto Github PK

View Code? Open in Web Editor NEW
38.0 38.0 15.0 9.37 MB

Nanos++ is a runtime designed to serve as runtime support in parallel environments. It is mainly used to support OmpSs, a extension to OpenMP developed at BSC.

Home Page: https://pm.bsc.es/nanox

License: GNU Lesser General Public License v3.0

Makefile 3.04% Shell 1.50% M4 2.41% C++ 72.02% C 16.86% Assembly 0.44% Python 3.74%
ompss openmp runtime

nanox's Issues

error: non-static data member initializers only available with ‘-std=c++11’ or ‘-std=gnu++11’ [-Werror]

configured with
./configure --prefix=/usr --build=x86_64-pc-linux-gnu --host=x86_64-pc-linux-gnu --mandir=/usr/share/man --infodir=/usr/share/info --datadir=/usr/share --sysconfdir=/etc --localstatedir=/var/lib --datarootdir=/usr/share --disable-depend ency-tracking --disable-silent-rules --disable-static --docdir=/usr/share/doc/nanox-0.15_p20210222 --htmldir=/usr/share/doc/nanox-0.15_p20210222/html --with-sysroot=/ --libdir=/usr/lib64 --disable-static --enable-gcc-new-atomic-builtins --enable-performance --enable-shared --without-cellsdk --without-cuda --without-mcc --without-xdma --disable-allocator --disable-debug --enable-instrumentation --disable-memtracker --disable-resiliency --disable-task-callback --enable- ult --without-dlb --with-opencl --with-papi --with-extrae=/usr --without-gasnet --without-memkind --with-mpi=/usr --with-sqlite3=/usr

/bin/sh ../../libtool  --tag=CXX   --mode=link x86_64-pc-linux-gnu-g++ -pthread -include "new_decl.hpp" -Wall -Wextra -Wshadow -Wmissing-declarations -Wno-unused-parameter -Wno-missing-field-initializers -Werror -std=c++98 -O3 -Os -pipe
 -march=native  -module -avoid-version -L/usr/lib64 -lnanostrace -Wl,-O1 -Wl,--as-needed -o instrumentation/libnanox-instrumentation-extrae.la -rpath /usr/lib64/instrumentation instrumentation/instrumentation_libnanox_instrumentation_ex
trae_la-extrae.lo instrumentation/instrumentation_libnanox_instrumentation_extrae_la-ompi_services.lo                                                                                                                                       
libtool: link: x86_64-pc-linux-gnu-g++  -fPIC -DPIC -shared -nostdlib /usr/lib/gcc/x86_64-pc-linux-gnu/11.2.0/../../../../lib64/crti.o /usr/lib/gcc/x86_64-pc-linux-gnu/11.2.0/crtbeginS.o  instrumentation/.libs/instrumentation_libnanox_instrumentation_extrae_la-extrae.o instrumentation/.libs/instrumentation_libnanox_instrumentation_extrae_la-ompi_services.o   -lpthread -L/usr/lib64 -lnanostrace -Wl,--as-needed -L/usr/lib/gcc/x86_64-pc-linux-gnu/11.2.0 -L/usr/lib/gcc/x86_64-pc-linux-gnu/11.2.0/../../../../lib64 -L/lib/../lib64 -L/usr/lib/../lib64 -L/usr/lib/gcc/x86_64-pc-linux-gnu/11.2.0/../../../../x86_64-pc-linux-gnu/lib -L/usr/lib/gcc/x86_64-pc-linux-gnu/11.2.0/../../.. -lstdc++ -lm -lc -lgcc_s /usr/lib/gcc/x86_64-pc-linux-gnu/11.2.0/crtendS.o /usr/lib/gcc/x86_64-pc-linux-gnu/11.2.0/../../../../lib64/crtn.o  -pthread -O3 -Os -march=native -Wl,-O1   -pthread -Wl,-soname -Wl,libnanox-instrumentation-extrae.so -o instrumentation/.li
bs/libnanox-instrumentation-extrae.so                                                                                                                                                                                                       
libtool: link: ( cd "instrumentation/.libs" && rm -f "libnanox-instrumentation-extrae.la" && ln -s "../libnanox-instrumentation-extrae.la" "libnanox-instrumentation-extrae.la" )                                                           /bin/sh ../../libtool  --tag=CXX   --mode=compile x86_64-pc-linux-gnu-g++ -DHAVE_CONFIG_H -I. -I../..  -D_NANOS_INTERNAL -include "config.h" -include "nanox-config.h"  -I../.. -I../../src/arch/unix-os -I../../src/arch/cluster -I../../src/arch/common -I../../src/arch/gpu -I../../src/arch/fpga -I../../src/arch/opencl -I../../src/arch/smp -I../../src/arch/spu -I../../src/core -I../../src/support  -DLIBDIR='/usr/lib64' -DNANOS_INSTRUMENTATION_ENABLED -Iyes/include  -pthread -include "new_decl.hpp" -Wall -Wextra -Wshadow -Wmissing-declarations -Wno-unused-parameter -Wno-missing-field-initializers -Werror -std=c++98 -O3 -Os -pipe -march=native -c -o instrumentation/instrumentation_libnanox_instrumentation
_tg_dump_la-tg_dump.lo `test -f 'instrumentation/tg_dump.cpp' || echo './'`instrumentation/tg_dump.cpp                                                                                                                                      libtool: compile:  x86_64-pc-linux-gnu-g++ -DHAVE_CONFIG_H -I. -I../.. -D_NANOS_INTERNAL -include config.h -include nanox-config.h -I../.. -I../../src/arch/unix-os -I../../src/arch/cluster -I../../src/arch/common -I../../src/arch/gpu -I../../src/arch/fpga -I../../src/arch/opencl -I../../src/arch/smp -I../../src/arch/spu -I../../src/core -I../../src/support -DLIBDIR=/usr/lib64 -DNANOS_INSTRUMENTATION_ENABLED -Iyes/include -pthread -include new_decl.hpp -Wall -Wextra -Wshadow -Wmissing-declarations -Wno-unused-parameter -Wno-missing-field-initializers -Werror -std=c++98 -O3 -Os -pipe -march=native -c instrumentation/tg_dump.cpp  -fPIC -DPIC -o instrumentation/.libs/instrumentation_libnanox_instrumenta
tion_tg_dump_la-tg_dump.o                                                                                                                                                                                                                   
instrumentation/tg_dump.cpp:66:48: error: non-static data member initializers only available with ‘-std=c++11’ or ‘-std=gnu++11’ [-Werror]                                                                                                  
   66 |     bool _commutative_output_warning_printed = false;                                                                                                                                                                               
      |                                                ^~~~~                                                                                                                                                                                
instrumentation/tg_dump.cpp:67:46: error: non-static data member initializers only available with ‘-std=c++11’ or ‘-std=gnu++11’ [-Werror]                                                                                   
   67 |     bool _commutative_task_warning_printed = false;                                                                                                                                                                                 
      |                                              ^~~~~                                                                                                                                                                                  
instrumentation/tg_dump.cpp:68:48: error: non-static data member initializers only available with ‘-std=c++11’ or ‘-std=gnu++11’ [-Werror]                                                                                                  
   68 |     bool _advanced_api_event_warning_printed = false;                                                                                                                                                                               
      |                                                ^~~~~                                                                                                                                                                                
cc1plus: all warnings being treated as errors 

build fails when chapel is set

  CC       chapel/libnanox_chpl_init_a-chpl_init.o
In file included from chapel/chpl_init.c:20:
../../src/core/nanos-int.h:166:1: error: unknown type name ‘namespace’
 namespace nanos {
 ^~~~~~~~~
../../src/core/nanos-int.h:166:17: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘{’ token
 namespace nanos {
                 ^
../../src/core/nanos-int.h:170:14: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘:’ token
 typedef nanos::DataAccess nanos_data_access_t;
              ^
../../src/core/nanos-int.h:171:14: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘:’ token
 typedef nanos::CopyData nanos_copy_data_t;
              ^
In file included from chapel/chpl_nanos.h:42,
                 from chapel/chpl_init.c:21:
/opt/chapel/runtime/include/chpltypes.h:142:10: fatal error: chpl-locale-model.h: File o directory non esistente
 #include "chpl-locale-model.h"
          ^~~~~~~~~~~~~~~~~~~~~
compilation terminated.
make[3]: *** [Makefile:1457: chapel/libnanox_chpl_init_a-chpl_init.o] Error 1

you can found chpl-locale-model.h in the subdirectories localeModels/xxx
even configuring with

CFLAGS="-I/opt/chapel/runtime/include/Locale/Models/flat" CXXFLAGS="-I/opt/chapel/runtime/include/Locale/Models/flat" CC="gcc -I/opt/chapel/runtime/include/Locale/Models/flat" CXX="g++ -I/opt/chapel/runtime/include/Locale/Models/flat"

didn't work

error: ‘TaskExecutionException’ does not name a type

configured with ./configure --prefix=/usr --build=x86_64-pc-linux-gnu --host=x86_64-pc-linux-gnu --mandir=/usr/share/man --infodir=/usr/share/info --datadir=/usr/share --sysconfdir=/etc --localstatedir=/var/lib --datarootdir=/usr/share --disable-depend ency-tracking --disable-silent-rules --disable-static --docdir=/usr/share/doc/nanox-0.15_p20210222 --htmldir=/usr/share/doc/nanox-0.15_p20210222/html --with-sysroot=/ --libdir=/usr/lib64 --disable-static --enable-gcc-new-atomic-builtins --enable-performance --enable-shared --without-cellsdk --without-cuda --without-mcc --without-xdma --enable-allocator --disable-debug --enable-instrumentation --disable-memtracker --enable-resiliency --enable-task-callback --enable-ult --with-dlb --with-opencl --without-papi --with-ayudame=/usr --with-extrae=/usr --without-gasnet --without-jemalloc --without-memkind --with-mpi=/usr --with-sqlite3=/usr

libtool: compile:  x86_64-pc-linux-gnu-g++ -DHAVE_CONFIG_H -I. -I../../.. -D_NANOS_INTERNAL -include config.h -include nanox-config.h -I../../.. -I../../../src/arch/unix-os -I../../../src/arch/cluster -I../../../src/arch/common -I../../
../src/arch/gpu -I../../../src/arch/fpga -I../../../src/arch/opencl -I../../../src/arch/smp -I../../../src/arch/spu -I../../../src/core -I../../../src/support -DLIBDIR=/usr/lib64 -pthread -include new_decl.hpp -Wall -Wextra -Wshadow -Wm
issing-declarations -Wno-unused-parameter -Wno-missing-field-initializers -Werror -std=c++98 -O3 -Os -pipe -march=native -c x86-64/stack.cpp  -fPIC -DPIC -o x86-64/.libs/performance_libsmp_la-stack.o
In file included from ./smpthread.hpp:29, 
                 from ../../../src/core/basethread.hpp:35,                                                            
                 from ../../../src/core/schedule.hpp:35,
                 from ../../../src/core/workdescriptor.hpp:33,                                                        
                 from ../../../src/core/slicer.hpp:23,  
                 from ../../../src/core/system.hpp:29,   
                 from ../../../src/core/instrumentation.hpp:24,
                 from ../../../src/core/instrumentationmodule_decl.hpp:24,                                            
                 from ../../../src/support/atomic.hpp:28,                                                             
                 from smpplugin_decl.hpp:25,
                 from smpplugin.cpp:20:                                                                               
../../../src/arch/unix-os/pthread_decl.hpp:86:11: error: ‘TaskExecutionException’ does not name a type                
   86 |    throw (TaskExecutionException);                                                                            
      |           ^~~~~~~~~~~~~~~~~~~~~~                                                                              
In file included from ./smpthread.hpp:29,                                                                                                                                                                                                   
                 from ../../../src/core/basethread.hpp:35,                                                            
                 from ../../../src/core/schedule.hpp:35,                                                                                                                                                                                    
                 from ../../../src/core/workdescriptor.hpp:33,
                 from ../../../src/core/slicer.hpp:23,
                 from ../../../src/core/system.hpp:29,
                 from ../../../src/core/instrumentation.hpp:24,
                 from ../../../src/core/instrumentationmodule_decl.hpp:24,
                 from smpthread.cpp:26:
../../../src/arch/unix-os/pthread_decl.hpp:86:11: error: ‘TaskExecutionException’ does not name a type
   86 |    throw (TaskExecutionException);
      |           ^~~~~~~~~~~~~~~~~~~~~~
In file included from ./smpthread.hpp:29,
                 from ../../../src/core/basethread.hpp:35,
                 from ../../../src/core/schedule.hpp:35,
                 from ../../../src/core/workdescriptor.hpp:33,
                 from ../../../src/core/slicer.hpp:23,
                 from ../../../src/core/system.hpp:29,
                 from smpdd.cpp:22:
../../../src/arch/unix-os/pthread_decl.hpp:86:11: error: ‘TaskExecutionException’ does not name a type
   86 |    throw (TaskExecutionException);
      |           ^~~~~~~~~~~~~~~~~~~~~~
In file included from ./smpthread.hpp:29,
                 from ../../../src/core/basethread.hpp:35,
                 from ../../../src/core/schedule.hpp:35,
                 from ../../../src/core/workdescriptor.hpp:33,
                 from ../../../src/core/slicer.hpp:23,
                 from ../../../src/core/system.hpp:29,
                 from ../../../src/core/instrumentation.hpp:24,
                 from ../../../src/core/instrumentationmodule_decl.hpp:24,
                 from ../../../src/support/atomic.hpp:28,
                 from smpplugin_decl.hpp:25,
                 from smpplugin.cpp:20:
../../../src/arch/unix-os/pthread_decl.hpp:86:11: error: ‘TaskExecutionException’ does not name a type
   86 |    throw (TaskExecutionException);
      |           ^~~~~~~~~~~~~~~~~~~~~~

test test/03_api/api_slicer_for.c hang

configured with ./configure --prefix=/usr --build=x86_64-pc-linux-gnu --host=x86_64-pc-linux-gnu --mandir=/usr/share/man --infodir=/usr/share/info --datadir=/usr/share --sysconfdir=/etc --localstatedir=/var/lib --datarootdir=/usr/share --disable-dependency-tracking --disable-silent-rules --disable-static --docdir=/usr/share/doc/nanox-0.15_p20210818 --htmldir=/usr/share/doc/nanox-0.15_p20210818/html --with-sysroot=/ --libdir=/usr/lib64 --disable-static --enable-gcc-new-atomic-builtins --enable-performance --enable-shared --without-cellsdk --without-chapel --without-cuda --without-mcc --without-nextsim --without-xdma --disable-allocator --disable-memtracker --disable-debug --enable-instrumentation --disable-instrumentation-debug --enable-performance --disable-resiliency --disable-task-callback --enable-ult --without-opencl --without-ayudame --without-dlb --with-extrae=/usr --without-gasnet --without-hwloc --without-memkind --without-mpi --without-papi --with-sqlite3=/usr

I've tried more than one time but the tests completed only once

see also https://bugs.gentoo.org/809320

nanox cluster runtime error

Hi there,
I'm using ompss on ARM-based cluster (udoo boards) and everything went well (using the AXIOM Project materials).
Once I'm trying to port the same practice on a different cluster board which is X86_64 based, I faced a runtime error which is below:

Executing matrix multiplication on 8 boards...
WARNING: [?]plugin error=/home/udoo/nanox-install/lib/performance/libnanox-pe-cluster-mpi.so: undefined symbol: ompi_mpi_op_sum
terminate called after throwing an instance of 'nanos::FatalError'
what(): FATAL ERROR: [-1] Couldn't load Cluster support
matmul/matmul.sh: line 7: 28627 Aborted (core dumped) ~/matmul/dgemm_onelevel.perf
Primary job terminated normally, but 1 process returned
a non-zero exit code.. Per user-direction, the job has been aborted.
mpirun detected that one or more processes exited with non-zero status, thus causing
the job to be terminated. The first process to do so was:

Process name: [[62796,1],0]
Exit code: 134

I guess there is something related to openmpi configuration flags, but I'm not sure, below is the flags that I used to compile the repositories and the specification of the platform I have used :
Platform: ubuntu 16.04 (and also ubuntu 18.04 the same problem)
First installing openmpi: (I have tried both procedure and no success)
first try: sudo apt install openmpi-bin openmpi-bin openmpi-dev

second: cd ~/openmpi-1.10.2/./configure --enable-mpi-threads -> make- make install

then:

./configure --prefix=/home/$USER/gasnet-install --disable-aligned-segments --disable-pshm --disable-seq --disable-parsync --with-mpi-cc="mpicc -fPIC -DPIC" --with-mpi-cxx="mpicxx -fPIC -DPIC" CC="gcc -fPIC -DPIC" CFLAGS="-fPIC -DPIC" CXX="g++ -fPIC -DPIC" CXXFLAGS="-fPIC -DPIC" CPPFLAGS="-DPIC" LDFLAGS="-fPIC" --enable-mpi --enable-udp --enable-smp --disable-ibv
make
make install
then:

./configure --prefix=/home/$USER/nanox-install --with-gasnet=/home/$USER/gasnet-install --disable-debug --with-mpi-include=/usr/include/mpi --with-mpi-lib=/usr/lib MPICXX=mpicxx
make
make install
then:
configure --prefix=/home/$USER/mcxx-install --enable-ompss --enable-tl-openmp-nanox --with-nanox=/home/$USER/nanox-install
make
make install
I exported the PATH, like PATH=/home/udoo/nanox-install/bin:/home/udoo/gasnet-install/bin:/home/udoo/mcxx-install/bin:$PATH and exported the LD_LIBRARY_PATH, I've checked the openmpi linked libraries, shown below:

$mpicxx -show
$g++ -I/usr/local/include -pthread -Wl,-rpath -Wl,/usr/local/lib -Wl,--enable-new-dtags -L/usr/local/lib -lmpi_cxx -lmpi

$mpicc -show
$gcc -I/usr/local/include -pthread -Wl,-rpath -Wl,/usr/local/lib -Wl,--enable-new-dtags -L/usr/local/lib -lmpi
$
ldd /usr/bin/mpicc.openmpi
linux-vdso.so.1 => (0x00007ffdf031f000)
libopen-pal.so.13 => /usr/local/lib/libopen-pal.so.13 (0x00007f4351616000)
libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 (0x00007f43513f9000)
libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007f435102f000)
libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x00007f4350e2b000)
librt.so.1 => /lib/x86_64-linux-gnu/librt.so.1 (0x00007f4350c23000)
libutil.so.1 => /lib/x86_64-linux-gnu/libutil.so.1 (0x00007f4350a20000)
/lib64/ld-linux-x86-64.so.2 (0x00007f43518f9000)

after all, tried to run MatrixMultiplication provided by BSC, I faced the runtime error as can be seen above,

I really appreciate any help.

thanks

Feature Request: Add support for Valgrind

Valgrind offers an API [1] that allows marking memory regions as stacks. This helps to reduce the number of false positives when using Valgrind in combination with OmpSs.

Such an instrumentation could be added to a debug build if valgrind has been detected during configure. The change should be minimal (3 lines in smpdd.cpp plus integration into the build system).

[1] http://valgrind.org/docs/manual/manual-core-adv.html

jemalloc check not needed

memkind bundles jemalloc (it's statically linked inside) so I don't get why a check for it is needed
I've removed any reference to jemalloc from the m4 macro

--- a/m4/ax_check_memkind.m4
+++ b/m4/ax_check_memkind.m4
@@ -25,17 +25,10 @@
 # DESCRIPTION
 #
 #   Check whether Memkind path to the headers and libraries are correctly specified.
-#   Also checks Jemalloc library availability (required by libmemkind).
 #
 
 AC_DEFUN([AX_CHECK_MEMKIND],[
 
-AC_ARG_WITH(jemalloc,
-[AS_HELP_STRING([--with-jemalloc,--with-jemalloc=PATH],
-                [search in system directories or specify prefix directory for installed jemalloc package.])],
-[],
-[with_jemalloc=no])
-
 AC_ARG_WITH(memkind,
 [AS_HELP_STRING([--with-memkind,--with-memkind=PATH],
                 [search in system directories or specify prefix directory for installed memkind package.])],
@@ -45,7 +38,7 @@
 AS_IF([test "$with_memkind" != no],[
 
   memkindinc=-I$with_memkind/include
-  memkindlib="-L$with_jemalloc/lib -Wl,-rpath,$with_jemalloc/lib -L$with_memkind/lib -Wl,-rpath,$with_memkind/lib"
+  memkindlib="-L$with_memkind/lib -Wl,-rpath,$with_memkind/lib"
   
   AC_LANG_PUSH([C++])
 
@@ -54,16 +47,6 @@
   AX_VAR_PUSHVALUE([LDFLAGS],[$LDFLAGS $memkindlib])
   AX_VAR_PUSHVALUE([LIBS],[])
 
-  AC_SEARCH_LIBS([je_malloc], [jemalloc], [
-    jemalloc=yes
-  ],[
-    AC_SEARCH_LIBS([jemk_malloc], [jemalloc],
-      [jemalloc=yes],
-      [jemalloc=no])
-  ])
-
-  AS_IF([test "$jemalloc" = yes],[
-
     AC_CHECK_HEADERS([memkind.h],
       [memkind=yes],
       [memkind=no])
@@ -74,14 +57,6 @@
         [memkind=no])
     ])dnl
 
-  ],[
-    AC_MSG_ERROR([
-------------------------------
-Could not find libjemalloc (required by memkind)
-Please, check that the provided directories are correct.
-------------------------------])
-  ])dnl
-
   AS_IF([test "$memkind" = yes],[
     AC_DEFINE([MEMKIND_SUPPORT],[],[Enables memkind support])
   ],[

fatal error: stdlib.h: No such file or directory

configured with
./configure --prefix=/usr --build=x86_64-pc-linux-gnu --host=x86_64-pc-linux-gnu --mandir=/usr/share/man --infodir=/usr/share/info --datadir=/usr/share --sysconfdir=/etc --localstatedir=/var/lib --datarootdir=/usr/share --disable-depend ency-tracking --disable-silent-rules --disable-static --docdir=/usr/share/doc/nanox-0.15_p20210222 --htmldir=/usr/share/doc/nanox-0.15_p20210222/html --with-sysroot=/ --libdir=/usr/lib64 --disable-static --enable-gcc-new-atomic-builtins --enable-performance --enable-shared --without-cellsdk --without-cuda --without-mcc --without-xdma --enable-allocator --disable-debug --enable-instrumentation --enable-memtracker --disable-resiliency --enable-task-callback --enable-ult --with-dlb --with-opencl --with-ayudame=/usr --with-hwloc=/usr --with-extrae=/usr --with-gasnet=/usr --with-memkind=/usr --with-mpi=/usr --with-papi=/usr --with-sqlite3=/usr

libtool: compile:  x86_64-pc-linux-gnu-g++ -DHAVE_CONFIG_H -I. -I../../.. -D_NANOS_INTERNAL -include config.h -include nanox-config.h -I /usr/include -I../../.. -I../../../src/arch/unix-os -I../../../src/arch/cluster -I../../../src/arch
/common -I../../../src/arch/gpu -I../../../src/arch/fpga -I../../../src/arch/opencl -I../../../src/arch/smp -I../../../src/arch/spu -I../../../src/core -I../../../src/support -DLIBDIR=/usr/lib64 -DNANOS_INSTRUMENTATION_ENABLED -isystem 
/usr/include -I/usr/include/smp-conduit -pthread -include new_decl.hpp -Wall -Wextra -Wshadow -Wmissing-declarations -Wno-unused-parameter -Wno-missing-field-initializers -std=c++98 -O3 -Os -pipe -march=native -c gasnetapi.cpp  -fPIC -D
PIC -o .libs/instrumentation_libnanox_pe_cluster_smp_la-gasnetapi.o                                                                                                                                                                         
In file included from ../../../src/support/allocator_decl.hpp:28,
                 from ../../../src/core/instrumentation_decl.hpp:212,
                 from ../../../src/core/instrumentationcontext_decl.hpp:25,                                           
                 from ../../../src/core/workdescriptor_decl.hpp:38,                                 
                 from remoteworkdescriptor_decl.hpp:23,                                                               
                 from netwd_decl.hpp:22,                                                                              
                 from netwd.cpp:20:                                                                                                                                                                                                         
/usr/lib/gcc/x86_64-pc-linux-gnu/11.2.0/include/g++-v11/cstdlib:75:15: fatal error: stdlib.h: No such file or directory
   75 | #include_next <stdlib.h>                                                                                      
      |               ^~~~~~~~~~
compilation terminated.

Files with w+x sections

Gentoo's CI found this QA issue in nanox

 * QA Notice: The following files contain writable and executable sections
 *  Files with such sections will not work properly (or at all!) on some
 *  architectures/operating systems.  A bug should be filed at
 *  https://bugs.gentoo.org/ to make sure the issue is fixed.
 *  For more information, see:
 * 
 *    https://wiki.gentoo.org/wiki/Hardened/GNU_stack_quickstart
 * 
 *  Please include the following list of files in your report:
 *  Note: Bugs should be filed for the respective maintainers
 *  of the package in question and not [email protected].
 * RWX --- --- usr/lib64/instrumentation/libnanox.so.1.0.0
 * RWX --- --- usr/lib64/performance/libnanox.so.1.0.0

Full log
See bug

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.