Objective-C로 개발한 프로젝트에서 Swift라이브러리를 쓰다 보면 이런 에러를 만날때가 있다.

Linker error:
ld: warning: Could not find auto-linked library 'swiftFoundation'
ld: warning: Could not find auto-linked library 'swiftDarwin'
ld: warning: Could not find auto-linked library 'swiftCoreFoundation'
ld: warning: Could not find auto-linked library 'swiftCore'
ld: warning: Could not find auto-linked library 'swiftCoreGraphics'
ld: warning: Could not find auto-linked library 'swiftObjectiveC'
ld: warning: Could not find auto-linked library 'swiftDispatch'
ld: warning: Could not find auto-linked library 'swiftSwiftOnoneSupport'
Undefined symbols for architecture arm64:

뭐 이유는 스위프트 라이브러리를 자동으로 링크할 수 없다는 뜻이겠지만, 원인은 Objective-C와 Swift간 브릿지가 없어서 발생된다.

복잡한 해결 방법이 있지만 가장 쉽게 해결하는 방법은
프로젝트에 빈 Swift 파일을 하나 만들어 추가해주면 된다. 생성할때 브릿지 헤더를 생성할거냐고 물어볼때 생성하겠다고 해줘야 한다.

갑자기 잘 쓰던 트랙패드가 어느순간 먹통이었다. 트랙패드로 움직일수는 있는데 클릭(?)이 안되는 문제..

하드웨어적으로 눌러지지 않는다 라는 느낌이라 X됐다... 서비스 받아야 하는건가 하고 생각하다가.

PRAM리셋 해도 안되고, SMC리셋을 하니 정상으로 돌아옴.

 

개인적으로, 업무적으로 AWS를 사용하고, 그중에 이번에 문제가 발생한 것은 Lightsail 이었다.

거의 아마존 EC2와 비슷한 시스템인데 EC2에 비해 단순하게 만들어진 시스템인것 같다.


아무튼, Lightsail에 생성한 인스턴스 중에서 알 수 없는 이유로 SSH접속을 할수 없는 게 하나 있었는데 바쁜 업무때문에 손도 못대고 있었다.

Connection closed by xx.xxx.xxx.xxx port 22


그러다 어제 문득 돈내고 쓰는 상품을 이렇게 방치해야되나 싶은 생각이 들어서 AWS 지원센터에 물어봤더니...

결국 오늘 돌아온 대답은 SSH포트를 방화벽에서 열었냐는..

지금까지 SSH 잘 접속했었는데?? 그리고 설마 그것도 확인 안해봤을까...


구글링을 열심히 해봤는데 특별한 답을 못찾았다가.. 결국 찾았다.

https://forums.aws.amazon.com/thread.jspa?threadID=251943


과정을 간단하게 설명하면 이렇다.


1. 문제가 생긴 인스턴스를 스냅샷을 뜬다.

2. 스냅샷을 이용해서 인스턴스를 생성하는데, 생성된 인스턴스 시작시에 openssh를 새로 설치하는 명령을 실행하도록 한다.
   (캡쳐를 깜빡했는데 중간쯤에 열어서 입력하는 부분이 있음)

#!/bin/bash
sudo apt-get remove openssh-client openssh-server
sudo apt-get install openssh-client openssh-server

3. 완료.


결국... 접속됨. 잘됨.


잊지 않겠다. AWS...

한 2주 전? 덕*** 이라는 국내 업체를 국내에서 정식 판매되는 3D 프린터 Flashforge Finder 를 구입했습니다. 

외국에서 평가도 좋고 국내에서도 가정용으로 많이 사용하는 제품으로 확인했습니다.
당연히 와이파이 기능으로 원격으로 작업을 시작하고 상태를 확인할 수 있다는 점도 좋았습니다.
단, 베드가 좀 작은면이 좀 있지만...



이렇게 생긴 제품인데요... 받고나서 기쁜 마음으로 출력물 테스트를 두어번 한 다음에 알게 됐습니다.

