I installed CentOS 7 on a Macbook Pro early 2015 with Broadcom BCM43602 wifi chip. I've tried all other methods by digging through the CentOS documentation about wifi setup. I finally came to realize that a potential solution is to compile backports for the brcmfmac kernel module.
Running kernel
Linux centos7.localdomain 3.10.0-327.13.1.el7.x86_64 #1 SMP Thu Mar 31 16:04:38 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux
What I did
Downloaded and unzipped backport from https://www.kernel.org/pub/linux/kernel/projects/backports/stable/
Read backport documentation
Ran make defconfig-brcmfmac
Ran make and was greeted with errors.
Log of commands and output below.
[admin#centos7 backports-4.0.1-1]$ make mrproper
CLEAN /home/admin/Documents/backports-4.0.1-1/.tmp_versions
[admin#centos7 backports-4.0.1-1]$ make defconfigs-brcmfmac
Generating local configuration database from kernel ... done.
make[1]: *** No rule to make target `defconfigs-brcmfmac'. Stop.
make: *** [defconfigs-brcmfmac] Error 2
[admin#centos7 backports-4.0.1-1]$ make defconfig-brcmfmac
cc -Wall -Wmissing-prototypes -Wstrict-prototypes -O2 -fomit-frame-pointer -c -o conf.o conf.c
cc -Wall -Wmissing-prototypes -Wstrict-prototypes -O2 -fomit-frame-pointer -c -o zconf.tab.o zconf.tab.c
cc conf.o zconf.tab.o -o conf
boolean symbol HWMON tested for 'm'? test forced to 'n'
boolean symbol HWMON tested for 'm'? test forced to 'n'
#
# configuration written to .config
#
[admin#centos7 backports-4.0.1-1]$ make
make[5]: `conf' is up to date.
boolean symbol HWMON tested for 'm'? test forced to 'n'
boolean symbol HWMON tested for 'm'? test forced to 'n'
#
# configuration written to .config
#
Building backport-include/backport/autoconf.h ... done.
CC [M] /home/admin/Documents/backports-4.0.1-1/compat/main.o
In file included from include/linux/rcupdate.h:43:0,
from /home/admin/Documents/backports-4.0.1-1/backport-include/linux/rcupdate.h:3,
from include/linux/srcu.h:33,
from include/linux/notifier.h:15,
from include/linux/memory_hotplug.h:6,
from include/linux/mmzone.h:824,
from include/linux/gfp.h:5,
from include/linux/kmod.h:22,
from include/linux/module.h:13,
from /home/admin/Documents/backports-4.0.1-1/backport-include/linux/module.h:3,
from /home/admin/Documents/backports-4.0.1-1/compat/main.c:1:
/home/admin/Documents/backports-4.0.1-1/backport-include/linux/completion.h:14:20: error: redefinition of ‘reinit_completion’
static inline void reinit_completion(struct completion *x)
^
In file included from /home/admin/Documents/backports-4.0.1-1/backport-include/linux/completion.h:3:0,
from include/linux/rcupdate.h:43,
from /home/admin/Documents/backports-4.0.1-1/backport-include/linux/rcupdate.h:3,
from include/linux/srcu.h:33,
from include/linux/notifier.h:15,
from include/linux/memory_hotplug.h:6,
from include/linux/mmzone.h:824,
from include/linux/gfp.h:5,
from include/linux/kmod.h:22,
from include/linux/module.h:13,
from /home/admin/Documents/backports-4.0.1-1/backport-include/linux/module.h:3,
from /home/admin/Documents/backports-4.0.1-1/compat/main.c:1:
include/linux/completion.h:86:20: note: previous definition of ‘reinit_completion’ was here
static inline void reinit_completion(struct completion *x)
^
make[6]: *** [/home/admin/Documents/backports-4.0.1-1/compat/main.o] Error 1
make[5]: *** [/home/admin/Documents/backports-4.0.1-1/compat] Error 2
make[4]: *** [_module_/home/admin/Documents/backports-4.0.1-1] Error 2
make[3]: *** [modules] Error 2
make[2]: *** [modules] Error 2
make[1]: *** [modules] Error 2
make: *** [default] Error 2
What I am missing here?
4.0.1?
centos 7 is based on 3.10 kernels, except Red Hat applied plenty of custom patches and the codebase already diverged from upstream 3.10. There is a chance an upstream patch will work anyway due to luck and/or kabi guarantees.
But the real question is why are you trying to use centos 7 on a dekstop matchine. If you want to use a distro tied to red hat you can try fedora. Otherwise try ubuntu.
Related
I want to compile gcc10.1 in a master node of a cluster. When i execute make, i get an error: cc1: internal compiler error: Segmentation fault 0x12b2b57 crash_signal
The protocol of compilation and the error are shown below.
1. cd gcc-10.1.0
2. ./contrib/download_prerequisites
3. mkdir build-by-wangshuai install-by-wangshuai
4. cd build-by-wangshuai
5. ../configure --disable-multilib --prefix=/data/yiming-wangshuai/software/gcc-10.1.0/install-by-wangshuai
6. make VERBOSE=1
Then i get an error (i copy the end information output from "make VERBOSE=1"):
...
...
mv tmp2-tm.texi tmp-tm.texi
/bin/sh ../../gcc/../move-if-change tmp-tm.texi tm.texi
cp doc/gcc.1 doc/g++.1
/data/yiming-wangshuai/software/gcc-10.1.0/build-by-wangshuai/./gcc/xgcc -B/data/yiming-
wangshuai/software/gcc-10.1.0/build-by-wangshuai/./gcc/ -xc -nostdinc /dev/null -S -o
/dev/null -fself-test=../../gcc/testsuite/selftests
cc1: internal compiler error: Segmentation fault
0x12b2b57 crash_signal
../../gcc/toplev.c:328
0x7fbd8894dfef ???
/root/glibc-2.23/signal/../sysdeps/unix/sysv/linux/x86_64/sigaction.c:0
0x7fbd88941195 __gconv_transform_utf8_internal
../iconv/skeleton.c:665
0x7fbd8893c5b1 __gconv
/root/glibc-2.23/iconv/gconv.c:79
0x7fbd8893be20 iconv
/root/glibc-2.23/iconv/iconv.c:52
0x23ea6ab convert_using_iconv
../../libcpp/charset.c:579
0x23efdd5 cpp_interpret_string_1
../../libcpp/charset.c:1728
0x23effca cpp_interpret_string(cpp_reader*, cpp_string const*, unsigned long, cpp_string*, cpp_ttype)
../../libcpp/charset.c:1784
0x23de858 test_lexer_string_locations_ebcdic
../../gcc/input.c:2507
0x23e3d85 selftest::for_each_line_table_case(void (*)(selftest::line_table_case const&))
../../gcc/input.c:3571
0x23e4e53 selftest::input_c_tests()
../../gcc/input.c:3710
0x22d7111 selftest::run_tests()
../../gcc/selftest-run-tests.c:84
0x12b62ab toplev::run_self_tests()
../../gcc/toplev.c:2337
Please submit a full bug report,
with preprocessed source if appropriate.
Please include the complete backtrace with any bug report.
See <https://gcc.gnu.org/bugs/> for instructions.
make[3]: *** [s-selftest-c] Error 1
make[3]: Leaving directory `/data/yiming-wangshuai/software/gcc-10.1.0/build-by-wangshuai/gcc'
make[2]: *** [all-stage1-gcc] Error 2
make[2]: Leaving directory `/data/yiming-wangshuai/software/gcc-10.1.0/build-by-wangshuai'
make[1]: *** [stage1-bubble] Error 2
make[1]: Leaving directory `/data/yiming-wangshuai/software/gcc-10.1.0/build-by-wangshuai'
make: *** [all] Error 2
Next, i introduce the configuration environment of the master node.
System: Centos 7.8
CPU: Intel(R) Xeon(R) Gold 5218R
GPU: Tesla V100s
Driver Version: 460.73.01 CUDA Version: 11.2
I am not sure how to diagnose and resolve this issue. Much appreciate if anyone can help me.
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.
When I try to build Artery on Ubuntu 16.04. the following happens after invoking
$ cmake --build /home/hardt/Veins/artery-master/build
[ 23%] Linking CXX shared library libartery.so
/usr/bin/ld: /usr/local/lib/libvanetza_btp.a(data_request.cpp.o): relocation R_X86_64_32 against `.bss' can not be used when making a shared
object; recompile with -fPIC
/usr/local/lib/libvanetza_btp.a: error adding symbols: Bad value
collect2: error: ld returned 1 exit status
src/artery/CMakeFiles/artery.dir/build.make:954: recipe for target'src/artery/libartery.so' failed
make[2]: *** [src/artery/libartery.so] Error 1
CMakeFiles/Makefile2:229: recipe for target 'src/artery/CMakeFiles/artery.dir/all' failed
make[1]: *** [src/artery/CMakeFiles/artery.dir/all] Error 2
Makefile:83: recipe for target 'all' failed
make: *** [all] Error 2
As I am not all that familiar with building source on Unix systems I am not quite sure how to deal with this error.
I am using cmake version 3.9.3, boost 1.65.1 and crypto++ 5.6.4 the geographiclib built without error as well.
As one can read in the comments, the problem is solved.
The path to the vanetza directory VANETZA_DIR in the cmake configuration was wrong. Correcting this via ccmake solved the problem.
I am trying to build from the bigloo scheme's latest source 3.8a on a Linux Mint 12 (lisa), which is Ubuntu 11 (Oneric) derivative:
Here is my "configure":
./configure --enable-pthread --enable-fthread --enable-ssl --enable-sqlite --enable-web --enable-multimedia --enable-mail --enable-calendar --enable-pkgcomp --enable-pkglib --enable-gstreamer --enable-text --enable-srfi1 --enable-srfi27 --enable-crypto --enable-openpgp --enable-phone --enable-alsa --enable-mpg123 --enable-csv --jvm=yes
** Configuration summary **
Release features:
release number.............. 3.8a
supported backends.......... native:yes JVM:yes
default backend............. native
additional APIs............. pthread fthread sqlite web multimedia mail calendar pkgcomp pkglib text srfi1 srfi27 packrat crypto openpgp phone mpg123 csv
native threads support...... yes
openssl support............. no
sqlite support.............. sqltiny + sqlite
dynamic libraries support... yes
Bee configuration:
bee support................. partial
emacs....................... emacs
emacs brand................. emacs23
Implementation details:
tuning...................... standard
cc.......................... gcc
gc.......................... custom (bigloogc-3.8a, v731)
Java version................ 1.3
bignum support.............. gmp (5.0.1)
Directories where Bigloo will be installed:
binaries.................... /usr/local/bin
libraries................... /usr/local/lib
files directory............. bigloo/3.8a
standard zip................ /usr/local/lib/bigloo/3.8a
standard dll................ /usr/local/lib/bigloo/3.8a
manual pages................ /usr/local/man/man1
info documentation.......... /usr/local/info
lisp files..................
temporary build dir......... /tmp
The "make" succeeds; however "make test" fails for pthread
*** pthread **********
make[2]: Entering directory `/home/liew/Downloads/bigloo3.8a/api/pthread/recette'
/home/liew/Downloads/bigloo3.8a/bin/bigloo -c -call/cc -O3 -fcfa-arithmetic -q recette.scm -o recette.o
/home/liew/Downloads/bigloo3.8a/bin/bigloo -O3 -fcfa-arithmetic -q recette.o -o recette
/usr/bin/ld: recette: hidden symbol `pthread_atfork' in /usr/lib/i386-linux-gnu/libpthread_nonshared.a(pthread_atfork.oS) is referenced by DSO
/usr/bin/ld: final link failed: Bad value
collect2: ld returned 1 exit status
make[2]: *** [recette] Error 1
make[2]: Leaving directory `/home/liew/Downloads/bigloo3.8a/api/pthread/recette'
make[1]: *** [c-test] Error 1
make[1]: Leaving directory `/home/liew/Downloads/bigloo3.8a'
make: *** [test] Error 2
According to this excellent post about this pthread issue, we need to rearrange the command line parameters while linking pthread library. However, I was unable to find the required Makefile code - probably because it relies on the Makefile default that links the library in a certain way.
Any help will be appreciated.
The problem is probably fixed in newer versions of bigloo.
I'm trying to create a project as a shared library in OS X using CMake 2.8 and gcc 4.6 (from macports). When CMake gets to the point of linking my library into a .dylib, I get the following error from gcc:
g++ -dynamiclib -headerpad_max_install_names -o libmycoollibrary.dylib etc...
g++: error: unrecognized option '-h'
make[2]: *** [libnrtCore.dylib] Error 1
make[1]: *** [CMakeFiles/nrtCore.dir/all] Error 2
make: *** [all] Error 2
This -headerpad_max_install_names seems to be the problem, but I've never seen it before. Does anyone know how to either get CMake to not include this option, or to get GCC to accept this option?
You can re-build cmake to fix this -- it's apparently generating code for the XCode / Darwin version of g++ (a special version of 4.2), which accepts a number of non-standard linker flags.
Just change the Modules/Platform/Darwin*.cmake files and re-build. The culprit lines look like this:
SET(CMAKE_CXX_LINK_FLAGS "-Wl,-search_paths_first -headerpad_max_install_names")