프로그램을 설치하거나 잘못 삭제했을 경우 특정 프로그램을 실행 할때 이러한 메시지 한번쯤 보신 경험 있으시죠?

오늘은 이렇게 dll파일이 없어 특정 프로그램이 실행되지 않을 경우에 어떻게 해결하는지에 대해 알려 드리겠습니다.

우선 당황하지 마시고 아래 싸이트에 접속하여 잃어 버린 파일을 검색해 줍니다.

dll파일 다운받는 사이트 >> https://ko.dll-files.com/


사이트에 접속하셨으면 아래와 같이 필요한 파일을 입력하세요!


입력후 우측 "dll파일 검색" 버튼을 누르면 아래와 같이 찾으시는 파일들이 나타납니다.


파일명을 잘 보시고 원하는 파일을 클릭해 주세요.

클릭후 화면 하단에 보시면 아래와 같이 파일을 다운받을 수 있는 링크가 있습니다.


위에 보시면 고급 사용자냐고 물어 보죠? (혹시나 지금 이 작업이 어려우신 분들은 이 사이트에서 판매하는 프로그램을 구매하면 알아서 없는 dll파일을 찾아서 자동으로 설치해 준다고 하네요. 한번 구매로 평생 쓸 수 있다고 하니 컴퓨터를 잘 모르시는 분은 사용해볼만 하겠지만 저는 아닙니다.)

여튼 우측 다운로드 버튼을 클릭하면 dll파일을 받으 실 수 있는데 이미지를 보시면 2개의 파일이 있죠?

위에는 32bit 아래는 64bit입니다. 자신의 운영체제에 맡게 받아서 사용하시면 됩니다.


다운을 받으셨다면 zip파일로 묶여 있을 텐데요. 압축을 해제 하시고 해당 파일을 원래의 위치해 복사해 주시면 됩니다.

보통을 윈도우를 설치하실 기본 폴더인

C:\Windows\ 경로나 C:\Windows\System32 경로에 복사해 놓으시면 되지만 dll파일이 워낙 많다보니 자신이 필요한 dll파일 위치를 검색해 보셔서 하시면 좋을 것 같네요.

아니면 컴퓨터가 한대 더 있다면 그 컴퓨터 C:\Windows\ 경로에 해당 파일 이름을 검색하여 위치를 알아 보시는 방법도 있을 것 같습니다.


참고로 제가 받은 msvcp120.dll 파일의 위치는 C:\Windows\System32에 복사하면 정상적으로 동작하네요~


이상 dll파일로 고생하시는 모든 분들을 위한 포스팅을 마치겠습니다.



1. 툴체인 받기
   $ git clone https://github.com/raspberrypi/tools raspi_toolchain

2. 툴체인 환경 변수에 추가
   $ cd raspi_toolchain
   $ cp -av  arm-bcm2708/ /opt/toolchains/
   $ vi ~/.bashrc
   
* 추가 내용
export PATH="$PATH:/opt/toolchains/arm-bcm2708/gcc-linaro-arm-linux-gnueabihf-raspbian:/opt/toolchains/arm-bcm2708/gcc-linaro-arm-linux-gnueabihf-raspbian/bin"
추가 후 저장 종료

   $ source ~/.bashrc
   $ echo $PATH   <-- 잘 적용 됬는지 확인

3. 소스 받기
   $ git clone --depth=1 https://github.com/raspberrypi/linux raspi_kernel

4. 소스 빌드
   $ cd raspi_kernel

   $ KERNEL=kernel7
   $ make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- bcm2709_defconfig
   $ make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- zImage modules dtbs(-j n옵션으로 빠르게 빌드 가능)


Target board에서 Kernel build!!

1. Source 받기
   $ git clone --depth=1 https://github.com/raspberrypi/linux

2. bc라는 패키지 설치(근데 이게 먼지 찾아봐도 모르겠음..)
   $ sudo apt-get install bc

3. Build configuration 설정
 -. 라즈베리파이 1은...
   $ cd linux
   $ KERNEL=kernel
   $ make bcmrpi_defconfig

