부팅시 프로그램 실행문제

neocell의 이미지

아래의 내용은 falinux.co.kr에 제가 질문 올린 글인데.. 해결을 못봐서 kldp에까지 찾게 되었습니다.
여기 분류에 맞는지.. 모르겠지만... 함 봐주시길.. 부탁드립니다..

p.s
타겟보드: ez-x5

---- 이하 질문 ----

/etc/inittab 마지막줄에 A0:12345:wait:/app/test 추가하여 실행해 본 결과
에러 메시지의 내용은 같으며

Starting pcmcia Starting PCMCIA services: cardmgr[134]: watching 2 sockets

Starting INET services: inetd

/app/test error while loading shared librayies: libpthread.so.0: cannot open shared object file: No such file or directory.

와 같이 출력됩니다. 이 메시지로 봐서 무선 링크는 잡힌것같은데.. 혹 부팅시 libpthread.so.0의 경로가 export가 되지 않아서 생기는 문제는 아닐까요?
그리고 제가 부팅시 데몬 프로그램은 실행되게끔 해 보아도 똑 같은 에러문제를 보이고 있습니다.

데몬프로그램으로 무선랜의 접속상태 확인을 어떻게 하는지 잘몰라서.. 부팅되면 바로 실행되게끔 했는데.. 정말..이문제 답답하기 그지없군요..
----
방금.. 딜레이를 주어 부팅 완료후 프로그램 실행시켜도 같은 에러를 출력하는 것으로 보아 path 문제 인것 같은데요.. path를 어디에다 설정해주면 될까요..? /usr/lib/...

이제 path 문제도 아닌 것 같군요..ㅠ.ㅠ

>안녕하세요..
>
>라이브러리 파일을 읽어오기 전에 프로그램이 실행되는것 같습니다..
>
>rc.local 에서 실행을 하지 마시고, etc/inittab 파일에서 실행을 해 보시기 바랍니다.
>
>맨 마지막 줄에..
>A0:12345:wait:/app/test
>
>
>만일 위와 같이 하였는데도 같은 증상이면 스크립트 파일 또는 데몬 프로그램을 작성하셨어 무선랜의
>접속 상태를 확인 하셨어 접속 상태가 되면 /app/test 프로그램이 실행되도록 하셔야 할 것 같습니다.
>
>그럼 수고하세요.
>
>
>
>
>
>>
>>멀티쓰레드와 소켓프로그래밍을 이용한 프로그램을 작성하였습니다. 소스에 대한 문제가 아니라..
>>
>>이 응용프로그램을 보드에서 실행하면 잘 수행되고. 부팅시 자동으로 실행되게끔 rc.local 파일에다 명령을 적어두면 libpthread.so.0 관련 에러가 뜹니다. 에러 메시지는 다음과 같습니다.
>>
>> .
>> .
>> .
>>
>>INIT: version 2.84 booting
>>EXT2-fs warning: mouting unchecked fs, running e2fsck is recommended
>>
>>INIT: Entering runlevel: 3
>>yaffs: dev is 7938 name is "1f:02"
>>
>>SIOCADDRT: Network is unreachable
>>/app/test error while loading shared librayies: libpthread.so.0: cannot open shared object file: No such file or directory.
>>Starting system logger: syslogd
>>Starting pcmcia Starting PCMCIA services: cardmgr[134]: watching 2 sockets
>>
>>Starting INET services: inetd
>>
>> .
>> .
>> .
>>
>>부팅 완료후 로그인하여 그 작성한 파일을 실행하면 이상없이 잘 돌아갑니다. 왜 부팅때는 프로그램이 실행이 안되는지 모르겠군요. 아마 pcmcia 무선 랜하고 관련이 있나..생각됩니다.
>>
>>해결방법이 있을까요?
>

bushi의 이미지

1. /etc/ld.so.conf 에 libpthread.so.0 가 있는 곳의 경로를 추가한다.

2. /etc/profile 정도를 찾아서 libpthread.so.0 가 있는 곳의 경로를 LD_LIBRARY_PATH 에 추가한다.

3. LD_LIBRARY_PATH=/some/where:$LD_LIBRARY_PATH /app/test 처럼 실행시킨다.

입맛에 맞는 것으로 아무거나 고르세요.
1번은 시스템 전체에 골고루 영향을 끼치게되고(/lib/ld-*.so),
2번은 shell 을 통해 실행되는 모든 프로그램에 영향을 끼치게 되고(/sbin/sh),
3번은 해당 프로그램에게만 영향을 줍니다.

inittab 에 등록하는 것은... respawn 을 활용할 때 빼고는 비추입니다.
그나저나 libpthread.so.0 가 도대체 어디에 있기에 ?

노파심에 몇 줄 덧붙입니다.
혹시 libpthread.so.0 가 다른 파티션에 있다면, 당연히 그 파티션을 마운트한 다음에 실행되도록 해야 합니다.

OTL

neocell의 이미지

아.. 벌써 답글이 올라왔군요.
이거땜에 이틀을 삽질했는데.. 질문을 올리고 이것저것하다보니까 해결이 됐는데 윗분의 말씀대로 lib 경로가 잘못 설정되어있더군요.
그래서 수정하니까 한방에 해결되는 문제를 지금껏 끙끙 됐네요.

여튼.
항목별로 번호를 매겨가며 관심을 쏟아주신 분께 감사의 말을 드리며 고맙게 생각합니다.

댓글 달기

Filtered HTML

  • 텍스트에 BBCode 태그를 사용할 수 있습니다. URL은 자동으로 링크 됩니다.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>
  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.

BBCode

  • 텍스트에 BBCode 태그를 사용할 수 있습니다. URL은 자동으로 링크 됩니다.
  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param>
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.

Textile

  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • You can use Textile markup to format text.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>

Markdown

  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • Quick Tips:
    • Two or more spaces at a line's end = Line break
    • Double returns = Paragraph
    • *Single asterisks* or _single underscores_ = Emphasis
    • **Double** or __double__ = Strong
    • This is [a link](http://the.link.example.com "The optional title text")
    For complete details on the Markdown syntax, see the Markdown documentation and Markdown Extra documentation for tables, footnotes, and more.
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>

Plain text

  • HTML 태그를 사용할 수 없습니다.
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.
  • 줄과 단락은 자동으로 분리됩니다.
댓글 첨부 파일
이 댓글에 이미지나 파일을 업로드 합니다.
파일 크기는 8 MB보다 작아야 합니다.
허용할 파일 형식: txt pdf doc xls gif jpg jpeg mp3 png rar zip.
CAPTCHA
이것은 자동으로 스팸을 올리는 것을 막기 위해서 제공됩니다.