GoGPT Best VPN GoSearch

온웍스 파비콘

i686-linux-gnu-objcopy - 클라우드에서 온라인

Ubuntu Online, Fedora Online, Windows 온라인 에뮬레이터 또는 MAC OS 온라인 에뮬레이터를 통해 OnWorks 무료 호스팅 제공자에서 i686-linux-gnu-objcopy를 실행하세요.

이것은 Ubuntu Online, Fedora Online, Windows 온라인 에뮬레이터 또는 MAC OS 온라인 에뮬레이터와 같은 여러 무료 온라인 워크스테이션 중 하나를 사용하여 OnWorks 무료 호스팅 제공자에서 실행할 수 있는 i686-linux-gnu-objcopy 명령입니다.

프로그램:

이름


objcopy - 객체 파일 복사 및 번역

개요


객체 복사 [-F bfd 이름|--대상=bfd 이름]
[-I bfd 이름|--입력 대상=bfd 이름]
[-O bfd 이름|--출력 대상=bfd 이름]
[-B bfdarch|--바이너리 아키텍처=bfdarch]
[-S|-모든 스트립]
[-g|--스트립-디버그]
[-K 기호 이름|--keep-symbol =기호 이름]
[-N 기호 이름|--스트립 기호=기호 이름]
[--strip-불필요한-기호=기호 이름]
[-G 기호 이름|--유지-전역-기호=기호 이름]
[--현지화-숨김]
[-L 기호 이름|--localize-기호=기호 이름]
[--글로벌화-기호=기호 이름]
[-W 기호 이름|--weak-symbol=기호 이름]
[-w|-와일드 카드]
[-x|--모두 삭제]
[-X|--discard-locals]
[-b 바이트|--바이트=바이트]
[-i []|--인터리브[=]]
[--인터리브 너비=]
[-j 단면패턴|--only-섹션=단면패턴]
[-R 단면패턴|--제거 섹션=단면패턴]
[-p|--보존 날짜]
[-D|--결정적 아카이브 활성화]
[-U|--disable-결정론적 아카이브]
[--디버깅]
[--갭 채우기=]
[--패드로=주소]
[--세트-시작=]
[--조정 시작=증가]
[--변경 주소=증가]
[--섹션 주소 변경 단면패턴{=,+,-}]
[--변경-섹션-lma 단면패턴{=,+,-}]
[--변경-섹션-vma 단면패턴{=,+,-}]
[--변경 경고] [--변경 불가 경고]
[--섹션 플래그 설정 단면패턴=플래그]
[--섹션 추가 섹션 이름=파일 이름]
[--덤프 섹션 섹션 이름=파일 이름]
[--업데이트 섹션 섹션 이름=파일 이름]
[--이름 바꾸기-섹션 옛 이름=새 이름[,플래그]]
[--긴 섹션 이름 {활성화, 비활성화, 유지}]
[--변경 선두 문자] [-- 선행 문자 제거]
[--역바이트=NUM]
[--srec-len=ival] [--srec-forceS3]
[--재정의-sym 낡은= ]
[--재정의-syms=파일 이름]
[--묽게 하다]
[--기호 유지=파일 이름]
[--스트립 기호=파일 이름]
[--스트립-불필요한-기호=파일 이름]
[--전역-기호 유지=파일 이름]
[--localize-기호=파일 이름]
[--글로벌화-기호=파일 이름]
[--weak-symbols=파일 이름]
[--추가 기호 name=[섹션에 있어야 합니다.:]가치[,플래그]
[--alt-머신 코드=색인]
[--접두사 기호=]
[--접두사 섹션=]
[--접두사-할당-섹션=]
[--추가-gnu-디버그링크=파일 경로]
[--파일 기호 유지]
[--만-유지-디버그]
[--strip-dwo]
[--추출-dwo]
[--추출-기호]
[--쓰기 가능한 텍스트]
[--readonly-텍스트]
[--순수한]
[--더러운]
[--파일 정렬=NUM]
[--힙=크기]
[--이미지 기반=주소]
[--섹션 정렬=NUM]
[--스택=크기]
[--하위 시스템=어느:주요한.미성년자]
[--압축-디버그-섹션]
[--decompress-debug-섹션]
[--왜성 깊이=n]
[-- 왜소한 시작 =n]
[-v|--말 수가 많은]
[-V|--번역]
[--도움] [--정보]
인파일 [아웃파일]

기술


GNU 객체 복사 유틸리티는 개체 파일의 내용을 복사합니다.
또 다른. 객체 복사 GNU BFD 라이브러리를 사용하여 객체를 읽고 씁니다.
파일. 대상 개체 파일을 다른 형식으로 쓸 수 있습니다.
소스 개체 파일의 동작과 다릅니다. 정확한 동작은 다음과 같습니다. 객체 복사 is
명령줄 옵션으로 제어됩니다. 객체 복사 할 수 있어야 한다
완전히 연결된 파일을 두 형식 간에 복사하는 것입니다. 그러나
두 형식 간의 재배치 가능한 개체 파일은 작동하지 않을 수 있습니다.
예상.

객체 복사 번역을 위해 임시 파일을 생성하고 삭제합니다.
기후. 객체 복사 모든 번역 작업을 수행하기 위해 BFD를 사용합니다.
BFD에 기술된 모든 형식에 액세스할 수 있으므로
명시적으로 알려주지 않아도 대부분의 형식을 인식합니다.

객체 복사 출력 대상을 사용하여 S-레코드를 생성하는 데 사용할 수 있습니다.
기록 (예: 사용 -O 기록).

객체 복사 출력을 사용하여 원시 바이너리 파일을 생성하는 데 사용할 수 있습니다.
대상 (예: 사용 -O ). 언제 객체 복사 원시를 생성합니다
이진 파일의 경우 기본적으로 내용의 메모리 덤프가 생성됩니다.
입력 객체 파일의 모든 심볼과 재배치 정보는
삭제됩니다. 메모리 덤프는 로드 주소에서 시작됩니다.
가장 낮은 섹션이 출력 파일에 복사되었습니다.

S-레코드 또는 원시 바이너리 파일을 생성할 때 다음이 도움이 될 수 있습니다.
사용 -S 디버깅 정보가 포함된 섹션을 제거합니다. 일부
가지 경우 -R 정보가 포함된 섹션을 제거하는 데 유용합니다.
이는 바이너리 파일에 필요하지 않습니다.

메모---객체 복사 입력 파일의 엔디언을 변경할 수 없습니다.
입력 형식에 엔디안이 있는 경우(일부 형식에는 엔디안이 없음) 객체 복사
동일한 파일 형식으로만 입력을 복사할 수 있습니다.
엔디안 방식 또는 엔디안 방식이 없는 방식(예: 기록). (그러나 다음을 참조하십시오.
--역바이트 선택권.)

옵션


인파일
아웃파일
각각 입력 및 출력 파일입니다. 지정하지 않으면
아웃파일, 객체 복사 임시 파일을 생성하고 파괴적으로 이름을 바꿉니다.
이름이 있는 결과 인파일.

-I bfd 이름
--입력 대상=bfd 이름
소스 파일의 개체 형식을 다음과 같이 고려하십시오. bfd 이름보다는
그것을 추론하려고 시도하고 있습니다.

-O bfd 이름
--출력 대상=bfd 이름
개체 형식을 사용하여 출력 파일 작성 bfd 이름.

-F bfd 이름
--대상=bfd 이름
bfd 이름 입력과 출력 모두에 대한 객체 형식으로
파일; 즉, 소스에서 대상으로 데이터를 전송합니다.
번역.

-B bfdarch
--바이너리 아키텍처=bfdarch
아키텍처가 없는 입력 파일을 변환할 때 유용합니다.
개체 파일입니다. 이 경우 출력 아키텍처를 다음과 같이 설정할 수 있습니다.
bfdarch. 입력 파일에 알려진 내용이 있는 경우 이 옵션은 무시됩니다.
bfdarch. 다음을 통해 프로그램 내에서 이 바이너리 데이터에 액세스할 수 있습니다.
변환에 의해 생성된 특수 기호를 참조합니다.
프로세스입니다. 이러한 기호를 _이진_이라고 합니다.개체 파일_시작,
_바이너리_개체 파일_end와 _binary_개체 파일_size. 예를 들어 다음과 같이 할 수 있습니다.
그림 파일을 개체 파일로 변환한 다음 액세스합니다.
이러한 기호를 사용하여 코드를 입력하세요.

-j 단면패턴
--only-섹션=단면패턴
입력 파일에서 지정된 섹션만 출력 파일로 복사합니다.
파일. 이 옵션은 두 번 이상 지정될 수 있습니다.
이 옵션을 부적절하게 사용하면 출력 파일을 사용할 수 없게 될 수 있습니다.
와일드카드 문자는 다음에서 허용됩니다. 단면패턴.

-R 단면패턴
--제거 섹션=단면패턴
일치하는 모든 섹션 제거 단면패턴 출력 파일에서.
이 옵션은 두 번 이상 지정될 수 있습니다. 이 옵션을 사용하면
옵션을 잘못 사용하면 출력 파일을 사용할 수 없게 될 수 있습니다. 와일드카드
문자는 허용됩니다 단면패턴. 두 가지를 모두 사용하여 -j 그리고
-R 옵션을 함께 사용하면 정의되지 않은 동작이 발생합니다.

-S
-모든 스트립
소스 파일에서 재배치 및 기호 정보를 복사하지 마십시오.

-g
--스트립-디버그
소스 파일에서 디버깅 기호나 섹션을 복사하지 마십시오.

--스트립-불필요
재배치 처리에 필요하지 않은 모든 기호를 제거합니다.

-K 기호 이름
--keep-symbol =기호 이름
기호를 제거할 때 기호를 유지 기호 이름 설령 그럴지라도
정상적으로 벗겨집니다. 이 옵션은 두 번 이상 제공될 수 있습니다.

-N 기호 이름
--스트립 기호=기호 이름
기호를 복사하지 마십시오 기호 이름 소스 파일에서. 이 옵션은
한 번 이상 주어질 수 있습니다.

--strip-불필요한-기호=기호 이름
기호를 복사하지 마십시오 기호 이름 소스 파일에서 그렇지 않은 경우
이전으로 인해 필요합니다. 이 옵션은 여러 번 제공될 수 있습니다.

-G 기호 이름
--유지-전역-기호=기호 이름
기호만 유지 기호 이름 전역. 다른 모든 심볼을 로컬로 설정
파일에 추가하면 외부에서 볼 수 없게 됩니다. 이 옵션은
한 번 이상 주어질 수 있습니다.

--현지화-숨김
ELF 객체에서 숨겨진 또는 내부적인 모든 심볼을 표시합니다.
로컬 가시성입니다. 이 옵션은 심볼별 가시성 외에도 적용됩니다.
다음과 같은 현지화 옵션 -L.

-L 기호 이름
--localize-기호=기호 이름
기호 만들기 기호 이름 파일에 로컬이므로 보이지 않습니다.
외부적으로. 이 옵션은 두 번 이상 지정될 수 있습니다.

-W 기호 이름
--weak-symbol=기호 이름
기호 만들기 기호 이름 약함. 이 옵션은 다음보다 더 많이 제공될 수 있습니다.
일단.

--글로벌화-기호=기호 이름
기호 제공 기호 이름 외부에서도 볼 수 있도록 전역 범위 지정
정의된 파일의. 이 옵션은 더 자세히 지정될 수 있습니다.
한 번 이상

-w
-와일드 카드
정규 표현식 허용 기호 이름s는 다른 명령에서 사용됨
라인 옵션. 물음표(?), 별표(*), 백슬래시(\)
및 대괄호([]) 연산자는
기호 이름. 기호 이름의 첫 번째 문자가
느낌표(!)를 사용하면 스위치의 의미가 반전됩니다.
그 상징. 예를 들어:

-w -W !foo -W 포*

objcopy가 "fo"로 시작하는 모든 심볼을 약화시키게 됩니다.
"foo"라는 기호를 제외하고.

-x
--모두 삭제
소스 파일에서 비전역 기호를 복사하지 마십시오.

-X
--discard-locals
컴파일러가 생성한 로컬 심볼을 복사하지 마십시오. (일반적으로 다음과 같이 시작합니다.
L or ..)

-b 바이트
--바이트=바이트
인터리빙이 다음을 통해 활성화된 경우 --인터리브 다음 옵션
유지할 바이트 범위를 시작하세요. 바이트세 번째 바이트. 바이트 될 수 있습니다
0에서 -1, 여기서 주어진 값입니다
--인터리브 옵션을 선택합니다.

-i []
--인터리브[=]
다음 범위만 복사 바이트. (헤더 데이터는 아닙니다
영향을 받음). 복사를 시작할 범위 내의 바이트를 선택하십시오.
--바이트 옵션. 범위의 너비를 선택하세요.
--인터리브 너비 옵션을 선택합니다.

이 옵션은 ROM을 프로그래밍할 파일을 만드는 데 유용합니다.
일반적으로 "srec" 출력 대상과 함께 사용됩니다. 객체 복사
지정하지 않으면 불평할 것입니다. --바이트 옵션도 있습니다.

기본 인터리브 너비는 4이므로 --바이트 0으로 설정,
객체 복사 4바이트 중 첫 번째 바이트를 복사합니다.
입력을 출력으로.

--인터리브 너비=
와 함께 사용할 때 --인터리브 옵션, 복사 한 번에 바이트씩.
복사할 바이트 범위의 시작은 다음에 의해 설정됩니다. --바이트
옵션이며 범위의 범위는 다음과 같이 설정됩니다. --인터리브
옵션을 선택합니다.

이 옵션의 기본값은 1입니다. ...을 더한
전에, 바이트 에 의해 설정된 값 --바이트 옵션은 다음을 초과해서는 안 됩니다.
인터리브 폭은 다음에 의해 설정됩니다. --인터리브 옵션을 선택합니다.

이 옵션은 두 개의 16비트 플래시에 대한 이미지를 생성하는 데 사용할 수 있습니다.
32비트 버스에 인터리브되어 전달됨 -b 0 -i 4
--인터리브 너비=2 그리고 -b 2 -i 4 --인터리브 너비=2 이에
객체 복사 명령. 입력이 '12345678'이면 출력은 다음과 같습니다.
각각 '1256'과 '3478'이 됩니다.

-p
--보존 날짜
출력 파일의 액세스 및 수정 날짜를 다음과 같이 설정합니다.
입력 파일과 동일합니다.

-D
--결정적 아카이브 활성화
운영 결정 론적 인 방법. 아카이브 구성원을 복사할 때
아카이브 색인을 작성하고 UID, GID, 타임스탬프에 XNUMX을 사용하고
모든 파일에 일관된 파일 모드를 사용합니다.

If binutils 로 구성되었습니다 --결정적 아카이브 활성화,
이 모드는 기본적으로 켜져 있습니다. 다음으로 비활성화할 수 있습니다. -U
옵션, 아래.

-U
--disable-결정론적 아카이브
Do 지원 작동 결정 론적 인 방법. 이것은 역의
-D 옵션, 위: 아카이브 구성원을 복사하고
아카이브 색인, 실제 UID, GID, 타임스탬프 및 파일 모드 사용
values.

다음이 아니면 기본값입니다. binutils 로 구성되었습니다
--결정적 아카이브 활성화.

--디버깅
가능하다면 디버깅 정보를 변환하세요. 이것은 아닙니다.
특정 디버깅 형식만 지원되므로 기본값입니다.
변환 과정에는 시간이 많이 걸릴 수 있습니다.

--갭 채우기
섹션 사이의 간격 채우기 . 이 작업은 다음 항목에 적용됩니다.
하중 주소 (LMA) 섹션입니다. 이는 다음을 증가시켜 수행됩니다.
하위 주소가 있는 섹션의 크기를 채우고
추가 공간이 생성됨 .

--패드로 주소
로드 주소까지 출력 파일을 채웁니다. 주소. 이것은 완료되었습니다
마지막 섹션의 크기를 늘려서. 추가 공간은
지정된 값으로 채워짐 --갭 채우기 (기본값 XNUMX).

--설정-시작
새 파일의 시작 주소를 다음으로 설정하십시오. . 모든 객체 파일이 아닙니다
형식은 시작 주소 설정을 지원합니다.

--변경 시작 증가
--조정 시작 증가
다음을 추가하여 시작 주소를 변경하십시오. 증가. 모든 객체 파일이 아닙니다
형식은 시작 주소 설정을 지원합니다.

--주소 변경 증가
--adjust-vma 증가
모든 섹션의 VMA 및 LMA 주소와
시작 주소, 추가하여 증가. 일부 개체 파일 형식은 그렇지 않습니다.
허용 섹션 주소를 임의로 변경할 수 있습니다. 이 점에 유의하세요.
섹션을 다시 배치하지 않습니다. 프로그램이 섹션을 예상하는 경우
특정 주소에 로드되며 이 옵션은 변경하는 데 사용됩니다.
섹션이 다른 주소에 로드되도록 합니다.
프로그램이 실패할 수 있습니다.

--섹션 주소 변경 단면패턴{=,+,-}
--조정 섹션-vma 단면패턴{=,+,-}
VMA 주소와 LMA 주소를 모두 설정하거나 변경합니다.
섹션 매칭 단면패턴. 면 = 섹션 주소가 사용됩니다.
. 그렇지 않으면, 에 추가되거나 빼집니다
섹션 주소. 아래의 댓글을 참조하세요. --주소 변경위에.
If 단면패턴 입력 파일의 어떤 섹션과도 일치하지 않습니다.
하지 않는 한 경고가 발행됩니다. --변경 불가 경고 사용.

--변경-섹션-lma 단면패턴{=,+,-}
일치하는 섹션의 LMA 주소 설정 또는 변경
단면패턴. LMA 주소는 섹션이 있는 주소입니다.
프로그램 로드 시간에 메모리에 로드됩니다. 일반적으로 이는
VMA 주소와 동일하며 이는 섹션의 주소입니다.
프로그램 실행 시간이지만 특히 다음과 같은 일부 시스템에서는
프로그램이 ROM에 저장되어 있으면 둘은 다를 수 있습니다. 만약에 = 사용,
섹션 주소가 설정되었습니다 . 그렇지 않으면, 추가되거나
섹션 주소에서 빼세요. 아래 주석을 참조하세요.
--주소 변경, 위에. 만약에 단면패턴 일치하지 않습니다
입력 파일에 섹션이 없으면 경고가 발행됩니다.
--변경 불가 경고 사용.

--변경-섹션-vma 단면패턴{=,+,-}
일치하는 섹션의 VMA 주소 설정 또는 변경
단면패턴. VMA 주소는 섹션이 있는 주소입니다.
프로그램 실행이 시작되면 위치하게 됩니다. 일반적으로
이는 LMA 주소와 동일합니다. LMA 주소는 다음과 같은 주소입니다.
섹션은 메모리에 로드되지만 특히 일부 시스템에서는
프로그램이 ROM에 저장되는 경우 두 가지가 다를 수 있습니다.
= 사용되는 경우 섹션 주소가 다음으로 설정됩니다. . 그렇지 않으면, is
섹션 주소에 추가하거나 뺄 수 있습니다. 주석을 참조하세요.
아래에 --주소 변경, 위에. 만약에 단면패턴 일치하지 않는다
입력 파일의 모든 섹션에서 다음을 제외하고 경고가 발행됩니다.
--변경 불가 경고 사용.

--변경 경고
--adjust-경고
If --섹션 주소 변경 or --변경-섹션-lma or
--변경-섹션-vma 사용되며 섹션 패턴은 사용되지 않습니다.
모든 섹션과 일치하면 경고를 표시합니다. 이것이 기본값입니다.

--변경 불가 경고
--조정 없음 경고
다음과 같은 경우 경고를 발행하지 마십시오. --섹션 주소 변경 or
--조정 섹션-lma or --조정 섹션-vma 사용되더라도
섹션 패턴과 일치하는 섹션이 없습니다.

--섹션 플래그 설정 단면패턴=플래그
일치하는 모든 섹션에 대한 플래그 설정 단면패턴. 그만큼 플래그
인수는 쉼표로 구분된 플래그 이름 문자열입니다. 인식되는
이름은 할당, 내용, 하중, 무부하, 읽기 전용, 암호, 데이터, ,
디버그. 당신은 설정할 수 있습니다 내용 섹션에 대한 플래그
내용이 없으나, 지워도 의미가 없다.
내용 내용이 있는 섹션의 플래그--제거하기만 하면 됩니다.
대신 섹션을 사용합니다. 모든 플래그가 모든 객체에 대해 의미가 있는 것은 아닙니다.
파일 형식을 지원합니다.

--섹션 추가 섹션 이름=파일 이름
이름이 새 섹션 추가 섹션 이름 파일을 복사하는 동안.
새 섹션의 내용은 파일에서 가져옵니다. 파일 이름. 그만큼
섹션의 크기는 파일 크기가 됩니다. 이 옵션은
임의의 섹션을 지원할 수 있는 파일 형식에서 작동합니다.
이름. 참고 - 다음을 사용해야 할 수도 있습니다. --섹션 플래그 설정
새로 생성된 섹션의 속성을 설정하는 옵션입니다.

--덤프 섹션 섹션 이름=파일 이름
이름이 지정된 섹션의 내용을 배치합니다. 섹션 이름 파일에
파일 이름, 거기에 있었을 수 있는 모든 내용을 덮어씁니다.
이전에. 이 옵션은 다음과 반대입니다. --섹션 추가. 이
옵션은 다음과 유사합니다. --only-섹션 단, 그 외에는 옵션이 없습니다.
포맷된 파일을 생성하지 않고, 단지 원시 파일로 내용을 덤프합니다.
재배치를 적용하지 않고 이진 데이터를 사용할 수 있습니다. 옵션은 다음과 같습니다.
두 번 이상 지정됩니다.

--업데이트 섹션 섹션 이름=파일 이름
이름이 지정된 섹션의 기존 내용 바꾸기 섹션 이름
파일의 내용 파일 이름. 섹션의 크기는 다음과 같습니다.
파일 크기에 맞게 조정됩니다. 섹션 플래그는
섹션 이름 변경되지 않습니다. ELF 형식 파일의 경우 섹션
세그먼트 매핑도 변경되지 않은 상태로 유지됩니다.
사용 가능 --제거 섹션 다음 --섹션 추가. 그만큼
옵션은 두 번 이상 지정될 수 있습니다.

참고 - 사용 가능 --이름 바꾸기-섹션 그리고 --업데이트 섹션
한 명령줄에서 섹션을 업데이트하고 이름을 바꿀 수 있습니다. 이
경우 원래 섹션 이름을 전달합니다. --업데이트 섹션
원래 섹션 이름과 새 섹션 이름 --이름 바꾸기-섹션.

--추가 기호 name=[섹션에 있어야 합니다.:]가치[,플래그]
이름이 새 기호 추가 name 파일을 복사하는 동안. 이 옵션은
여러 번 지정할 수 있습니다. 섹션에 있어야 합니다. 주어진,
기호는 해당 섹션과 연관되고 관련됩니다.
그렇지 않으면 ABS 기호가 됩니다. 정의되지 않은 기호를 지정하면
섹션을 실행하면 치명적인 오류가 발생합니다.
값이 지정되면 지정된 대로 처리됩니다. 기호 플래그는 다음과 같습니다.
지정되었으며 모든 플래그가 모든 개체 파일에 의미가 있는 것은 아닙니다.
형식입니다. 기본적으로 해당 심볼은 전역입니다. 특수 플래그
'전에=다른 심'는 새로운 기호를 앞에 삽입합니다.
지정 다른 심그렇지 않으면 기호가 추가됩니다.
기호 표의 끝에 나타나는 순서대로 나열합니다.

--이름 바꾸기-섹션 옛 이름=새 이름[,플래그]
섹션 이름 바꾸기 옛 이름새 이름, 선택적으로 변경
섹션의 플래그 플래그 그 과정에서. 이것은 장점이 있습니다
링커 스크립트를 사용하여 출력에서 ​​이름 바꾸기를 수행하는 경우
개체 파일로 유지되며 링크된 실행 파일로 변하지 않습니다.

이 옵션은 입력 형식이 다음과 같은 경우 특히 유용합니다.
이진이므로 항상 .data라는 섹션이 생성됩니다.
예를 들어, 대신 .rodata라는 섹션을 만들고 싶었습니다.
이진 데이터가 포함된 경우 다음 명령줄을 사용할 수 있습니다.
그것을 달성하다:

objcopy -I 바이너리 -O -NS \
--rename-section .data=.rodata, 할당, 로드, 읽기 전용, 데이터, 내용 \


--긴 섹션 이름 {활성화, 비활성화, 유지}
"COFF" 처리 시 긴 섹션 이름 처리를 제어합니다.
및 "PE-COFF" 개체 형식. 기본 동작은 유지입니다
입력 파일에 긴 섹션 이름이 있으면 그대로 유지합니다.
The 가능 그리고 비활성화 옵션은 강제로 사용을 활성화하거나 비활성화합니다.
출력 객체의 긴 섹션 이름에 대해; 비활성화
효과, 입력 개체의 긴 섹션 이름은 다음과 같습니다.
잘린. 가능 옵션은 긴 섹션 이름만 내보냅니다.
입력에 어떤 것이든 존재합니다. 이는 대부분 다음과 같습니다. 유지하지만,
그것이 정의되지 않은 채로 남아 있습니다 가능 옵션은 강제로 실행될 수 있습니다
출력 파일에 빈 문자열 테이블을 생성합니다.

--변경 선두 문자
일부 개체 파일 형식은 시작 부분에 특수 문자를 사용합니다.
기호. 가장 일반적인 이러한 문자는 밑줄입니다.
컴파일러는 종종 모든 기호 앞에 다음을 추가합니다. 이 옵션은 객체 복사
변환할 때 모든 기호의 선행 문자를 변경합니다.
객체 파일 형식 간. 객체 파일 형식이 다음을 사용하는 경우
동일한 선행 문자인 경우 이 옵션은 효과가 없습니다. 그렇지 않으면
문자를 추가하거나, 문자를 제거하거나, 문자를 변경합니다.
적절한.

-- 선행 문자 제거
글로벌 심볼의 첫 번째 문자가 특수 심볼인 경우
개체 파일 형식에서 사용하는 선행 문자를 제거합니다.
문자. 가장 일반적인 기호 선행 문자는 밑줄입니다.
이 옵션은 모든 글로벌에서 선행 밑줄을 제거합니다.
기호입니다. 이는 객체를 서로 연결하려는 경우 유용할 수 있습니다.
기호에 대한 다른 규칙을 가진 다양한 파일 형식
이름입니다. 이것은 다릅니다 --변경 선두 문자 때문에
적절한 경우 항상 기호 이름을 변경합니다.
출력 파일의 개체 파일 형식입니다.

--역바이트=NUM
출력 내용이 있는 섹션의 바이트를 반전합니다. 섹션
길이는 주어진 값으로 균등하게 나누어져야 합니다.
스왑이 발생할 수 있습니다. 반전은 이전에 발생합니다.
인터리빙이 수행됩니다.

이 옵션은 일반적으로 ROM 이미지를 생성하는 데 사용됩니다.
문제가 있는 타겟 시스템. 예를 들어, 일부 타겟 보드에서는
32비트 ROM에서 가져온 8비트 단어는 다시 조립됩니다.
CPU 바이트 순서와 관계없이 리틀 엔디언 바이트 순서입니다.
프로그래밍 모델에 따라 ROM의 엔디안은 다음과 같습니다.
수정해야 합니다.

다음이 포함된 섹션이 있는 간단한 파일을 고려하십시오.
12345678바이트: XNUMX.

사용 --역바이트=2 위의 예에서 바이트는
출력 파일은 21436587로 정렬됩니다.

사용 --역바이트=4 위의 예에서 바이트는
출력 파일은 43218765로 정렬됩니다.

사용하여 --역바이트=2 위의 예에 대해
--역바이트=4 출력 파일에서 두 번째 바이트
출력 파일은 34127856로 정렬됩니다.

--srec-len=ival
srec 출력에만 의미가 있습니다. 최대 길이를 설정하세요.
제작 중인 Srecords ival. 이 길이는 주소와
데이터 및 CRC 필드.

--srec-forceS3
srec 출력에만 의미가 있습니다. S1/S2 생성을 피하세요.
레코드를 생성하여 S3 전용 레코드 형식을 만듭니다.

--재정의-sym 낡은=
기호 이름 변경 낡은 . 이것은 다음과 같은 경우에 유용할 수 있습니다.
하나는 당신이 알 수 없는 두 가지를 연결하려고 합니다.
소스가 없고 이름 충돌이 있습니다.

--재정의-syms=파일 이름
신청 --재정의-sym 각 기호 쌍에 "낡은 "에 나열되어 있습니다
파일 파일 이름. 파일 이름 하나의 기호를 가진 단순한 플랫 파일입니다.
한 줄에 쌍으로 표시됩니다. 줄 주석은 해시로 시작될 수 있습니다.
문자. 이 옵션은 여러 번 지정될 수 있습니다.

--묽게 하다
파일의 모든 글로벌 심볼을 weak로 변경합니다. 이는 다음과 같습니다.
다른 것과 연결될 객체를 구축할 때 유용합니다.
객체를 사용하여 -R 링커에 대한 옵션입니다. 이 옵션은
약한 지원이 있는 객체 파일 형식을 사용할 때 효과적입니다.
기호.

--기호 유지=파일 이름
신청 --기호 유지 파일에 나열된 각 기호에 대한 옵션
파일 이름. 파일 이름 하나의 심볼 이름을 갖는 단순한 플랫 파일입니다.
줄 주석은 해시 문자로 시작될 수 있습니다.
옵션은 두 번 이상 주어질 수 있습니다.

--스트립 기호=파일 이름
신청 --스트립 기호 파일에 나열된 각 기호에 대한 옵션
파일 이름. 파일 이름 하나의 심볼 이름을 갖는 단순한 플랫 파일입니다.
줄 주석은 해시 문자로 시작될 수 있습니다.
옵션은 두 번 이상 주어질 수 있습니다.

--스트립-불필요한-기호=파일 이름
신청 --strip-불필요한-기호 나열된 각 기호에 대한 옵션
파일 파일 이름. 파일 이름 하나의 기호를 가진 단순한 플랫 파일입니다.
줄당 이름. 줄 주석은 해시로 시작될 수 있습니다.
문자. 이 옵션은 여러 번 지정될 수 있습니다.

--전역-기호 유지=파일 이름
신청 --전역 기호 유지 파일에 나열된 각 기호에 대한 옵션
파일 이름. 파일 이름 하나의 심볼 이름을 갖는 단순한 플랫 파일입니다.
줄 주석은 해시 문자로 시작될 수 있습니다.
옵션은 두 번 이상 주어질 수 있습니다.

--localize-기호=파일 이름
신청 --localize-기호 파일에 나열된 각 기호에 대한 옵션
파일 이름. 파일 이름 하나의 심볼 이름을 갖는 단순한 플랫 파일입니다.
줄 주석은 해시 문자로 시작될 수 있습니다.
옵션은 두 번 이상 주어질 수 있습니다.

--글로벌화-기호=파일 이름
신청 --글로벌화-기호 파일에 나열된 각 기호에 대한 옵션
파일 이름. 파일 이름 하나의 심볼 이름을 갖는 단순한 플랫 파일입니다.
줄 주석은 해시 문자로 시작될 수 있습니다.
옵션은 두 번 이상 주어질 수 있습니다.

--weak-symbols=파일 이름
신청 --weak-심볼 파일에 나열된 각 기호에 대한 옵션
파일 이름. 파일 이름 하나의 심볼 이름을 갖는 단순한 플랫 파일입니다.
줄 주석은 해시 문자로 시작될 수 있습니다.
옵션은 두 번 이상 주어질 수 있습니다.

--alt-머신 코드=색인
출력 아키텍처에 대체 기계어 코드가 있는 경우 다음을 사용하십시오.
색인기본 코드 대신 th 코드를 사용합니다. 이는 다음과 같은 경우에 유용합니다.
기계에는 공식 코드가 지정되고 도구 체인은 다음을 채택합니다.
새로운 코드이지만 다른 애플리케이션은 여전히 ​​원래 코드에 의존합니다.
사용 중입니다. ELF 기반 아키텍처의 경우 색인 대안
존재하지 않으면 값은 절대 숫자로 처리됩니다.
ELF 헤더의 e_machine 필드에 저장됩니다.

--쓰기 가능한 텍스트
출력 텍스트를 쓰기 가능으로 표시합니다. 이 옵션은 다음 경우에는 의미가 없습니다.
모든 객체 파일 형식.

--readonly-텍스트
출력 텍스트를 쓰기 금지로 설정합니다. 이 옵션은 의미가 없습니다.
모든 객체 파일 형식에 대해.

--순수한
출력 파일을 요구 페이지 방식으로 표시합니다. 이 옵션은 의미가 없습니다.
모든 객체 파일 형식에 대해.

--더러운
출력 파일을 순수하지 않음으로 표시합니다. 이 옵션은 다음 경우에는 의미가 없습니다.
모든 객체 파일 형식.

--접두사 기호=
출력 파일의 모든 기호에 접두사를 붙입니다. .

--접두사 섹션=
출력 파일의 모든 섹션 이름에 접두사를 붙입니다. .

--접두사-할당-섹션=
출력 파일에 할당된 모든 섹션의 이름 앞에 접두사를 붙입니다.
.

--추가-gnu-디버그링크=파일 경로
에 대한 참조가 포함된 .gnu_debuglink 섹션을 만듭니다.
파일 경로 출력 파일에 추가합니다. 참고: 파일 위치
파일 경로 존재해야 합니다. 추가 프로세스의 일부
.gnu_debuglink 섹션에는 체크섬을 포함하는 것이 포함됩니다.
디버그 정보 파일의 내용을 섹션에 넣습니다.

디버그 정보 파일이 한 위치에 빌드되었지만
나중에 다른 위치에 설치하지 마십시오.
설치된 위치의 경로를 사용합니다. --add-gnu-debuglink
설치된 파일이 아직 존재하지 않기 때문에 해당 옵션은 실패합니다.
대신 디버그 정보 파일을 현재 디렉토리에 넣고 사용하세요.
전에, --add-gnu-debuglink 디렉토리 구성 요소가 없는 옵션
이렇게 :

objcopy --add-gnu-debuglink=foo.debug

디버그 시간에 디버거는 별도의 것을 찾으려고 시도합니다.
알려진 위치 집합에 있는 디버그 정보 파일입니다. 정확한 집합은
이러한 위치는 사용되는 배포에 따라 다릅니다.
하지만 일반적으로 다음이 포함됩니다.

"* 실행 파일과 같은 디렉토리."
"* 실행 파일이 포함된 디렉토리의 하위 디렉토리"
.debug라고 함

"* /usr/lib/debug와 같은 전역 디버그 디렉토리."

디버그 정보 파일이 다음 중 하나에 설치되어 있는 경우
디버거가 실행되기 전의 위치에서는 모든 것이 작동해야 합니다.
바르게.

--파일 기호 유지
파일을 제거할 때 아마도 --스트립-디버그 or
--스트립-불필요, 소스 파일 이름을 지정하는 모든 기호를 유지합니다.
그렇지 않으면 제거됩니다.

--만-유지-디버그
파일을 스트립하여 섹션의 내용을 제거합니다.
에 의해 벗겨지다 --스트립-디버그 디버깅 섹션을 종료합니다.
손상되지 않습니다. ELF 파일에서는 모든 음표 섹션이 그대로 유지됩니다.
출력.

참고 - 제거된 섹션의 섹션 헤더는 보존됩니다.
크기를 포함하지만 섹션의 내용은
폐기. 섹션 헤더는 다른 도구가
debuginfo 파일을 실제 실행 파일과 일치시킬 수 있습니다.
해당 실행 파일은 다른 주소 공간으로 재배치되었습니다.

의도는 이 옵션이 다음과 함께 사용된다는 것입니다.
--add-gnu-debuglink 두 부분으로 구성된 실행 파일을 만듭니다. 하나
RAM과
배포 및 두 번째 디버깅 정보 파일은
디버깅 능력이 필요한 경우에만 필요합니다. 제안된
이러한 파일을 만드는 절차는 다음과 같습니다.

1.
"후" 그럼...

1.
디버깅 정보가 포함된 파일을 만듭니다.

1.
제거된 실행 파일.

1.
스트립에 디버깅 정보에 대한 링크를 추가하려면
실행 파일.

참고---디버그 정보 파일의 확장자로 ".dbg" 선택
임의적이다. 또한 "--only-keep-debug" 단계는 선택 사항입니다. 너
대신 다음을 수행할 수 있습니다.

1.
1.
1.
1.

즉, 다음이 가리키는 파일 --add-gnu-debuglink 될 수 있습니다
전체 실행 가능. 에서 만든 파일일 필요는 없습니다.
--만-유지-디버그 스위치.

참고---이 스위치는 완전히 링크된 파일에만 사용하기 위한 것입니다.
객체 파일에 사용하는 것은 이치에 맞지 않습니다.
디버깅 정보가 불완전할 수 있습니다. gnu_debug링크 외에
기능은 현재 하나의 파일 이름만 지원합니다.
하나에 여러 파일 이름이 아니라 디버깅 정보를 포함하는
개체 파일 기준.

--strip-dwo
모든 DWARF .dwo 섹션의 내용을 제거하고
나머지 디버깅 섹션과 모든 심볼은 그대로 유지됩니다. 이 옵션은
컴파일러에서 다음의 일부로 사용하도록 의도되었습니다. -gsplit-dwarf
.o 파일과 디버그 정보를 분할하는 옵션
별도의 .dwo 파일입니다. 컴파일러가 모든 디버그 정보를 생성합니다.
같은 파일에서 다음을 사용합니다. --추출-dwo 복사 옵션
.dwo 섹션을 .dwo 파일에 추가한 다음 --strip-dwo ~에 대한 옵션
원본 .o 파일에서 해당 섹션을 제거합니다.

--추출-dwo
모든 DWARF .dwo 섹션의 내용을 추출합니다. 참조
--strip-dwo 자세한 내용은 옵션을 참조하십시오.

--파일 정렬 NUM
파일 정렬을 지정합니다. 파일의 섹션은 항상
이 숫자의 배수인 파일 오프셋에서. 기본값은 다음과 같습니다.
512로. [이 옵션은 PE 대상에만 적용됩니다.]

--더미 비축
--더미 비축,범하다
예약할 메모리 바이트 수를 지정합니다(선택 사항)
이 프로그램의 힙으로 사용할 커밋입니다. [이 옵션은
PE 타겟에 특화됨.]

--이미지 기반 가치
가치 프로그램이나 DLL의 기본 주소로 사용합니다.
프로그램이나 DLL이 사용될 가장 낮은 메모리 위치
로드되었습니다. 이전 필요성을 줄이고 성능을 개선하려면
각 DLL에는 고유한 기본 주소가 있어야 하며
다른 DLL과 겹치지 않도록 합니다. 실행 파일의 기본값은 0x400000입니다.
DLL의 경우 0x10000000입니다. [이 옵션은 PE 대상에만 적용됩니다.]

--섹션 정렬 NUM
섹션 정렬을 설정합니다. 메모리의 섹션은 항상 시작됩니다.
이 숫자의 배수인 주소에서. 기본값은 다음과 같습니다.
0x1000. [이 옵션은 PE 대상에만 적용됩니다.]

--스택 비축
--스택 비축,범하다
예약할 메모리 바이트 수를 지정합니다(선택 사항)
이 프로그램의 스택으로 사용할 커밋입니다. [이 옵션은
PE 타겟에 특화됨.]

--하위 시스템 어느
--하위 시스템 어느:주요한
--하위 시스템 어느:주요한.미성년자
프로그램이 실행될 하위 시스템을 지정합니다.
법적 값 어느 "네이티브", "윈도우", "콘솔", "포식스"입니다.
"efi-app", "efi-bsd", "efi-rtd", "sal-rtd", "xbox"를 사용할 수 있습니다.
선택적으로 하위 시스템 버전도 설정합니다. 숫자 값도 있습니다.
수락됨 어느. [이 옵션은 PE 대상에만 해당됩니다.]

--추출-기호
파일의 섹션 플래그와 기호는 유지하지만 모든 섹션을 제거합니다.
데이터. 구체적으로, 옵션은 다음과 같습니다.

*
*
*

이 옵션은 빌드하는 데 사용됩니다. .sym VxWorks 커널용 파일입니다.
크기를 줄이는 데 유용한 방법이기도 합니다. --그냥 기호
링커 입력 파일.

--압축-디버그-섹션
SHF_COMPRESSED를 사용하여 zlib을 사용하여 DWARF 디버그 섹션을 압축합니다.
ELF ABI. 참고 - 압축이 실제로 섹션을 만드는 경우
, 압축되지 않습니다.

--compress-debug-sections=없음
--압축-디버그-섹션=zlib
--압축-디버그-섹션=zlib-gnu
--압축-디버그-섹션=zlib-gabi
ELF 파일의 경우 이러한 옵션은 DWARF 디버그 섹션이 어떻게 제어되는지 제어합니다.
압축. --compress-debug-sections=없음 에 해당하는
--decompress-debug-섹션. --압축-디버그-섹션=zlib 그리고
--압축-디버그-섹션=zlib-gabi 와 동등하다
--압축-디버그-섹션. --압축-디버그-섹션=zlib-gnu
zlib을 사용하여 DWARF 디버그 섹션을 압축합니다. 디버그 섹션은 다음과 같습니다.
처음부터 이름이 바뀌었습니다 .z디버그 대신 .디버그. 참고 - 만약
압축은 실제로 섹션을 만들 것입니다 , 그러면 아니다
압축되거나 이름이 변경되지 않았습니다.

--decompress-debug-섹션
zlib을 사용하여 DWARF 디버그 섹션의 압축을 해제합니다. 원본 섹션
압축된 섹션의 이름이 복원됩니다.

-V
--번역
버전 번호 표시 객체 복사.

-v
--말 수가 많은
상세 출력: 수정된 모든 개체 파일을 나열합니다. 의 경우
아카이브, 객체 복사 -V 아카이브의 모든 구성원을 나열합니다.

--도움
옵션 요약 표시 객체 복사.

--정보
모든 아키텍처 및 개체 형식을 보여주는 목록 표시
사용할 수 있습니다.

@파일
다음에서 명령줄 옵션 읽기 파일. 읽은 옵션이 삽입됩니다.
원래 @ 대신파일 옵션. 만약에 파일 존재하지 않거나
읽을 수 없는 경우 옵션은 문자 그대로 처리되며
제거되었습니다.

옵션 파일 공백으로 구분됩니다. 공백
문자는 전체를 둘러싸서 옵션에 포함될 수 있습니다.
작은따옴표나 큰따옴표로 묶인 옵션입니다. 모든 문자(포함
백슬래시)는 문자를 접두사로 추가하여 포함할 수 있습니다.
백슬래시와 함께 포함됩니다. NS 파일 자체적으로 추가 포함할 수 있습니다
@파일 옵션; 이러한 옵션은 재귀적으로 처리됩니다.

onworks.net 서비스를 사용하여 i686-linux-gnu-objcopy를 온라인으로 사용하세요.


무료 서버 및 워크스테이션

Windows 및 Linux 앱 다운로드

Linux 명령

Ad




×
광고
❤️여기에서 쇼핑, 예약, 구매하세요. 비용이 들지 않아 서비스를 무료로 유지하는 데 도움이 됩니다.