Install IDF Espressif make menuconfig fatal error - makefile

I want to install the Espressif IDF on my Raspberry PI 3.
I've followed a tutorial to clone github files and so one...
I'm at the step where I have to "make menuconfig" but I get a fatal error.
The fatal error message is :
pi#raspberrypi:~/ESP32/premier $ make menuconfig
make[1]: Entering directory '/home/pi/ESP32/esp-idf/tools/kconfig'
cc -D_GNU_SOURCE -D_DEFAULT_SOURCE -DCURSES_LOC="<ncurses.h>" -DLOCALE -MD -c -o mconf.o mconf.c
mconf.c:1047:1: fatal error: opening dependency file mconf.d: Permission denied
}
^
compilation terminated.
<builtin>: recipe for target 'mconf.o' failed
make[1]: *** [mconf.o] Error 1
make[1]: Leaving directory '/home/pi/ESP32/esp-idf/tools/kconfig'
make: *** No rule to make target '/home/pi/ESP32/esp-idf/tools/kconfig/conf', needed by '/home/pi/ESP32/esp-idf/tools/kconfig/mconf'. Stop.
Would someone has encountered this issue ???

Permission based problems, either:
* As mentioned in the comments, restart tutorial by not deviating, or
* Fix permissions, in your "home"-case (otherwise /opt/...)
chmod -R 777 /home/pi/ESP32/esp-idf/

Related

how to install gdb 9.1 on debian from source code

I like to compile and use gdb 9.1. the source is here https://ftp.gnu.org/gnu/gdb/
Plus when I type make in config directory make says make: *** No targets specified and no makefile found. Stop. because there is not make file. on root folder there are Makefile.in and Makefile.tpl and Makefile.def. what are these files. and how can I install gdb 9 from source code.
Update
After the comment changes I made in command by G.M I am getting this error I think almost at the end of compiling process
mv GDBvn.new GDBvn.texi
/home/fawad/Desktop/gdb/gdb/gdb-9.1.1/missing makeinfo --split-size=5000000 --split-size=5000000 -I /home/fawad/Desktop/gdb/gdb
/gdb-9.1.1/gdb/doc/../../readline/readline/doc -I /home/fawad/Desktop
/gdb/gdb/gdb-9.1.1/gdb/doc/../mi -I /home/fawad/Desktop/gdb/gdb/gdb-9.1.1/gdb/doc
-o gdb.info /home/fawad/Desktop/gdb/gdb/gdb-9.1.1/gdb/doc/gdb.texinfo
/home/fawad/Desktop/gdb/gdb/gdb-9.1.1/missing: 81: makeinfo: not found
WARNING: 'makeinfo' is missing on your system.
You should only need it if you modified a '.texi' file, or
any other file indirectly affecting the aspect of the manual.
You might want to install the Texinfo package:
http://www.gnu.org/software/texinfo/
The spurious makeinfo call might also be the consequence of
using a buggy 'make' (AIX, DU, IRIX), in which case you might
want to install GNU make:
http://www.gnu.org/software/make/
make[4]: *** [Makefile:490: gdb.info] Error 127
make[4]: Leaving directory '/home/fawad/Desktop/gdb/gdb/gdb-9.1/build/build/gdb/doc'
make[3]: *** [Makefile:2010: subdir_do] Error 1
make[3]: Leaving directory '/home/fawad/Desktop/gdb/gdb/gdb-9.1/build/build/gdb'
make[2]: *** [Makefile:1655: all] Error 2
make[2]: Leaving directory '/home/fawad/Desktop/gdb/gdb/gdb-9.1/build/build/gdb'
make[1]: *** [Makefile:9564: all-gdb] Error 2
make[1]: Leaving directory '/home/fawad/Desktop/gdb/gdb/gdb-9.1/build/build'
make: *** [Makefile:852: all] Error 2

make [2]: **** [Makefile:44: envi_slc_decode] Error 1, while installing gmtsar in fedora 32

This is my first question in stack overflow and hope I make it clear.
I am trying to install a program (gmtsar) in fedora 32. However, the compilation was not complete and two errors return at the end.
I ran the following commands:
sudo -i
cd /usr/local
git clone --branch 6.0 https://github.com/gmtsar/gmtsar GMTSAR
cd GMTSAR
autoconf
./configure --with-orbits-dir=/usr/local/orbits
make
make install
after make and mak install the following errors return:
collect2: error: ld returned 1 exit status
make[2]: *** [Makefile:44: envi_slc_decode] Error 1
make[2]: Leaving directory '/usr/local/GMTSAR/preproc/ENVI_preproc/ENVI_SLC_decode'
make[1]: *** [Makefile:8: all] Error 2
make[1]: Leaving directory '/usr/local/GMTSAR/preproc/ENVI_preproc'
make: *** [Makefile:37: preprocess] Error 2
I followed the same procedures in ubuntu 16.04 and the compilation was complete without errors.
Can anyone help me understand why I got these errors and how to fix them, please?

