|
Video Encoder 264 не устанавливает, проблема с ЛД флаги
Привет всем,
У меня есть большая проблема. Я пытаюсь установить 264 видео-кодировщика (JM 15.1 с H.264/AVC JM Справка Загрузить программное обеспечение) На OS X 10.5.5.
Прежде всего, мне пришлось отключить статической компиляции, из-за этой ошибки:
Код:
ld_classic: can't locate file for: -lcrt0.o
Я читал об этом на некоторых форумах и инвалидов статической компиляции в Makefile и она была решена. Теперь я получаю эту ошибку:
Код:
creating binary "../bin/lencod.exe"
ld: absolute addressing (perhaps -mdynamic-no-pic) used in _rc_init_GOP from obj/rc_quadratic.o not allowed in slidable image. Use '-read_only_relocs suppress' to enable text relocs
collect2: ld returned 1 exit status
и вот в Makefile:
Код:
NAME= lencod
### include debug information: 1=yes, 0=no
DBG?= 0
### Generate 32 bit executable : 1=yes, 0=no
M32?= 0
### include O level optimization : 0-3
OPT?= 3
### Static Compilation
STC?= 0
DEPEND= dependencies
BINDIR= ../bin
INCDIR= inc
SRCDIR= src
OBJDIR= obj
ADDSRCDIR= ../lcommon/src
ADDINCDIR= ../lcommon/inc
ifeq ($(M32),1)
CC= gcc -m32
else
CC= gcc
endif
ifeq ($(STC),1)
ifeq ($(DBG),1) ### Do not use static compilation for Debug mode
STC=0
STATIC=
else
STATIC= -static
endif
else
STATIC=
endif
LIBS= -lm $(STATIC)
AFLAGS=
CFLAGS= -std=gnu99 -pedantic -ffloat-store -fno-strict-aliasing -fsigned-char $(STATIC)
FLAGS= $(CFLAGS) -Wall -I$(INCDIR) -I$(ADDINCDIR) -D __USE_LARGEFILE64 -D _FILE_OFFSET_BITS=64
OPT_FLAG = -O$(OPT)
ifeq ($(DBG),1)
SUFFIX= .dbg
FLAGS+= -g
else
SUFFIX=
FLAGS+= $(OPT_FLAG)
endif
OBJSUF= .o$(SUFFIX)
SRC= $(wildcard $(SRCDIR)/*.c)
ADDSRC= $(wildcard $(ADDSRCDIR)/*.c)
OBJ= $(SRC:$(SRCDIR)/%.c=$(OBJDIR)/%.o$(SUFFIX)) $(ADDSRC:$(ADDSRCDIR)/%.c=$(OBJDIR)/%.o$(SUFFIX))
BIN= $(BINDIR)/$(NAME)$(SUFFIX).exe
.PHONY: default distclean clean tags depend
default: messages objdir_mk depend bin
messages:
ifeq ($(M32),1)
@echo 'Compiling with M32 support...'
endif
ifeq ($(DBG),1)
@echo 'Compiling with Debug support...'
@echo 'Note static compilation not supported in this mode.'
endif
ifeq ($(STC),1)
@echo 'Compiling with -static support...'
endif
ifeq ($(MMX),1)
@echo 'Compiling with MMX support...'
endif
clean:
@echo remove all objects
@rm -rf $(OBJDIR)
distclean: clean
@rm -f $(DEPEND) tags
@rm -f $(BIN)
tags:
@echo update tag table
@ctags inc/*.h src/*.c
bin: $(OBJ)
@echo
@echo 'creating binary "$(BIN)"'
@$(CC) $(AFLAGS) -o $(BIN) $(OBJ) $(LIBS)
@echo '... done'
@echo
depend:
@echo
@echo 'checking dependencies'
@$(SHELL) -ec '$(CC) $(AFLAGS) -MM $(CFLAGS) -I$(INCDIR) -I$(ADDINCDIR) $(SRC) $(ADDSRC) \
| sed '\''s@\(.*\)\.o[ :]@$(OBJDIR)/\1.o$(SUFFIX):@g'\'' \
>$(DEPEND)'
@echo
$(OBJDIR)/%.o$(SUFFIX): $(SRCDIR)/%.c
@echo 'compiling object file "$@" ...'
@$(CC) -c -o $@ $(FLAGS) $<
$(OBJDIR)/%.o$(SUFFIX): $(ADDSRCDIR)/%.c
@echo 'compiling object file "$@" ...'
@$(CC) -c -o $@ $(FLAGS) $<
objdir_mk:
@echo 'Creating $(OBJDIR) ...'
@mkdir -p $(OBJDIR)
-include $(DEPEND)
1. Я искал эту ошибку, и кажется, что другим людям решить ее путем повышения Xcode с 3.1.2. Но моя Xcode версии 3.1.2!! Я переустановлено он несколько раз и до сих пор получают одну и ту же ошибку. Может быть, это потому, что я установил MacPorts об этом несколько недель назад, и его удалили?? Может быть, я не предполагается установить "Unix Разработка пакета" в Xcode?
2. Я пытался добавить LDFLAG в Makefile, с
-read_only_relocs подавить, и я не уверен, что я поставив его в нужное место, и я не знаю, что если даже предполагается работать. Во всяком случае, когда я добавляю его diesn't ее работы.
Есть ли какие-либо идеи? Если нет, то кто-то может попытаться строительства JM от этой ссылке и посмотрите, если они будут получать с той же проблемой? Я из идей.
Большое спасибо.
|