'프로그램 사용'에 해당되는 글 2190건

  1. 2015.12.14 make 아카이브
  2. 2015.12.14 make 매크로
  3. 2015.12.08 삼바 휴지통 vfs_object
  4. 2015.12.02 tortoiseSVN merge 페이지 번역
  5. 2015.12.02 cygwin bash 쉘 시작 위치 지정하기
  6. 2015.11.30 make -j -l
  7. 2015.11.30 makefile 병렬 대비하기
  8. 2015.11.26 svnadmin dump로 덤프/합치기
  9. 2015.11.09 samba - nfs - samba 0x80070021 오류
  10. 2015.11.09 doxygen


archive(member)


foolib(hack.o) : hack.o

        ar cr foolib hack.o



[링크 : http://www.viper.pe.kr/docs/make-ko/make-ko_11.html#SEC104]

[링크 : https://www.gnu.org/software/make/manual/html_node/Archives.html]


c

Create the archive.


r

Insert the files member... into archive (with replacement).


[링크 : http://linux.die.net/man/1/ar]

[링크 : ]

[링크 : ]

[링크 : ]

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

make 암시적 룰  (0) 2015.12.18
make jobserver unavailable  (0) 2015.12.16
make 매크로  (0) 2015.12.14
make -j -l  (0) 2015.11.30
makefile 병렬 대비하기  (0) 2015.11.30
Posted by 구차니


$* <- 확장자가 없는 현재의 목표 파일(Target)

$@ <- 현재의 목표 파일(Target)

$< <- 현재의 목표 파일(Target)보다 더 최근에 갱신된 파일 이름

$? <- 현재의 목표 파일(Target)보다 더 최근에 갱신된 파일이름


[링크 : https://wiki.kldp.org/KoreanDoc/html/GNU-Make/GNU-Make-3.html]


$@

규칙에 있는 타겟의 파일 이름. 타겟이 아카이브 멤버이면 `$@'는 아카이브 파일의 이름이다. 여러개의 타겟들(see section 패턴 규칙에 대한 소개(Introduction to Pattern Rules))을 가지고 있는 패턴 규칙에서 `$@'는 규칙의 명령이 실행되도록 만든 타겟이면 무엇이든 이 타겟의 이름이 된다.

$%

타겟이 아카이브 멤버(See section 아카이브 파일을 갱신하기 위해서 make 사용하기(Using make to Update Archive Files))일 때, 타겟 멤버 이름. 예를 들어서 타겟이 `foo.a(bar.o)'이면 `$%'는 `bar.o'이고 `$@'는 `foo.a'이다. 타겟이 아카이브 멤버가 아니면 `$%'는 빈 것이 된다.

$<

첫번째 종속물의 이름. 타겟이 묵시적 규칙으로부터 그의 명령들을 얻었다면 이것은 묵시적 규칙에 의해서 추가된 첫번째 종속물이 될 것이다 (see section 묵시적 규칙(Using Implicit Rules)).

$?

타겟보다 더 새로운 모든 종속물들의 이름들. 이들 사이에는 스페이스들이 들어간다. 아카이브 멤버들인 종속물들에 대해서 이름이 있는 멤버만이 사용된다 (see section 아카이브 파일을 갱신하기 위해서 make 사용하기(Using make to Update Archive Files)).

$^

모든 종속물들의 이름. 이들 사이에는 스페이스들이 들어간다. 아카이브 멤버인 종속물들에 대해서 이름있는(지정된?) 멤버만이 사용된다 (see section 아카이브 파일을 갱신하기 위해서 make 사용하기(Using make to Update Archive Files)). 타겟은 이것이 의존하는 다른 각 파일들에 대해서 각 파일이 종속물 리스트에서 몇번이나 나왔는가에 상관없이, 딱 한번만 사용한다. 그래서 어떤 타겟을 위해서 한번 이상 종속물을 사용한다면 $^ 의 값은 그 이름을 딱 한번 담고 있는 형태가 된다.

$+

이것은 `$^' 와 비슷하다. 그러나 종속물들이 makefile 에서 리스트된 순서와 나타난 대로 중복되었다고 해도 한번 이상 리스트된다. 이것은 특별한 순서로 라이브러리 파일 이름들을 반복하는 것이 의미가 있는 링크 명령들 안에서 주로 유용하다.

$*

묵시적 규칙이 일치하는 (see section 패턴 비교 방법(How Patterns Match)) 대상 줄기(stem). 타겟이 `dir/a.foo.b' 이고 타겟 패턴이 `a.%.b' 이라면 줄기는 `dir/foo' 이다. 줄기는 관련된 파일들의 이름을 만들때 유용하다. 정적 패턴 규칙에서 줄기는 타겟 패턴에서 `%' 과 일치한, 파일 이름의 일부분을 말한다. 명시적 규칙에서는 줄기가 없다; 그래서 `$*' 는 그런식으로 결정될 수 없다. 대신에 타겟 이름이 인식된 접미사로 끝난다면 (see section 구닥다리 접미사 규칙(Old-Fashioned Suffix Rules)), `$*' 는 타겟 이름 빼기 접미사로 설정된다. 예를 들어서, 타겟 이름이 `foo.c' 이라면, `$*' 는 `foo' 로 설정된다, 왜냐면 `.c' 가 접미사이기 때문이다. GNU make 는 다른 make 구현물과의 호환성을 위해서만 이런 괴기스런 일을 한다. 일반적으로 묵시적 규칙들이나 정적 패턴 규칙들을 제외하고는 `$*' 를 쓰지 않도록 해야 할 것이다. 명시적 규칙 안의 타겟 이름이 인식된 접미사로 끝나지 않는다면 `$*' 는 그 규칙에 대해서 빈 문자열로 설정된다.

[링크 : http://korea.gnu.org/manual/4check/make-3.77/ko/make_10.html#SEC97]



.PHONY는 지원하지 않는 버전도 있음

 .PHONY: clean

clean:

        rm *.o temp


clean: FORCE

        rm $(objects)

FORCE: 


[링크 : http://pinocc.tistory.com/131]

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

make jobserver unavailable  (0) 2015.12.16
make 아카이브  (0) 2015.12.14
make -j -l  (0) 2015.11.30
makefile 병렬 대비하기  (0) 2015.11.30
make burn 0.0.0 ???  (0) 2014.11.11
Posted by 구차니

vfs objects = recycle


위의 항목을 이용하면 vfs module을 통해서

휴지통 기능을 지원한다고 한다.

synology에서 이 기능으로 삼바 휴지통을 구현한걸려나?


[링크 : http://unix.stackexchange.com/.../how-can-i-have-a-trash-recycle-bin-for-my-samba-shares]

[링크 : http://forums.openmediavault.org/index.php/Thread/3098-RESOLVED-Recycle-bin-for-SMB-CIFS/]


EXAMPLES

Move files "deleted" on share to /data/share/.recycle instead of deleting them:

      [share]

path = /data/share

vfs objects = recycle

recycle:repository = .recycle

recycle:keeptree = yes

recycle:versions = yes


VERSION

This man page is correct for version 3.0.25 of the Samba suite.


[링크 : https://www.samba.org/samba/docs/man/manpages/vfs_recycle.8.html


'프로그램 사용 > SMB(Samba)' 카테고리의 다른 글

어라.. samba swat 사라졌네  (0) 2017.01.03
wins를 이용한 ubuntu에서 samba host 이름 resolve하기  (0) 2016.09.10
samba - nfs - samba 0x80070021 오류  (0) 2015.11.09
smbpasswd의 hash generator  (0) 2014.09.22
SMB2  (0) 2013.09.13
Posted by 구차니

머징


분리된 개발라인을 유지하는데 사용되는 브랜치에서, 당신은 몇몇 단계에서 브랜치에서 일어난 것을 트렁크 안으로 혹은 반대로 머지를 원할 것이다 

당신이 이것을 사용하기 시작하기 전에 매우 복잡하게 되더라도 서브버전에서 브랜칭과 머징이 어떻게 작동하는지 이해하는 것은 중요하다. 어떻게 사용되는지에 대한 다양한 예제와 전체 설명이 있는 서브버전 책의 "브랜칭과 머징" 챕터를 읽는 것을 매우 강력히 권장한다.


다음 알아야할 내용은 머징은 워킹카피안에서 이뤄진다는 것이다. 브랜치 안으로 변경점을 머지 하고 싶다면, 브랜치를 위한 워킹 카피를 체크아웃 해야 하고, 워킹카피에서 TortoiseSVN -> Merge의 머지 위자드를 실행한다.


일반적으로 수정되지 않은 워킹카피로의 머지를 수행하는 것은 좋은 생각이다. 당신의 워킹카피에 다른 변경점이 있다면 그것들을 먼저 커밋해라. 머지가 당신이 예상한대로 작동하지 않는다거나 변경점을 되돌리고 싶어 한다면, Revert 명령을 통해 머지 이전을 포함한 모든 변경점을 파기하게 될 것이다.


아래에 기술 하듯, 근소하게 다른 방향으로 다뤄지는 머지의 3개의 일반적인 사용예가 있다.  머지 위자드의 첫 페이지에서는 당신이 사용할 방법을 고르도록 물어 볼 것이다.


리비전 범위 머지

  이 방법은 당신이 하나나 혹은 그 이상의 리비전들을 하나의 브랜치로 (혹은 트렁크) 만들고

  다른 브랜치들을 가로질러 변경점을 복사(port)하길 원할 때 사용된다.


  서브버전에게 이것을 어떻게 행하는지 물어 보면: " 브랜치 A의 리비전 1 [부터] 브랜치 A의 리비전 7 [까지] 얻어야 할 변경점을 계산하고, 이 변경점 들을 나의 워킹카피(브랜치 B나 트렁크)로 적용한다.


  리비전 범위를 비워둔다면, 서브버전은 올바른 리비전 범위르르 계산하기 위해 머지-추적 기능을 이용한다. 이것은 자동머지나 reintegrate 로 알려져 있다.


두개의 다른 트리를 머지

  이것은 reintegrate 방법보다 더욱 일반적인 경우입니다.서브버전에게 이것을 어떻게 행하는지 물어 보면: " 트렁크의 head 리비전 [부터] 브랜치의 head 리비전 [까지] 얻어야 할 변경점을 계산하고, 이 변경점 들을 나의 (트렁크의)워킹카피에 적용한다. 최종 결과로 트렁크는 브랜치와 완전 동일하게 보이게 된다.


  만약 당신의 서버/저장소가 머지-추적을 지원하지 않는다면 브랜치를 트렁크로 머지하는 유일한 방법이다. 다른 사용예는 벤더 브랜치를 사용할때 발생하고, 당신은 새로운 벤더를 뒤 따르는 트렁크 코드의 변경점을 머지해야 한다. 더 자세한 정보는 서브 버전 책의 "벤더 브랜치" 챕터를 읽기 바란다.

  


---

요거 아래로는 세부 내용이니 일단 패스

[링크 : https://tortoisesvn.net/docs/release/TortoiseSVN_en/tsvn-dug-merge.html]

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

svn relocate / ubuntu  (0) 2016.06.21
svn merge... 두근두근  (6) 2016.02.17
svnadmin dump로 덤프/합치기  (0) 2015.11.26
svn merge  (0) 2015.08.19
svn switch - shares no common ancestry with  (0) 2015.06.16
Posted by 구차니

이것저것 테스트 해봤지만..

그래도 .bashrc에다가 cd 하나 넣어 주는게 젤로 편하긴 하네..


d 드라이브로 바로 bash를 실행하는 방법

$ cd

$ vi .bashrc

cd /cygdrive/d/


[링크 : http://superuser.com/.../how-do-i-change-the-default-startup-directory-in-cygwin]

[링크 : http://stackoverflow.com/.../open-cygwin-at-a-specific-folder]

[링크 : http://unitstep.net/blog/2009/05/16/open-cygwin-bash-shell-here/] open with bash here

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

XDMCP over SSH ? / xnest  (0) 2016.02.03
xming / xdmcp 성공  (0) 2016.02.02
Xwin DISPLAY 고찰(?)  (0) 2015.08.13
Xming vs cygwin/x  (0) 2012.01.25
Cygwin/X 추려내기 - ing  (0) 2011.09.10
Posted by 구차니

-j 로 잘못하다가는 시스템 멈춤까지 가는데..

그걸 방지하기 위해 -l 옵션을 쓰는 것도 방법

기본값은 제한없음이니 적당히 설정해두면 좋을지도?

[링크 : http://korea.gnu.org/manual/4check/make-3.77/ko/make_5.html]


-j [jobs], --jobs[=jobs]

Specifies the number of jobs (commands) to run simultaneously. If there is more than one -j option, the last one is effective. If the -j option is given without an argument, make will not limit the number of jobs that can run simultaneously.


-l [load], --load-average[=load]

Specifies that no new jobs (commands) should be started if there are others jobs running and the load average is at least load (a floating-point number). With no argument, removes a previous load limit.


[링크 : http://linux.die.net/man/1/make


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

make 아카이브  (0) 2015.12.14
make 매크로  (0) 2015.12.14
makefile 병렬 대비하기  (0) 2015.11.30
make burn 0.0.0 ???  (0) 2014.11.11
make를 조용하게  (0) 2014.09.12
Posted by 구차니

의존성을 줌으로서

병렬 빌드시 모든 파일이 준비되어야 하도록 해주어야 함


여기서 미묘한 점이 있는데 직렬 질드에서는 make 가 application 의 의존성 목록에서 왼쪽에서 오른쪽으로 작업을 시작할 것입니다. 첫번째로 ${OBJECTS} 의 모든 오브젝트들을 빌드 하고 나서 menu.o 를 빌드하는 규칙을 적용할 것입니다. 이러한 직렬 환경에서는 문제가 없습니다 왜냐하면 menu.o 가 처리될때 필요한 ${OBJECTS} 의 모든 오브젝트들은 이미 제자리에 있을 것이기 떄문입니다. 그러나 병렬 빌드에서 make 는 병렬 환경에서 모든 의존성들을 처리할 수 있으므로 menu.o 의 생성과 컴파일은 모든 오브젝트 들이 준비 되기 전에 시작 될 수 있습니다


   OBJECTS=app.o helper.o utility.o ... 


    application: ${OBJECTS} menu.o 

        cc -o application ${OBJECTS}  menu.o 


    # Automatically generate menu.c from the other modules 

    menu.o: 

        nm ${OBJECTS} | pattern_match_and_gen_code > menu.c 

        cc -c menu.c


    application: ${OBJECTS} menu.o 

        cc -o application ${OBJECTS}  menu.o 


    menu.o: ${OBJECTS} 

        nm ${OBJECTS} | pattern_match_and_gen_code > menu.c 

        cc -c menu.c  


[링크 : http://blog.syszone.co.kr/2099]


+

[링크 : http://forum.falinux.com/zbxe/index.php?document_srl=405822&]

[링크 : http://korea.gnu.org/manual/4check/make-3.77/ko/make_toc.html]

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

make 매크로  (0) 2015.12.14
make -j -l  (0) 2015.11.30
make burn 0.0.0 ???  (0) 2014.11.11
make를 조용하게  (0) 2014.09.12
cmake 사용  (0) 2011.10.07
Posted by 구차니

$ svnadmin help dump

dump: usage: svnadmin dump REPOS_PATH [-r LOWER[:UPPER] [--incremental]]


$ svnadmin dump repos/ > repos.dmp

svnadmin: Expected FS format between '1' and '4'; found format '6'


하.. 이 써글 버전..

꺼부기 에서 최신버전 해놨더니 DB 버전이 6이 되어버려서

리눅스에서는 구버전인지라.. 인식이 안되나 보다.. ㅠㅠ


옳은 해결방법은 아니지만 강제로 db 버전을 4라고 속여서 궈궈 ㅠㅠ

[링크 : http://stackoverflow.com/.../subversion-svn-e160043-expected-fs-format-between-1-and-4]


$ vi repos/db/format

6

layout sharded 1000


$ sudo vi repos/db/format

4

layout sharded 1000


$ svnadmin dump /home/minimonk/repos > repos.dmp

* Dumped revision 0.

...

* Dumped revision 135.


$ file repos.dmp
repos.dmp: Subversion dumpfile (version: 2)

$ svnadmin help load
load: usage: svnadmin load REPOS_PATH

Read a 'dumpfile'-formatted stream from stdin, committing
new revisions into the repository's filesystem.  If the repository
was previously empty, its UUID will, by default, be changed to the
one specified in the stream.  Progress feedback is sent to stdout.

Valid options:
  -q [--quiet]             : no progress (only errors) to stderr
  --ignore-uuid            : ignore any repos UUID found in the stream
  --force-uuid             : set repos UUID to that found in stream, if any
  --use-pre-commit-hook    : call pre-commit hook before committing revisions
  --use-post-commit-hook   : call post-commit hook after committing revisions
  --parent-dir ARG         : load at specified directory in repository

으아아아 해보지 않으니 안되는걸 알리가.. ㅠㅠ
< 로 stdin에서 파일을 받아야 하는데 왜 그걸 안알랴준거야!!!

$ sudo svnadmin load repos1 --parent-dir temp < repos.dmp
<<< Started new transaction, based on original revision 1
     * adding path : temp/rev133-150114 ... done.
     * adding path : temp/rev133-150114/App ... done.

...

------- Committed new rev 1213 (loaded from original rev 135) >>>

완료!!
svn repo browser로 보니 원하는 경로였던
svn 저장소 상의 /temp에 잘 들어가있고 리비전 히스토리까지 다 들어가 있다!! 우오오오

그런데.. 새로 받아야지 UUID가 달라서 switch도 relocate도 안된다 ㅠㅠ



[링크 : http://unix.stackexchange.com/questions/6676/svn-switch-relocate-wrong-uuid]


2015/06/06 - [프로그램 사용/CVS / SVN / GIT / Mercurial] - svn 저장소 합치기

2011/01/08 - [프로그램 사용/CVS / SVN / GIT / Mercurial] - SVN 저장소 합치기 - merging SVN repositories


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

svn merge... 두근두근  (6) 2016.02.17
tortoiseSVN merge 페이지 번역  (0) 2015.12.02
svn merge  (0) 2015.08.19
svn switch - shares no common ancestry with  (0) 2015.06.16
svn 저장소 합치기  (0) 2015.06.06
Posted by 구차니

일단 윈7 되면서 SMB2 로 버전이 업되었고

SMB2 부터는 oplock을 끌수 없게 되었다고 한다.


그래서 win7에서 SMB2/3를 사용하지 않고 SMB1으로 강제 한뒤

oplock을 끌수는 있다고 하는데..


The SMBv2 protocol was introduced in Windows Vista and Windows Server 2008. 

The SMBv3 protocol was introduced in Windows 8 and Windows Server 2012.

[링크 : https://support.microsoft.com/en-us/kb/2696547]


일단 윈도우에서 파일 업로드가 안되는 에러가 발생해서 검색해보니

strict locking을 끄라고 해서 해봤더니.. 일단은 됨..(여전히 오래 걸리지만)


$ sudo vi /etc/samba/smb.conf

[global]

strict locking = no




[링크 : http://serverfault.com/...nfs4-mount-directory-window-clients-cannot-copy-file]

'프로그램 사용 > SMB(Samba)' 카테고리의 다른 글

wins를 이용한 ubuntu에서 samba host 이름 resolve하기  (0) 2016.09.10
삼바 휴지통 vfs_object  (0) 2015.12.08
smbpasswd의 hash generator  (0) 2014.09.22
SMB2  (0) 2013.09.13
samba 폴터 생성시 퍼미션  (0) 2012.12.14
Posted by 구차니
프로그램 사용/doxygen2015. 11. 9. 15:03


$ sudo apt-get install doxygen

$ doxygen -g

$ vi Doxyfile

$ doxygen


[링크 : http://linuxspot.tistory.com/264]

[링크 : http://www.stack.nl/~dimitri/doxygen/manual/config.html]


[링크 : http://egloos.zum.com/wlan/v/10805691]


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

doxygen - 부제 : 독한녀석!  (0) 2010.03.26
Posted by 구차니