이번에 Python을 이용하여 LibreOffice의 Unittest 소스코드에 공헌을 해보았습니다.

출처:

관련 링크:

링크의 Cppunit 소스코드에 보면 입력된 값에 대해서 이 값이 기대된 값(Expected value)인지 검사하는 로직이 있습니다.

이 단위테스트에서 주석과 결과를 넣어야할텐데, 문자열의 유니코드 코드포인트값을 어떻게 빠르게 뽑아낼까 고민을 하다 역시 Python이 있었지 하면서 Python으로 결과값을 뽑아내서 cppunittest 소스코드를 수정 작성하였습니다.

        // DBNum1 -> NatNum4: Korean lower case characters
        // 一億二千三百四十五万六千七百八十九
        sExpected = u"\u4e00\u5104\u4e8c\u5343\u4e09\u767e\u56db\u5341\u4e94\u4e07\u516d\u5343\u4e03\u767e\u516b\u5341\u4e5d ";
        sCode = "[NatNum4][$-0412]General\\ ";
        checkPreviewString(aFormatter, sCode, 123456789, eLang, sExpected);
        sCode = "[DBNum1][$-0412]General\\ ";
        checkPreviewString(aFormatter, sCode, 123456789, eLang, sExpected);

아래는, 주석에 적은 문자열를 Python을 이용하여 Unicode Codepoint로 변환하는 예제입니다.