-. 라즈베리파이 2는...
   $ cd linux
   $ KERNEL=kernel7
   $ make bcm2709_defconfig

4. build 하기
   $ make zImage modules dtbs

5. 모듈도 build 하기
   $ sudo make modules_install

6. 빌드한거 적용하기
   $ sudo cp arch/arm/boot/dts/*.dtb /boot/
   $ sudo cp arch/arm/boot/dts/overlays/*.dtb* /boot/overlays/
   $ sudo cp arch/arm/boot/dts/overlays/README /boot/overlays/
   $ sudo scripts/mkknlimg arch/arm/boot/zImage /boot/$KERNEL.img

* 라즈베리파이 2는 kernel7.img 로 복사한다.


저번 시간에 온도센서를 라즈베리파이에 연결하는 방법에 대해 알아 보았다.


오늘은 앞서 말했던 것과 같이 모듈을 하나 테스트 했으니 서버에 붙일 예정이다.


8일차에 진행했던 node server에 진행해 보도록 한다.


login as : pi
pi@192.168.0.10's password:
pi@raspberrypi ~ $ cd server/was


node server로 이동 하였다면 이제 index파일에 프로그래밍을 할 것이다.


사실 /sys/bus/w1/devices 밑에 잡힌 온도 센서 디바이스에서 w1_slave란 파일을 읽어서 필요한 부분만 짤라서 사용해도 어렵지 않게 코딩을 할 수 있다.


하지만 nodejs는 package를 통해 대부분의 필요한 library를 제공한다.

스스로 직접 코딩해 보는 것도 좋지만 깔끔한 프로그래밍을 위해서는 library를 잘 활용하는 것도 좋다.


nodejs에 package를 간편하게 설치 하기 위해서는 npm이라는 툴이 필요하다.


혹시 nodejs version이 v0.10.x 미만인 경우 v0.10 이상으로 설치하도록 하자.

버전 확인은 nodejs -v로 할 수 있고, 변경 방법은 8일차를 참고하도록 하자.


npm 툴은 아래와 같이 설치한다.


pi@raspberrypi ~/server/was $ sudo apt-get install npm
pi@raspberrypi ~/server/was $ npm -v
1.1.4


npm이 잘 설치 되었는지 확인 후 npm에서 제공하는 raspberry pi 온도 측정 package를 받아 보자.


pi@raspberrypi ~/server/was $ npm install rpi-temp-module


node_modules라는 폴더안에 설치한 rpi-temp-module이라는 package가 생성된 것을 볼 수 있다.


사용해 보도록 하자. 사용전 미리 /sys/bus/w1/devices 밑에 생긴 device 이름을 알아두자

필자는 28-0215529be4ff이다. (이 장치명은 다르므로 꼭 확인하고 맞게 작성해야 한다.)


pi@raspberrypi ~/server/was $ vi index.js



8일차에 작성했던 console.log('Hello World'); 는 이제 지워주고 아래와 같이 입력한다.


var rpiTemp = require('rpi-temp-module');

setInterval(function()
{
    rpiTemp.getTemperature('28-0215529be4ff', function(value)
    {
        console.log("Temperature: ", value);
    });

}, 1000);


저장하고 나온다.

이 코드는 rpi-temp-module를 사용하여 1초에 한번씩 온도를 체크해서 console에 찍어 주도록 하는 프로그램이다.

이제 잘 동작하는지 실행해 보자.



pi@raspberrypi ~/server/was $ node index.js


빠른 변화를 보기 위해서는 온도센서를 물에 담그거나 손으로 꽉 쥐면 된다.


Temperature: 21.5 
Temperature: 22.5 
Temperature: 23 
Temperature: 23.5 
Temperature: 24.5 
Temperature: 25 


잘 변경됨을 확인할 수 있다.

종료 방법은 Ctrl + C 이다.


이로서 nodejs로 간단한 온도 체크 프로그램을 만들어 보았다.


+ Recent posts