'2020/12'에 해당되는 글 99건

  1. 2020.12.11 endomondo 잘가 1
  2. 2020.12.10 softfp와 hardfp
  3. 2020.12.10 centos stream?
  4. 2020.12.09 good bye 척 예거 2
  5. 2020.12.08 node-red UI bashboard
  6. 2020.12.08 linux command line에서 mp3 재생하기
  7. 2020.12.08 shuf
  8. 2020.12.08 ip, ifconfig 없이 ip 알아내기
  9. 2020.12.08 centos kernel update
  10. 2020.12.08 centos kernel이 사라졌다 -ㅁ-
개소리 왈왈/자전거2020. 12. 11. 09:57

최종 알림 2020년 12월 31일 부로 endomondo는 활성화 되지 않음..

내 나름의 기록들을 어떻게 백업해야 할까..

 

 

 집에와서 로그인해보니

'개소리 왈왈 > 자전거' 카테고리의 다른 글

자전거 라이트 + 배터리 도착!  (0) 2021.05.06
안녕 엔도몬도  (0) 2020.12.31
자전거 수리비도 끄응..  (0) 2020.08.12
라이트 수리  (0) 2020.07.07
자전거 대행진은 아직 소식이 없네  (0) 2020.05.18
Posted by 구차니
embeded/ARM2020. 12. 10. 11:41

softfp 로 빌드된 라이브러리를 hardfp 에서 돌릴수 있냐? 라는 것으로 검색중..

아무튼 ld-linux-armhf.so.3 가 있는 시스템에서 ld-linux.so.3를 요청하는 것을 보면

hf(hard float)가 아니라 soft float 시스템용 라이브러리로 빌드 된 것으로 보이는데

 

ld-linux.so.3를 검색한 결과로는 ln을 통해 ld-linux-armhf.so.3를 ld-linux.so.3로 심볼릭 링크하라는 말들이 나온다.