Python 3.8.3 (default, May 27 2020, 20:54:22) 
[Clang 11.0.3 (clang-1103.0.32.59)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> "一億二千三百四十五万六千七百八十九".encode("unicode_escape")
b'\\u4e00\\u5104\\u4e8c\\u5343\\u4e09\\u767e\\u56db\\u5341\\u4e94\\u4e07\\u516d\\u5343\\u4e03\\u767e\\u516b\\u5341\\u4e5d'
>>> "壹億貳阡參佰四拾伍萬六阡七佰八拾九".encode("unicode_escape")
b'\\u58f9\\u5104\\u8cb3\\u9621\\u53c3\\u4f70\\u56db\\u62fe\\u4f0d\\u842c\\u516d\\u9621\\u4e03\\u4f70\\u516b\\u62fe\\u4e5d'
>>> "1억2천3백4십5만6천7백8십9".encode("unicode_escape")
b'\\uff11\\uc5b5\\uff12\\ucc9c\\uff13\\ubc31\\uff14\\uc2ed\\uff15\\ub9cc\\uff16\\ucc9c\\uff17\\ubc31\\uff18\\uc2ed\\uff19'
>>> "일억이천삼백사십오만육천칠백팔십구".encode("unicode_escape")
b'\\uc77c\\uc5b5\\uc774\\ucc9c\\uc0bc\\ubc31\\uc0ac\\uc2ed\\uc624\\ub9cc\\uc721\\ucc9c\\uce60\\ubc31\\ud314\\uc2ed\\uad6c'
>>> 

Python의 결과값을 이용하여 Cppunittest의 결과값 비교를 하는데 유용하여 사용했습니다.

Python이 아니였으면 일본사람인 小笠原徳彦(Naruhiko Ogasawara)님과 협업으로 리브레오피스 소스코드 수정하는데 많이 지연이 되었을 것 같아요.

 

ps. 파이썬(Python)같이 생산성 빠른 언어를 익혀두면 언젠간 쓸 일이 생긴다.

ps2. 참고할만한 글

https://towardsdatascience.com/a-guide-to-unicode-utf-8-and-strings-in-python-757a232db95c

A Guide to Unicode, UTF-8 and Strings in Python

Strings are one of the most common data types in Python. This guide will help you master Unicode, UTF-8 and strings in general.

towardsdatascience.com

 

Buy me a coffeeBuy me a coffee

어느날, 여자친구가 사용하지 않은 노트북이 있다고 공짜로 가지겠는가는 이야기를 들었습니다.

이게 웬 떡인가? 이런 심리가 발동되어 노트북을 공짜로 받겠다고 했습니다.

노트북을 공짜로 받아보니 HP사에서 나온 2013년도에 생산된 Envy-14인치 i5랩탑이였습니다. CPU는 i5라 지금도 사용하는데 딱히 나쁘지 않은데, LCD패널이 좀 아쉽고, HDD를 쓴다길래 흠 좀 고치면 되겠군이란 생각을 하였습니다.

 

받고 나서 노트북을 켜보니... 안켜집니다. 여친 말로는 배터리가 이상한지 전원 연결을 하지 않으면 컴퓨터가 안켜진다고 합니다.

배터리가 고장났으니 전원연결을 한 후, 노트북 켜면 부팅이 안된다고 합니다.

확인해보니 BIOS설정이 잘못된걸 확인. 그래서 BIOS설정 수정 및 가상화설정에 대해서 활성화를 하였습니다 (이건 제가 WSL2, Docker를 사용하려고 함)

그리고, 내부를 뜯어보니 배터리는 부풀어올랐고, 얼른 교체를 하지 않으면 터질것 같더군요.

시급한 것은 이제 켜지지 않고 충전도 안되는 배터리 교체를 하였습니다. (노트북을 받고 나서 계속 전원 연결로만 사용하였습니다.
배터리를 빨리 받기 위해서, 중국에서 배송하는 알리익스프레스 대신 한국의 대형쇼핑몰 11번가에서 2013년도에 생산된 HP envy14인치용 배터리 부품번호를 보고 주문하였습니다.

아래는, 대형쇼핑몰  11번가에서 주문한 HP envy14 랩탑 배터리부품입니다. 해외 주문할시 코로나 시국으로 배달 속도가 느리기 때문에, 국내 창고에 굴러다니는 재고 배터리를 찾아서 주문하였습니다 

 

잡았다 요놈. HP Envy14인치용 배터리
위: 상당히 부풀어오른 배터리, 아래: 새로 구입한 배터리

 

 

이제 배터리를 교체하고, 뭘 바꿀지 확인을 해보았습니다.

배터리 교체하고 나서 쓱 훑어보니, 램은 4GB로 꽂혀있었고, 무선랜카드는  5Ghz를 지원하지 않은 싸구려 센트리노카드였고, mSATA를 지원하는 랩탑인데 왜 HDD를 넣었는지 이해를 못하였을 정도로 원가 절감을 위해 CPU만 좋은걸 넣었고, 나머지는 그 당시에도 성능이 느린 부품을 넣어서 팔았습니다 (부들부들 HP요놈)

다행히, HP envy랩탑 내부를 뜯어보니 요즘 애플이 시작하여 다른 제조사가 따라하는 납땜하여 아예 교체 못하는 시스템이 아니라서 차근차근 부품 교체 하면 지금도 간단한 작업 및 제가 주로 이용하는 작업을 충분히 할수 있을 정도일것 같더군요.

배터리를 교체하고 난후, DDR3램 교체를 진행하였습니다.
기존엔 4Gb 하이닉스 램이 탑재되었기 때문에, 잠시 예전에 삼성 노트북에서 사용하던 4Gb램을 임시로 꽂아서 총 8Gb를 사용하고 있었습니다. 그러나 빌드 작업을 할 것이라 이제 삼성 8Gb램 2개를 한국의 인터넷 쇼핑몰 11번가에서 주문하여, 램을 교체하였습니다. 그래서 이제 노트북에서 램16Gb를 사용하게 되었습니다.

 

 



그리고, 하드디스크가 노후화되어 수명이 오래 가지 못하고 띡소리가 나기 시작하였고, 5400rpm 하드이기 때문에 느리기 때문에, 집에서 리눅스 설치하다 용량 교체로 사용하지않고 잠시 굴러다니던 SSD로 교체하였습니다.

 

 

제가 맥북프로(MacOSX)와 2011년도에 생산된 Intel i7 2세대 샌디브릿지 삼성 랩탑(Linux)를 사용하기 있기때문에 윈도우OS를 탑재한 운영체제가 없었습니다.

그래서, 이 HP노트북은 윈도우를 사용하는 머신으로 이용하게 되었습니다.


다음엔, 이 노트북에 사용하는 무선랜카드가 5Ghz를 지원 못하는 싸구려 샌트리노 랜카드(Intrl Centrino Wireless-N 2230)를 붙여놓았더군요. 그래서, 알리익스프레스에서 Intel Dual Band Wireless-AC 7250을 주문하였습니다.

 

 


이제야, 2020년에 쓸만한 4세대 하스웰 i5 랩탑을 구성하였습니다.(무선랜카드만 도착하면 진짜 쓸만해질듯)
이제 제대로 된 윈도우 머신을 여친에게 공짜로 받아 부품 교체하여 쓰니깐 기분 좋네요. 

(아직 무선랜카드가 도착하지 않음. 그러나 무선랜 카드 교체하려니 고난이도임을 예상... 그러나 난 할수 있을거야 설마 전선 찢어버릴려나..)

 문제의 무선랜카드가 케이블 아래에 양면테이프로 딱 붙어 있음 ㅠㅠ

ps. 제가 사용하는 맥북프로(MacBookPro 2013 Late)와 비슷한 시기에 나온 CPU를 사용하고 있기때문에, HP랩탑의 부품(HDD, 램, 무선랜)을 바꾸면 맥북프로와 거의 비슷한 성능을 낼것 같습니다.

Buy me a coffeeBuy me a coffee

MS Windows에서 Visual Studio(비주얼 스튜디오)로 리브레오피스(LibreOffice) 개발하기 동영상

Developing LibreOffice in Visual Studio

https://www.youtube.com/watch?v=Xn3CtIrMpIA

 

Buy me a coffeeBuy me a coffee

맥OSX(Mac OSX)에서 리브레오피스(LibreOffice)를 빌드 후, 디버깅을 하려면 gdb대신 lldb를 이용해야 합니다.

맥에서 리브레오피스(LibreOffice) 빌드후, 새로운 아이디어가 생각이 나서 소스 수정 후 디버깅을 해보았습니다.

make debugrun

빌드를 하고 gdb로 디버깅을 하려고 했더니 어 gdb명령어가 안먹네??

확인결과, MacOSX에서는 llvm으로 빌드하기 때문에 gdb대신 lldb를 사용해야합니다.

https://wiki.documentfoundation.org/Development/How_to_debug#Debugging_with_lldb

 

How to debug - The Document Foundation Wiki

The Document Foundation Wiki Debugging options You need to enable debugging support to do any practical interactive debugging. You can enable it for the entire build with: ./autogen.sh --enable-debug or ./autogen.sh --enable-dbgutil If you have done a non-

wiki.documentfoundation.org

 

저는 대학교때 배운 gdb명령어로 디버깅을 하려고 했더니, lldb가 손에 익지 않아 시행착오를 많이 겪게 되네요

아래는 llvm을 밀고 있는 Apple사에서 제공하는 gdb와 lldb의 비교 링크입니다.

https://developer.apple.com/library/archive/documentation/IDEs/Conceptual/gdb_to_lldb_transition_guide/document/lldb-command-examples.html#//apple_ref/doc/uid/TP40012917-CH3-SW1

 

GDB and LLDB Command Examples

GDB and LLDB Command Examples The tables in this chapter list commonly used GDB commands and present equivalent LLDB commands and alternative forms. Also listed are the built-in GDB compatibility aliases in LLDB. Notice that full LLDB command names can be

developer.apple.com

아래는 참고할만한 lldb디버깅 기술 소개 링크입니다. 

https://www.letmecompile.com/xcode-lldb-%EB%94%94%EB%B2%84%EA%B9%85-%ED%85%8C%ED%81%AC%EB%8B%89/

 

Xcode LLDB 디버깅 테크닉

Xcode에 기본으로 내장되어있는 디버거(debugger)인 LLDB는 기존에 가장 많이 사용되던 gdb보다 많은 유용한 기능들을 갖고있다. LLDB 명령어 분석기에는 파이썬(Python) 인터프리터가 내장되어있어서 scr

www.letmecompile.com

아래는 lldb로 디버깅(Debugging)중인 화면입니다. 

 

ps. Apple사에서 제공하는 LLDB와 Xcode에 대한 글 

https://developer.apple.com/library/archive/documentation/IDEs/Conceptual/gdb_to_lldb_transition_guide/document/Introduction.html#//apple_ref/doc/uid/TP40012917-CH1-SW1

 

About LLDB and Xcode

About LLDB and Xcode With the release of Xcode 5, the LLDB debugger becomes the foundation for the debugging experience on OS X. LLDB is Apple’s “from the ground up” replacement for GDB, developed in close coordination with the LLVM compilers to brin

developer.apple.com

 

Buy me a coffeeBuy me a coffee

드디어, 2020년 6월부터 홍콩(Hong Kong, 香港)에서 애플페이에 홍콩 교통카드인 옥토퍼스카드(八達通, Octopus)등록이 가능해졌습니다.



사용 프로세스는 일본 스이카(Suica)랑 비슷하게 실물카드를 등록하면 애플페이에서만 사용할 수 있으며, 등록된 실물카드는 사용을 못한다고 합니다.

Apple 홍콩 공식페이지의 Apple Pay 八達通소개링크: https://www.apple.com/hk/apple-pay/octopus/

Apple Pay - 八達通

Apple Pay 現已支援八達通,從交通到購物,體驗一新。無論搭乘鐵路、巴士和渡輪,以至購物付款,直接以你的 iPhone 或 Apple Watch 一嘟就得,暢快便捷,前所未有。

www.apple.com

Apple Hong Kong 영문 공식페이지의 Apple Pay Octopus 소개링크:

https://www.apple.com/hk/en/apple-pay/octopus/

Apple Pay - Octopus

Apple Pay now supports Octopus card, delivering a new generation of public transport and retail purchase experiences. Now it’s easier than ever to ride trains, buses, and ferries and shop with just your iPhone or Apple Watch. Ride and buy. All with one e

www.apple.com

Octopus공식 애플페이에 옥토퍼스카드 등록 사용 공식 문서가 떴습니다.

 https://www.octopus.com.hk/en/consumer/mobile-payment/apple-pay/about/index.html 

Your iPhone or Apple Watch is now your Octopus

Operating under the Stored Value Facilities Licence, Octopus provides diversified offline and online Octopus payment services to meet customers’ different payment needs.

www.octopus.com.hk

 

如何加八達通卡於錢包 How to add Octopus Card in Apple Pay

 https://www.youtube.com/watch?v=ihNUME5k52w

 

Buy me a coffeeBuy me a coffee

2004~2005년경, 내가 대학에 "컴퓨터공학과(Department of Computer Science & Engineerning)에 입학할때 주변에서 저에게 이런말을 하였습니다.

"개발자 정년은 45살이던데", "개발해서 어디 밥벌이 할 수 있겠나? 어디가도 을인데?", "개발로 가면 정년 오래 못가니 관리직으로 가야할텐데?" 등등 

그리고, 자조적으로 PC수리를 해야하지 않냐, 치킨집 창업을 해야하지 않나 등 말이 나오고 있었음.

https://emptydream.tistory.com/3646

 

실력이 있어도 나이가 많으면 치킨집 - 어느 SW 개발자 이야기

아는 사람 이야기를 조금 각색해서 꾸며봤음. 큰 틀은 그대로임. 커뮤니티 같은 데 보면, 실력만 있으면 어떻게 된다는 식의 말들이 가끔씩 나오는데, 물론 완전히 틀린 말은 아니다. 난 운이 더

emptydream.tistory.com

https://emptydream.tistory.com/3413

 

모험회사 - 개발자는 무기, 갑을병정무기

개발자라도 보통의 회사 다닐 때는 갑을병정 다음에 뭐가 있는지 잘 모른다. 근데 SI 업체를 다닌다거나, 프리랜서를 뛰게 되면 그때서야 알게된다. 갑을병정무기경신임계. 그리고 실제로 그 먹�

emptydream.tistory.com

https://subokim.wordpress.com/2018/09/03/the_second_life_of_developer/

 

개발자의 미래는 치킨집일까?

아래는 “빵가게제빵사”님이 트윗에 올린 글타래입니다. “자영업자들이 정말 이래요?” 라고 물으면 대답은 “정말 이래요.” 일겁니다. 그나마 3~5억 정도 퇴직금이라도 있다면 대기업 직원�

subokim.wordpress.com

https://ppss.kr/archives/33048

 

소프트웨어 개발자는 어째서 치킨집을 차리는가?

이유는 단순하다. 소프트웨어와 치킨 산업이 근본적으로 유사하기 때문이다. 개발을 하면서, 치맥을 먹으면서, 엔지니어는 눈으로, 손으로, 입으로, 머리로 그걸 느낀다. 그래서 닭집을 차린다.

ppss.kr

 

대학 졸업하고, 대학원까지 졸업후 구한 직장은 솔루션 개발 업체였는데 회사가 솔루션 판매 및 연구로는 돈벌이가 안되니 정부과제 및 SI로 앵벌이(?)를 하여 개발을 하여 갑을병정 식으로 개발하던 추억도 생각났음

(참고로 첫 회사는 내가 임금 체불되어 몇 개월 임금을 못준다고 하니, 내가 퇴사를 하였더니 1년 이후에 폐업...)

 

지금 다니는 회사는 솔루션 개발이 아닌 서비스 운영을 하는 회사. 요즘은 서비스 구독 등이 대세가 되기때문에 망하지 않은 직장을 선택하여 잘 다니고 있다만, 가끔씩 이 회사 오래 다닐 수 있냐는 회의가 들긴 함.

 

아래의 글을 보고 나는 얼마나 오랫동안 개발을 할 수 있을지 고민을 하게 되었음.

내가 꾸준히 시간이 날때 마다 틈틈히 자유오픈소스 프로젝트(Free/Libre Open Source Software Project)에 참여하여 공헌(貢獻, Contribution)하는 것도 오래 개발을 하기 위하기 위해서이다.

 

지금까지 개발자의 수명 이야기 나오는건 아직까지, 전세계적으로 "개발자"라는 직군에 생긴지 100년이 되지 않았고 , 한국내에서 전산화를 진행하면서 생긴 것이기 때문에 아직까지 사회적으로 정리가 안된 상태라고 보고 있음.

이제, 컴퓨터는 전공자만이 사용하는 도구가 아니라 생활속에서 어디든 녹아서 사용하기 때문에 개발자 수요는 항상 끊임 없이 생길것이다.

그러나, 개발자가 항상 변화를 따라 잡지 못하면, 가치있는 개발자로 남지 못하여 개발자로 수명은 사라지게 마련이다.

해커뉴스(Hacker News)에서 57년간 오랫동안 개발한 프로그래머의 글을 보니 내가 생각한 결론대로 일하는 분을 보았음.

 

 

출처: Ask HN: Am I the longest-serving programmer – 57 years and counting? 

https://news.ycombinator.com/item?id=23366546

 

Ask HN: Am I the longest-serving programmer – 57 years and counting? | Hacker News

In May of 1963, I started my first full-time job as a computer programmer for Mitchell Engineering Company, a supplier of steel buildings. At Mitchell, I developed programs in Fortran II on an IBM 1620 mostly to improve the efficiency of order processing a

news.ycombinator.com

해당 글에 대한 한국어 번역글

출처: 57년째 개발자로 일하고 있습니다. 누구 또 없나요?

https://news.hada.io/topic?id=2186

 

57년째 개발자로 일하고 있습니다. 누구 또 없나요? | GeekNews

HN에 Ask로 올라온 글. 1963년부터 프로그래머로 일하기 시작.현재 데이터 사이언티스트. 클라우드 기반 빅데이터&머신러닝으로 Fraud Detection 알고리즘 개발중."74세지만, 은퇴하거나 프로그래밍을 �

news.hada.io

 

글을 읽어보면, 1963년부터 프로그래머로서 Fortran으로 개발 시작하여, 현재는 클라우드기반의 빅데이터 부정탐지 알고리즘을 개발하는 데이터 사이언티스트로 활동하고 있다고 함.

74살의 나이에 은퇴할 계획없고 개발을 그만둘 생각이 없다는 것에서 부러웠음. 그리고 이 분은 꾸준히 변화를 탐지하고 틈틈히 기술 변화에 대해서 공부를 하였음.그래서 컴퓨터 기술은 50년이 흐른 지금 상전벽해가 몇번씩 되었다만 최신 트랜드를 빨리 받아들이고 개발하는 것에서 대단하다고 느꼈음.

 

나도 나이들어도 은퇴없이 개발도 그만두지 않고 쭉 일해봤으면 함.  은퇴없이 개발 일을 하고 싶기때문에 꾸준이 틈틈히 자유.오픈소스 소프트웨어 프로젝트(Free/Libre Open Source Software Project)에 시간날때마다 투자를 하는 것 같다.

 

ps. 남의 떡이 크게 보인다는 말이 있다. 내가 대학 입학할 시절인 2005년도엔 IT버블이 꺼져버려 개발자 대우 않좋다는 말이 많기 때문에 컴퓨터공학과는 공대 학과 성적에서 거의 바닥을 찍었고, 대부분의 학우들은 수학교육과(현재는 학생수 급감으로 선생 임용이 엄청 많이 줄었음), 경영학과(요즘 스타트업이 기술이 없으면 경영학을 안다고 회사 차리기 힘듦, 어느 정도 기술을 알아야 함)등 취업 잘되는 과로 전과하려고 기를 쓰고 공부하는 걸 보았다. 그러나 15년이 지난 후, 비전공자분들도 개발자를 지원하거나 대학에서 복수전공으로 컴퓨터공학으로 공부하려는 걸 보면 격세지감. 

과거에 잘나갔던 과가 현재에도 잘나갈 가능성도 없고 등등, 앞으로 미래에 어떻게 될지는 아무도 모르나 예측할수는 있습니다.

앞으로도 개발자는 수요는 늘어날겁니다. 이유는 ICT발전으로 삶에서 컴퓨터를 접할 수 있는 기회는 늘어나면 늘었지 줄지는 않거든요, 휴대폰만 봐도 10년전만 봐도 아이폰이 왜 뜨겠냐는 생각을 하던 사람이라 ㅎㅎㅎㅎ (저도 이쪽은 흑역사가 있음)

휴대폰도 조그만 컴퓨터라고 보면 되고, 집안 냉장고, TV,에어콘도 이제 컴퓨터로 제어하고 차도 컴퓨터로 제어하는 시대이니깐요. 앞으로도 컴퓨터를 벗어날일은 없으니 개발자 수요는 늘어날겁니다. 그러나, 고급 개발자가 되는것이 어려울 뿐이지요.

빠르게 변화하는 기술 트렌드를 나이 들어서까지 배우고 익히는 것이 개발자 수명을 판가름할것으로 봅니다. 

저는 나이 들어서 오래동안 개발자로 일해보았으면 합니다.

Buy me a coffeeBuy me a coffee

 

리브레오피스에서 UI테스트 케이스를 만드는 방법 영상 

How to create UI Test Cases for LibreOffice

https://www.youtube.com/watch?v=nnng_er2mro&feature=youtu.be

 

Buy me a coffeeBuy me a coffee

이번에 Windows 10에서 공식적으로 WSL2 공개 및 Xwindow를 쉽게 사용할 수 있는 WSL2가 공개되었습니다.

이번 WSL2지원 버전은 Windows 10 Home까지 지원하기때문에 Windows 10 최신 업데이트를 진행하였습니다.

 

만약에, Windows 10 빌드버전이 2004가 나오지 않으면 아래의 링크로 강제 업데이트를 하면 됩니다.

https://www.microsoft.com/ko-kr/software-download/windows10

 

Windows 10 다운로드

Windows 10용 ISO 파일을 다운로드한 경우, 해당 파일은 선택한 위치에 로컬로 저장됩니다.컴퓨터에 타사 DVD 굽기 프로그램이 설치되어 있으며 해당 프로그램을 사용하여 설치 DVD를 만들려는 경우,

www.microsoft.com

 

자, Windows 10 빌드버전 2004로 직접 업데이트 해보았습니다. 

 

다행히, 다른 사람에게 물려받은 2013년도산 HP랩탑은 Windows 10 최신버전 업데이트가 적용가능함을 확인하였습니다.

이제 Windows 10 빌드버전 2004가 적용되었습니다!

설치 완료!

이후, BIOS설정으로 가상화 설정을 하였고, WSL2설치 및 Ubuntu 20.04 LTS를 설치하였습니다

설치는 아래와 같이 진행하였습니다.

docs.microsoft.com/ko-kr/windows/wsl/install-win10

 

Windows 10에 WSL(Linux용 Windows 하위 시스템) 설치

Linux용 Windows 하위 시스템을 Windows 10에 설치하는 방법에 대한 지침입니다.

docs.microsoft.com

설치 후, xming 설치를 하였고, Xwindow 패키지를 설치하여 xeye를 띄워보았습니다.

이제, Windows에서 간단한 Linux개발 및 docker, container, kubernetes 환경설정등 여러가지 작업을 할수 있을 것 같더군요 

참고1. WSL2 소개 영상

WSL2: Code faster on the Windows Subsystem for Linux! | Tabs vs Spaces

www.youtube.com/watch?v=MrZolfGm8Zk

참고2. WSL2 will be generally available in Windows 10, version 2004

devblogs.microsoft.com/commandline/wsl2-will-be-generally-available-in-windows-10-version-2004/

 

WSL2 will be generally available in Windows 10, version 2004 | Windows Command Line

WSL2 will soon be officially available as part of Windows 10, version 2004! As we get ready for general availability, we want to share one additional change: updating how the Linux kernel inside of WSL2 is installed and serviced on your machine.

devblogs.microsoft.com

참고3. What’s new for IT pros in Windows 10, version 2004 

techcommunity.microsoft.com/t5/windows-it-pro-blog/what-s-new-for-it-pros-in-windows-10-version-2004/ba-p/1419764#wsl

 

What’s new for IT pros in Windows 10, version 2004

Windows 10, version 2004, officially known as the Windows 10 May 2020 Update, is now available through Windows Server Update Services (WSUS) and Windows Update for Business, and can be downloaded from Visual Studio Subscriptions, the Software Download Cent

techcommunity.microsoft.com

 

Buy me a coffeeBuy me a coffee

2020년 5월 30일 토요일, 리브레오피스(LibreOffice)의 저장소(Repository)를 다운로드 받아 빌드 설정을 하려니 Java 버전 오류가 아래와 같이 발생하였습니다.

./autogen.sh --with-locales="ko" --with-vendor="me" --disable-werror --with-build-version="Built by me" --with-lang="ko" --enable-dbgutil


위의 이미지 설명: 맥운영체제(MacOSX)빌드시 Java버전 최소9이상이어야 하여 빌드 설정 실패

그래서, MacOSX에 openJDK9이상을 설치하도록 진행을 해보았습니다. 이제는 Oracle이 Java JDK를 유료화해버려서, 혹시나 모를 라이선스 문제로 openJDK로 Java버전을 업그레이드 하려고 합니다.

Oracle이 Java를 유료화하면서, 자유오픈소스 프로젝트인 리브레오피스(LibreOffice)에 Java를 사용하기 위해 자유오픈소스로 된 Java구현인 openJDK를 Mac에서 설치해보겠습니다.

openJDK 홈페이지

맥운영체제(MacOSX)에서 openJDK를 쉽게 설치하려면 brew를 이용하여 설치하는 것이 쉽습니다.

AdoptOpenJDK는 JDK를 쉽게 설치할수 있게 사전에 미리 빌드한(prebuild) java binaries를 제공하는 커뮤니티 그룹입니다.

AdoptOpenJDK

이 그룹에서는 MacOSX, Linux, Windows용 JDK바이너리를 제공하고 있습니다.

여기서 제공하는 것을 직접 빌드하기엔 제가 시간이 없으므로 (주말에만 활동하는 자유오픈소스 개발자), brew에서 올라온 AdoptOpenJDK빌드를 사용하여 JDK를 설치했습니다.

아래는 AdoptOpenJDK의 homebrew패키지용 Github 링크입니다.
AdoptOpenJDK/homebrew-openjdk

위의 Github내용에 따라 brew로 'OpenJDK14 with OpenJ9 JVM'을 설치하였습니다.
brew tap AdoptOpenJDK/openjdk
brew cask install adoptopenjdk14-openj9

이후에 openJDK14가 설치가 제대로 되었는지 확인해봅니다

% java --version
openjdk 14.0.1 2020-04-14
OpenJDK Runtime Environment AdoptOpenJDK (build 14.0.1+7)
Eclipse OpenJ9 VM AdoptOpenJDK (build openj9-0.20.0, JRE 14 Mac OS X amd64-64-Bit Compressed References 20200427_53 (JIT enabled, AOT enabled)
OpenJ9   - 05fa2d361
OMR      - d4365f371
JCL      - 5757187cae based on jdk-14.0.1+7)

openJDK14설치후, 다시 빌드 설정을 하니 성공하였습니다.

Buy me a coffeeBuy me a coffee

이번 5월 중순에, 아이폰을 사용하는 저는 중국에서 애플페이가 어느 동네의 교통카드를 지원할지 궁금하였습니다.

2020년 5월 30일에 확인한 Apple Pay가 지원하는 교통카드 목록  

 

화면을 보니, 기존에 지원하던 북경(베이징, 北京, Beijing), 상해(상하이, 上海, Shanghai) 2곳 이외에도 추가로 심천(선전, 深圳 Shenzhen), 광주(광저우, 廣州/广州, Guangzhou) 2곳이 추가 지원됨을 확인하였습니다.

2020년 5월 30일, 애플 중국 홈페이지를 가보니, 현재 중국에서 Apple Pay를 지원하는 교통카드는 4가지이며, 한 곳은 추후에 지원 예정이라고 공개하였습니다. 

아래 링크는, 애플 중국 홈페이지에서 공개한 Apple Pay의 교통카드 지원 내용입니다.

www.apple.com.cn/apple-pay/transit/

 

Apple Pay - 公交

Apple Pay 现已支持北京一卡通和上海交通卡,带来新一代的搭乘公交体验。现在你无论乘公车或搭地铁都更简单方便,只要拿起你的 iPhone 或 Apple Watch,叮一声,就通行。

www.apple.com.cn

 

현재 애플 페이에서 지원하는 중국 교통카드은 4 지역의 교통카드이며, 추후에 1곳의 교통카드가 지원한다고 소개하였습니다. 

애플페이에서 지원하는 중국지역의 교통카드 4군데

  • 北京 - 북경(베이징 Beijing)
  • 上海 - 상해(상하이 Shanghai)
  • 深圳 - 심천(선전 Shenzhen)
  • 廣州/广州 - 광주(광저우 Guangzhou)

애플페이에서 추후에 지원할 중국지역의 교통카드 1군데

  • 佛山 - 불산(포산 Foshan - 중국 광저우성 광저우시 아래 주장삼각주에 있는 도시)

작년과 올해초인 2020년 1월 10일까지 확인하였을 때엔, Apple Pay의 중국 교통카드 기능은 북경(베이징, 北京, Beijing), 상하이(상해, 上海, Shanghai)만 지원했었습니다. 

참고

https://www.ithome.com/0/481/544.htm

 

苹果iPhone手机Apple Pay京津冀互联互通卡/深圳通正式上线 - Apple Pay,交通联合卡,苹果 - IT之家

IT之家4月8日消息 今天凌晨1点,苹果iOS 13.4.1/iPadOS 13.4.1正式版推送。与此同时,苹果Apple Pay针对iOS 13.4正式版及以上iPhone手机用户激活推出了京津冀互联互通卡(交通联合)、深圳通等。目前正�

www.ithome.com

https://www.shenzhentong.com/news/newsdetail_101004001_100000227024916.html

 

最新动态-深圳通有限公司

“深圳通互联互通卡”支持 Apple Pay! 日期:2020-04-08 来源: 2020年4月8日,深圳通公司的“深圳通互联互通卡”正式支持 Apple Pay,市民可通过iPhone或Apple Watch刷卡乘坐公交和地铁。 目前,Apple Pay�

www.shenzhentong.com

http://www.lingnanpass.com/view.aspx?q_aid=4862&q_cid=40

 

아래는 2020년 1월 10일, 중국 상해(상하이, 上海, Shanghai)에 갔을 때, 저의 아이폰에 상하이 교통카드 추가하는 화면입니다.  

 

 

중국에서 애플페이(Apple Pay)의 교통카드를 지원하는 곳이 늘고 있습니다.

코로나(COVID-19) 사태가 끝나면 iPhone만으로 중국 여러 군데로 돌아다녀봤으면 합니다. 



Buy me a coffeeBuy me a coffee

+ Recent posts