Error while building sodor emulators, riscv-sodor

I installed riscv,riscv-gnu-toolchain and riscv-tools and want to get riscv-sodor. To do that i followed the steps from https://github.com/librecores/riscv-sodor , succesfully installed verilator and front-end server but after that i have to build sodor emulators and on first step by doing make command i got this error
make -C emulator/rv32_1stage/
make[1]: Entering directory '/home/nemanja/riscv-sodor/emulator/rv32_1stage'
verilator --cc --exe --top-module Top +define+PRINTF_COND=\$c\(\"verbose\"\) --assert --output-split 20000 --x-assign unique -I/home/nemanja/riscv-sodor/vsrc -O3 -CFLAGS " -O1 -std=c++11 -g -I/home/nemanja/riscv-sodor/emulator/common -I/home/nemanja/riscv-sodor/riscv-fesvr -L/opt/riscv/lib -Wl,-rpath,/opt/riscv/lib -L. -lpthread -DVERILATOR -include /home/nemanja/riscv-sodor/emulator/common/verilator.h" \
-o /home/nemanja/riscv-sodor/emulator/rv32_1stage/emulator generated-src/Top.v /home/nemanja/riscv-sodor/vsrc/SimDTM.v -LDFLAGS " -L/opt/riscv/lib -Wl,-rpath,/opt/riscv/lib -L. -lpthread" /home/nemanja/riscv-sodor/emulator/common/emulator.cpp /home/nemanja/riscv-sodor/riscv-fesvr/build/libfesvr.so /home/nemanja/riscv-sodor/emulator/rv32_1stage/SimDTM.o
/bin/sh: 1: verilator: not found
/home/nemanja/riscv-sodor/emulator/common/Makefile.include:83: recipe for target 'emulator' failed
make[1]: *** [emulator] Error 127
make[1]: Leaving directory '/home/nemanja/riscv-sodor/emulator/rv32_1stage'
Makefile:104: recipe for target 'emulator/rv32_1stage/emulator' failed
make: *** [emulator/rv32_1stage/emulator] Error 2
Because i am really new to this all, i don't have any idea what could be problem.
I would appreciate any possible help in troubleshooting...
Thank you.
That specific error is due to verilator not being installed and on your $PATH.
/bin/sh: 1: verilator: not found
Once you get that installed for your operating system, you should get past this specific issue.

Troubleshooting clang error to get C++ code in CLion to work

I'm an inexperienced programmer so bear with me if this little sense. I'm trying to run a basic "hello world" kind of program in CLion, except I'm trying to print out a value in the main.cpp file from a header and cpp file. I'm using MacOS and everything is update in terms of software. When I try to build or run the program, it gives me these errors:
====================[ Build | untitled1 | Debug ]===============================
/Applications/CLion.app/Contents/bin/cmake/mac/bin/cmake --build /Users/anshuldaga/untitled1/cmake-build-debug --target untitled1 -- -j 2
[ 33%] Building CXX object CMakeFiles/untitled1.dir/main.cpp.o
[ 66%] Building CXX object CMakeFiles/untitled1.dir/test.cpp.o
make[3]: /Library/Developer/CommandLineTools/usr/bin/c++: Permission denied
make[3]: /Library/Developer/CommandLineTools/usr/bin/c++: Permission denied
make[3]: *** [CMakeFiles/untitled1.dir/main.cpp.o] Error 1
make[3]: *** Waiting for unfinished jobs....
make[3]: *** [CMakeFiles/untitled1.dir/test.cpp.o] Error 1
make[2]: *** [CMakeFiles/untitled1.dir/all] Error 2
make[1]: *** [CMakeFiles/untitled1.dir/rule] Error 2
make: *** [untitled1] Error 2
I've already tried running the sudo g++ main.cpp command and it gives me this error:
clang: error: linker command failed with exit code 1 (use -v to see invocation)
Based off my research, I know that clang is the compiler for c++ and a linker error is basically when something can't find the right files or library.
I've uninstalled and reinstalled Xcode, did the
sudo xcode-select -switch /Library/Developer/CommandLineTools/
command. I'm not sure what to do at this point. Any help would be greatly appreciated, thank you!
According to this(archive.org) old post from the CLion forum, the xcode license agreement might be the issue. Try to start xcode and agree to the license, or run sudo xcodebuild -license.

Compile Ruby from source on AIX 7.1

I am trying to compile Ruby 2.4.5 from source using gcc compiler on AIX 7.1. The configure works fine, but the make fails giving an error C is not a recognized flag. Anybody faced the same issue and managed to compile ruby on AIX 7.1?
Steps followed:
1) ./configure --disable-install-doc CC="gcc" CFLAGS="-maix64 -mminimal-toc" CXX="g++" CXXFLAGS="-maix64 -mminimal-toc" NM="nm -X64" AR="ar -X64" LDFLAGS="-maix64" EXTLDFLAGS=" -- works perfectly fine
2) make - fails with the below error
make: Not a recognized flag: C
usage: make [-einqrst] [-k|-S] [-d[A|adg[1|2]mstv]] [-D variable] [-f makefile] [-j [jobs]] [variable=value ...] [target ...]
make: 1254-004 The error code from the last command is 2.
Stop.
make: 1254-004 The error code from the last command is 2.
Stop.
make: 1254-004 The error code from the last command is 2.
Update :
Switching to GNU make gives the below error:
Making all in man
make[5]: Entering directory '/test/ruby-2.4.5/tst/ext/fiddle/libffi-3.2.1/man'
make[5]: Nothing to be done for 'all'.
make[5]: Leaving directory '/test/ruby-2.4.5/tst/ext/fiddle/libffi-3.2.1/man'
make[5]: Entering directory '/test/ruby-2.4.5/tst/ext/fiddle/libffi-3.2.1'
CC src/prep_cif.lo
CC src/types.lo
CC src/raw_api.lo
CC src/java_raw_api.lo
CC src/closures.lo
CC src/powerpc/ffi_darwin.lo
../../../../ext/fiddle/libffi-3.2.1/src/powerpc/ffi_darwin.c: In function 'ffi_p rep_args':
../../../../ext/fiddle/libffi-3.2.1/src/powerpc/ffi_darwin.c:112:17: warning: un used variable 'abi' [-Wunused-variable]
const ffi_abi abi = ecif->cif->abi;
^
CPPAS src/powerpc/aix.lo
libtool: compile: unable to infer tagged configuration
libtool: compile: specify a tag with `--tag'
Makefile:1335: recipe for target 'src/powerpc/aix.lo' failed
make[5]: *** [src/powerpc/aix.lo] Error 1
make[5]: Leaving directory '/test/ruby-2.4.5/tst/ext/fiddle/libffi-3.2.1'
Makefile:1596: recipe for target 'all-recursive' failed
make[4]: *** [all-recursive] Error 1
make[4]: Leaving directory '/test/ruby-2.4.5/tst/ext/fiddle/libffi-3.2.1'
Makefile:730: recipe for target 'all' failed
make[3]: *** [all] Error 2
make[3]: Leaving directory '/test/ruby-2.4.5/tst/ext/fiddle/libffi-3.2.1'
Makefile:370: recipe for target 'libffi-3.2.1/.libs/libffi_convenience.a' failed
make[2]: *** [libffi-3.2.1/.libs/libffi_convenience.a] Error 2
make[2]: Leaving directory '/test/ruby-2.4.5/tst/ext/fiddle'
exts.mk:212: recipe for target 'ext/fiddle/all' failed
make[1]: *** [ext/fiddle/all] Error 2
make[1]: Leaving directory '/test/ruby-2.4.5/tst'
uncommon.mk:220: recipe for target 'build-ext' failed
make: *** [build-ext] Error 2
The issue is that you are using AIX's built-in copy of make and it does not support the command-line option -C. That option is available in GNU make.
If you run make -v and do not see output like the following then you are not using GNU make:
GNU Make 3.81
Copyright (C) 2006 Free Software Foundation, Inc.
Run the command which make and it will return either /usr/bin/make or /opt/freeware/bin/make (or a similar path outside of /usr/bin):
If it returns /usr/bin/make then you do not have GNU make installed on your system and will need to follow one of several tutorials to get it installed on AIX.
If it returns /opt/freeware/bin/make then you do have GNU make installed, but it's not reflected in $PATH. You can add it to your path temporarily while you compile Ruby by running export PATH=/opt/freeware/bin:$PATH before you run the make command.
Update:
I would encourage you to open a separate question for your current build trouble, since the original question was about the -C flag for make not working on AIX, and now you have a separate question about running GNU make with an entirely different set of issues and possible solutions.
That said, it's possible you may be able to resolve your issue by starting over and running ./configure LIBTOOL='/usr/bin/libtool --tag=CC' (or whatever your path is to libtool). This is based off the following messages:
libtool: compile: unable to infer tagged configuration
libtool: compile: specify a tag with `--tag'
If this doesn't work then you'll probably have to edit the Makefile by looking for those specific invocations of libtool and append --tag=CC to them one by one until you're able to progress beyond these errors.
Both solutions are assuming that the only code being compiled is C. To my knowledge, everything in MRI that needs to be compiled is written in C, but if anything is written in C++ then the libtool invocations would require --tag=CXX. You can read more about tags here.

Resources