2014-11-12 3 views
1

나는 Galaxy Note의 Touchwiz ROM에서 조금 해킹하고 있습니다. 여기에는 r2p4 말리 GPU 드라이버가 포함되어 있지만 좀 더 나은 성능을 얻으려면 r3p1로 업그레이드하고 싶습니다. 이미 CyanogenMod와 유사한 ROM을 사용하고 있습니다.BLOB에 누락 된 기호 추가

제 커널에는 커널 공간 Mali 드라이버가 포함되어 있습니다. 정상적으로 작동해야하므로 올바른 blob을 실행시켜야합니다.

가 내 장치에 libMali.so를 밀어 그러나 나는 다음과 같은 오류 받고 있어요 : 그것은 FORTIFY_SOURCE와 안드로이드 4.2에 도입 된로 그 __strlen_chk 보인다

E/libEGL (21988): load_driver(/system/lib/egl/libEGL_mali.so): Cannot load library: link_image[1892]: 21988 could not load needed library 'libMali.so' for 'libEGL_mali.so' (reloc_library[1307]: 21988 cannot locate '__strlen_chk'... 

합니다. 이 얼룩은 다른 장치의 4.2 ROM에서 꺼내지며, ROM은 4.1뿐입니다 (업데이트가 더 이상 제공되지 않음). 나는이 같은 모양에 누락 된 문자를 추가하는 방법에 대한 생각 :

arm-eabi-gcc -shared -o libMali.so -L. -lBrokenMali libc.a -nostdlib 

그래서 내가 원래 덩어리에을 따라 libMali.so를 얻을. 작동하지 않습니다. 내가 원한 것은 모든 libc 기호가 빠진 똑같은 얼룩이다. 이 일을 할 수있는 방법이 있습니까?

+0

나는 대신 libMali.so의 의존성 테이블을 편집하여 업데이트 된 libc에 의존 할 생각입니다. 지금 엘프 에디트를 사용하려고합니다. http://www.skytale.net/blog/archives/28-Adding-new-dynamic-library-dependencies-to-an-existing-object.html –

답변

0

해결 방법을 찾았습니다. 대신 누락 된 문자를 포함하여 새로운 공유 객체를 구축 또는 종속 테이블에 항목을 추가하는, 내가 그랬어 :

sed -i 's/libc.so/libd.so/' libMali.so 

실제로 파일 libc.so가 업데이트됩니다 블롭 지금 libd를 검색이 방법을, .

나는 이제 segfault를 얻고 있습니다. 막 다른 골목처럼 보입니다. http://pastebin.com/m513GsVb

하지만이 특별한 문제는 해결되었습니다.

관련 문제