와... 와이파이 기능이 없.. 어.... 워.. 원래 있는 제품 아니었어???


네, 카페에 글을 찾아보니 국내에 출시하면서 와이파이 모듈이 제거돼 판매된다고 합니다.
아마도 와이파이 모듈 관련해서 전파인증을 받기 싫었거나 문제가 있었겠죠?

해외 직구하면 비슷한 금액에 와이파이 되는걸로 살수 있었는데.. 젠장..


구글링을 아무리 해봐도 어떤 와이파이 모듈을 쓰는지 찾을수가 없었습니다.

그러다가 PCB 사진을 발견했어요.

PCB 우측에 모듈 형태로 달려있는 저 부분이 와이파이 모듈로 예상되었습니다.


실제로 확인을 해보니 제 3D 프린터에는 저 부분이 비어 있었습니다.

요렇게...


휴.. 그럼 이게 맞는건가? 저놈만 찾아서 달면 되는건가? 그런데 어떻게 찾아내지?

그러다가 제작사 사이트의 유저가이드 pdf 파일을 보다가 와이파이 맥 어드레스를 발견했습니다.



참고로 와이파이나 블루투스같은 무선 기기의 맥 어드레스는 등록을 하게 돼 있고 IEEE에서 관리되고 있습니다. 

맥 어드레스 등록 목록: http://standards-oui.ieee.org/oui.txt

물론 기기마다 다 등록은 하지는 않고 각 회사마다 앞 6자리를 각자의 코드로 갖는것 같습니다.


유저가이드에서 찾은 맥 어드레스는 FC:3D:FD로 시작하네요.


찾아보니 모듈의 제조사는 중국의 SHENZHEN BILIAN ELECTRONIC CO., LTD 라고 나왔습니다!


그리고 구글링으로 저 회사에서 만든 와이파이 모듈을 검색해보니 FCC에서 BL-R8188EU8 이라는 모듈이 나오네요.

https://fccid.io/S8JBLR8188EU8A/


저 위에 있는 보드 사진에 달려있는거하고 비교해보니 비슷한 것 같네요.


바로 모듈을 구입해서... 드디어! 오늘 도착했습니다. (혹시 몰라서 두개...)

메인 칩셋은 유명한 리얼텍꺼네요.



그리고 3D 프린터의 뒷 뚜껑을 열고, 바로 장착!

비포 앤 에프터 사진입니다.


그리고 전원을 켜보니 보이지 않던 와이파이 메뉴도 나오고,


제품 정보를 확인해보니 와이파이 맥 어드레스 정보도 나오고, 


원격으로 작업 시작도 되고 모니터링도 모두 됩니다!


휴.. 다행히 해피엔딩으로 끝났네요.



'Electronic > Hacking' 카테고리의 다른 글

때늦은 XBOX개조질;;;  (2) 2007.05.19

이 글을 보신분 중에서 한분에게 Genuino 101 보드를 드립니다.

MicrocontrollerIntel Curie
Operating Voltage3.3V (5V tolerant I/O)
Input Voltage (recommended)7-12V
Input Voltage (limit)7-17V
Digital I/O Pins14 (of which 4 provide PWM output)
PWM Digital I/O Pins4
Analog Input Pins6
DC Current per I/O Pin20 mA
Flash Memory196 kB
SRAM24 kB
Clock Speed32MHz
LED_BUILTIN13
FeaturesBluetooth LE, 6-axis accelerometer/gyro
Length68.6 mm
Width53.4 mm
Weight34 gr.

현재는 단종된 보드로 보입니다만 블루투스 4.0에 가속도 자이로 센서가 내장되어 있다는 장점이 있네요.


비밀 댓글로 손 들어 주세요~

'Electronic > Arduino' 카테고리의 다른 글

Genuino 101 프로그래밍 에러 해결.  (0) 2018.12.22
일이 안되니 뻘짓만 한다 ㅠㅠ  (0) 2013.02.16

+ Recent posts