[링크 : https://forum.lazarus.freepascal.org/index.php?topic=15108.0]

[링크 : https://unix.stackexchange.com/questions/553743/correct-way-to-add-lib-ld-linux-so-3-in-debian]

 

아래는 ld-linux-armhf.so가 된 이유?

[링크 : https://lists.linaro.org/pipermail/cross-distro/2012-April/000261.html]

 

 

빌드 시에는 아래와 같이 에러가 난다고 하는데

ln -s 로 해주면 일단은 우회는 되지만

warning: ld-linux.so.3, needed by libidontknow.so, not found (try using -rpath or -rpath-link)

 

정작 실행했을 경우 해결이 되지 않고 특정 라이브러리를 불러오는데 에러가 발생을 했다고만 간략하게 나온다.

./sample: error while loading shared libraries: libidontknow.so: internal error

 

무슨 문제가 있나 곰곰히 고민을 해보니 softfp와 hardfp의 차이인것 같아서 검색해보니

ABI가 달라서 두개를 혼용할 수 없는게 문제인 것으로 보이는데

그렇게 따지면.. ld-linux.so.3를 찾아서 넣는게 오히려 빠른 해결 책이 아닐까 생각이 된다.

좀 더 근원적으로는, 사용하려는 libidontknow.so를 softfp가 아닌 hardfp로 빌드하는게 가장 좋긴 하겠지만 말이다.

 

+

호출 규약이 다르다..

soft : floating-point 연산을 위한 라이브러리 콜을 포함하도록 gcc 가 컴파일 결과를 만들어낸다.
softfp : hardware floating-point instruction 을 생성하도록 하지만, 여전히 soft-float 호출 규약(calling convention)을 사용한다.
hard : floating-point instructions 을 생성하고 FPU 특화된 호출 규약(calling convention)을 사용한다.

[링크 : https://pinocc.tistory.com/127]

 

ABI 컨벤션이 다르다..

Applications, which are built under “hardfp” option, cannot work under Linux, that was compiled under “softfp” – because different ABI conventions; function parameters transfer are different : the soft float conventions assume passing floats through general purpose (integer) registers, but “hardfp” uses the floating point register.

[링크 : https://community.nxp.com/t5/i-MX-Processors/imx6q-hard-float-or-soft-float/m-p/209848]

 

armhf는 이름대로 hard-float용이고 없는 녀석은 soft-float 용.

arm
hard-float ABI, BE32: /lib/ld-linux-armhf.so.3
hard-float ABI, BE8: /lib/ld-linux-armhf.so.3
hard-float ABI, LE: /lib/ld-linux-armhf.so.3
soft-float ABI, BE32: /lib/ld-linux.so.3
soft-float ABI, BE8: /lib/ld-linux.so.3
soft-float ABI, LE: /lib/ld-linux.so.3
(The ARM soft-float ABI can be used with both hard and soft-float code. ARM supports two variants of big-endian operation, (on newer processors) BE8 and (on older processors) BE32, which are the same at .o level but incompatible for linked executables and shared libraries.)

[링크 : https://sourceware.org/glibc/wiki/ABIList]

 

+

[링크 : https://talkingaboutme.tistory.com/entry/Linux-floating-point-관련-삽질중]

 

+

아래와 같은 항목이 보이는 걸 봐서는 mfloat-abi는 softfp 방식으로 abi를 선언할 뿐

실제 연산은 mfpu로 선언된 neon을 통해서 구현이 되도록 설정이 가능한 것으로 보인다.

export CC="arm-linux-gnueabi-gcc  -march=armv7-a     -mthumb-interwork -mfloat-abi=softfp -mfpu=neon  --sysroot=/home/eric/src/imx6/opt/ESX/imx6/sysroots/armv7a-vfp-neon-linux-gnueabi"

[링크 : https://gist.github.com/ericbutters/6049429b834edfaa0d2d]

 

 

그러니까 soft는 순수하게 software float point 계산

hard는  hardware float point 계산

softfp는 hardware float point 를 사용하지만 함수 호출 방식은 soft 방식을 쓴다고 보면 될 듯?

-mfloat-abi=name
Specifies which floating-point ABI to use. Permissible values are: ‘soft’, ‘softfp’ and ‘hard’.

Specifying ‘soft’ causes GCC to generate output containing library calls for floating-point operations. ‘softfp’ allows the generation of code using hardware floating-point instructions, but still uses the soft-float calling conventions. ‘hard’ allows generation of floating-point instructions and uses FPU-specific calling conventions.

The default depends on the specific target configuration. Note that the hard-float and soft-float ABIs are not link-compatible; you must compile your entire program with the same ABI, and link with a compatible set of libraries.

[링크 : https://gcc.gnu.org/onlinedocs/gcc/ARM-Options.html]

 

 

+

예전에 한참 고생하게 만들었던 gcc multilib이 이럴때 언급될줄이야..

아무튼 컴파일러가 multilib을 지원하면 softfp를 쓰라는데 반대로 multilib을 지원하지 않으면 soft, hard만 지원한다는 건가?

If the compiler has multilib enabled (you can tell with -print-multi-lib) then you can use -mfloat-abi=softfp, but if not then that option won't help you much: gcc will happily generate softfp code, but then there'll be no compatible libgcc to link against.

[링크 : https://stackoverflow.com/questions/9753749/]

  [링크 : https://stackoverflow.com/questions/48224372/]

 

 

+

 

[링크 : https://www.gurucoding.com/rpi_cross_compiler/2012/04_diff_hardfp_softfp/]

'embeded > ARM' 카테고리의 다른 글

vfp  (0) 2021.01.13
NEON 강제활성화?  (0) 2021.01.12
ampere altra  (0) 2020.11.23
arm cl  (0) 2020.10.29
arm64 server sysbench  (0) 2020.09.23
Posted by 구차니
Linux/centos2020. 12. 10. 10:27

centos project가 centos Stream으로 집중하기로 결정(전환)

[링크 : https://lists.centos.org/pipermail/centos-announce/2020-December/048208.html]

 

redhat의 입장

[링크 : https://www.redhat.com/en/blog/centos-stream-building-innovative-future-enterprise-linux]

 

centos stream의 시작

[링크 : https://www.redhat.com/en/blog/transforming-development-experience-within-centos]

 

centos FAQ

[링크 : https://centos.org/distro-faq/]

 

 

-

간단하게 요약(?) 하자면

 

실험적 버전인 Fedora core

사용 서버 버전인 RHEL

RHEL의 GPL 소스 공개 빌드 버전인 Centos 가 있었는데

 

centos를 redhat/ibm에서

RHEL 이전의 단계로 흡수하면서 관리 하게 되어, RHEL 의 clone 으로서 centos는 사라진다는 의미가 되려나?

'Linux > centos' 카테고리의 다른 글

centos8 virbr0?  (0) 2020.12.14
centos 8.3-2011 용량이 많이 늘었나?  (0) 2020.12.14
centos 8.2 네트워크 설정  (0) 2020.12.02
ls 퍼미션에 .의 의미  (0) 2020.04.01
centos7 minimal / X11 사용하기  (0) 2020.02.04
Posted by 구차니
분류가 모호한 글2020. 12. 9. 09:04

척 예거의 공중전 이라는 게임으로 알게 되었고

내 인생에 많은 영향을 주었던 얼굴도 알지 못한 분이 97세의 일기로 떠나셨다고 한다.

 

[링크 : http://news.v.daum.net/v/20201209050802309]

 

 

이 게임으로 인해서 비행기에 관심을 가지게 되었고

향후 진로를 이루진 못했지만 밀리터리에 빠지게 되었고

파일럿은 시력으로 인해 포기했지만 항공전자 장비 라고 만들고 싶어서

한때 ADD를 꿈으로 삼았기도 했던 내 인생의 큰 흔적이 이렇게 하늘로 영원히 날아가셨다.

[링크 : https://minimap.net/game/chuck-yeagers-air-combat]

'분류가 모호한 글' 카테고리의 다른 글

FMCW, MMIC  (0) 2022.03.22
베르세르크 작가 미우라 켄타로 사망  (2) 2021.05.22
FMCW  (0) 2018.07.19
우드락 / 보드롱 / 폼보드?  (0) 2018.05.03
intel FreeD  (0) 2018.03.19
Posted by 구차니
embeded/raspberry pi2020. 12. 8. 20:13

우측의 dashboard 에서 layout

+tab 을 눌러 tab을 추가하고

tab에 +group을 눌러 gourp을 추가한다음

 

버튼 노드의 group을 지정하면 빨간색 경거도 사라지고 정상적으로 실행된다.

 

ui control 노드는 별도로 설치한 녀석인데

text와 button node가 직접 연결되지 않아도 되니 신기하네

 

node-red의 하위 경로로 ui를 입력하면 접속된다.

http://rpi:1880/ui

 

[링크 : http://naver.varofla.com/221127489634]

'embeded > raspberry pi' 카테고리의 다른 글

rpi youtube  (0) 2020.12.24
mpicc on rpi  (0) 2020.12.15
rpi node-red  (0) 2020.12.07
node-red rpi  (0) 2020.11.29
간만에 라즈베리 + 포맷?  (0) 2020.11.29
Posted by 구차니
Linux2020. 12. 8. 18:49

libsox-fmt-all을 설치하지 않으면 다음과 같이 mp3 파일을 인식하지 못한다.

$ sudo apt-get install sox
$ sudo apt-get install libsox-fmt-all

 

$ play 탐험보고.mp3 
play WARN alsa: can't encode 0-bit Unknown or not applicable 
play FAIL formats: no handler for file extension `mp3' 

[링크 : https://vitux.com/play-mp3-files-using-the-ubuntu-command-line/]

 

여러가지가 있어서 해봤지만 sox가 빠르고, 용량도 적고 한번 재생하고 종료되서 딱임

[링크 : https://linuxhint.com/play_mp3_files_commandline/]

[링크 : https://superuser.com/questions/276596/play-mp3-or-wav-file-via-the-linux-command-line]

[링크 : https://askubuntu.com/questions/115369/how-to-play-mp3-files-from-the-command-line]

'Linux' 카테고리의 다른 글

ifconfig wan  (0) 2020.12.11
dsa distributed switch architecture  (0) 2020.12.11
shuf  (0) 2020.12.08
pdsh  (0) 2020.12.04
bash $$ 변수, 배열, 반복  (0) 2020.12.04
Posted by 구차니
Linux2020. 12. 8. 18:47

 

ls dirname | shuf -n 1
find dirname -type f | shuf -n 1

 

파일들 중에 임의의 하나를 빼내는 명령어

[링크 : https://stackoverflow.com/questions/414164/how-can-i-select-random-files-from-a-directory-in-bash]

 

 

play "`ls *mp3 | shuf -n 1`"

'Linux' 카테고리의 다른 글

dsa distributed switch architecture  (0) 2020.12.11
linux command line에서 mp3 재생하기  (0) 2020.12.08
pdsh  (0) 2020.12.04
bash $$ 변수, 배열, 반복  (0) 2020.12.04
bash 배열  (0) 2020.12.04
Posted by 구차니
프로그램 사용/openHPC2020. 12. 8. 15:01
cat /proc/net//proc/net/fib_trie

[링크 : https://unix.stackexchange.com/questions/365225/how-to-get-the-ipv4-address-for-an-interface-from-proc]

'프로그램 사용 > openHPC' 카테고리의 다른 글

OpenFabrics interface - ofi  (0) 2020.12.14
MVAPICH2  (0) 2020.12.14
centos kernel update  (0) 2020.12.08
centos kernel이 사라졌다 -ㅁ-  (0) 2020.12.08
wwmkchroot  (0) 2020.12.07
Posted by 구차니
프로그램 사용/openHPC2020. 12. 8. 11:50

 

# yum update kernel
Last metadata expiration check: 20:00:35 ago on Mon 07 Dec 2020 01:42:34 AM EST.
Dependencies resolved.
Nothing to do.
Complete!

# grub2-editenv list
saved_entry=c324aa0738b34f58b1304edca552d426-4.18.0-193.28.1.el8_2.x86_64
kernelopts=root=/dev/mapper/cl-root ro crashkernel=auto resume=/dev/mapper/cl-swap rd.lvm.lv=cl/root rd.lvm.lv=cl/swap
boot_success=0

# grub2-set-default 0

 

 

 

[링크 : https://jeongyd.tistory.com/56]

 

+

위의 방식으로 되지 않아서 다른 방법 찾는중

그런데 yum clean all 은 웬지 설치된 패키지 전부 지우는 느낌인데..

 

sudo yum check-update
sudo yum clean all
sudo reoot
sudo yum update

[링크 : https://phoenixnap.com/kb/how-to-update-upgrade-centos]

'프로그램 사용 > openHPC' 카테고리의 다른 글

MVAPICH2  (0) 2020.12.14
ip, ifconfig 없이 ip 알아내기  (0) 2020.12.08
centos kernel이 사라졌다 -ㅁ-  (0) 2020.12.08
wwmkchroot  (0) 2020.12.07
openHPC x86_64와 aarch64 문서 차이  (0) 2020.12.07
Posted by 구차니
프로그램 사용/openHPC2020. 12. 8. 11:40

저번주 까지만 해도 멀쩡히 잘 되었던 녀석이 갑자기 안된다.

그래서 찾아보는데.. 아무래도 구버전이 되어서 live에서 내려가 버린듯..

 

# rpm -qa | grep kernel
kernel-tools-4.18.0-193.28.1.el8_2.x86_64
kernel-modules-4.18.0-193.el8.x86_64
kernel-4.18.0-193.el8.x86_64
kernel-core-4.18.0-193.el8.x86_64
kernel-tools-libs-4.18.0-193.28.1.el8_2.x86_64
kernel-core-4.18.0-193.28.1.el8_2.x86_64
kernel-4.18.0-193.28.1.el8_2.x86_64
kernel-headers-4.18.0-193.28.1.el8_2.x86_64
kernel-modules-4.18.0-193.28.1.el8_2.x86_64

 

아무튼 설치는 했는데 다시 하려니 매치되는게 없다고 그런다...

# yum -y --installroot=$CHROOT install kernel-`uname -r`
Last metadata expiration check: 0:56:59 ago on Mon 07 Dec 2020 08:40:30 PM EST.
No match for argument: kernel-4.18.0-193.28.1.el8_2.x86_64
Error: Unable to find a match: kernel-4.18.0-193.28.1.el8_2.x86_64

 

[링크 : https://forums.centos.org/viewtopic.php?t=76325&p=320884]

[링크 : http://mirror.centos.org/centos/8/BaseOS/x86_64/os/Packages/?C=M;O=D]

[링크 : https://vault.centos.org/8.2.2004/BaseOS/x86_64/os/Packages/]

[링크 : http://rpmfind.net/linux/RPM/centos/8.2.2004/baseos/x86_64/Packages/kernel-4.18.0-193.el8.x86_64.html]

'프로그램 사용 > openHPC' 카테고리의 다른 글

ip, ifconfig 없이 ip 알아내기  (0) 2020.12.08
centos kernel update  (0) 2020.12.08
wwmkchroot  (0) 2020.12.07
openHPC x86_64와 aarch64 문서 차이  (0) 2020.12.07
nagios  (0) 2020.12.07
Posted by 구차니