解決在嵌入式平台上無法進行字元編碼的問題

2021-04-02 23:01:57 字數 2096 閱讀 3400

採用

libiconv

字元編碼庫,它包含了幾乎所有的各種字符集,可以不依賴

linux

平台的字符集作為單獨乙個動態庫存在!

libiconv-1.9.1

字元編碼轉換庫編譯方法

x86 platform:

1> make distclean

2> ./configure

3> make

arca & ixp425 platform:

1>

進行x86

平台的./configure

2> 修改

./lib/makefile

./libcharset/lib/makefile

./libcharset/libtool

./src/makefile

./srclib/makefile

./libtool

將這些檔案軟鏈結重新鏈結到相應目錄下的各個平台檔案

arca: libtool.arca makefile.arca

ixp425: libtoo.425 makefile.425          

3> make

將會在./lib/

下生成libiconv_plug_linux.so

庫檔案,

即可使用

.(./lib/.lib/libiconv.so.2.2.0

是libtoo

指令碼工具生成的

libiconv.la,

也可以使用

)測試**:

#define tmpbufsize 4096

int iconv_string ( const char* tocode, const char* fromcode,

const char* start, const char* end,

char** resultp, size_t* lengthp )

if ( !strcmp( fromcode, "autodetect_jp" ) )

if ( !strcmp( fromcode, "autodetect_kr" ) )

errno = einval;

return -1;

}/* determine the length we need. */

}count += outptr - tmpbuf;

}count += outptr - tmpbuf;

}length = count;

}if ( lengthp != null )

* lengthp = length;

if ( resultp == null )

result = ( *resultp == null ? malloc( length ) : realloc( *resultp, length ) );

*resultp = result;

if ( length == 0 )

if ( result == null )

iconv( cd, null, null, null, null ); /* return to the initial state */

/* do the conversion for real. */}}

}if ( outsize != 0 )

abort();

}iconv_close( cd );

return 0;

}#include

#include

#include

#include "iconv_string.h"

int main()

else

}makefile

cc=gcc

cflags= -g

export cc

export cflags

incs= -i../include

libs= -liconv_plug_linux

%o: %.c %.h 

test:test.o iconv_string.o

$ $^ -o $@ $

clean:

rm -f *.o test

嵌入式GUI FTK介紹 5 在多平台上執行

作者 李先靜 可移植性是ftk的設計目標之一,以後ftk將會在linux windows和各種rtos等不同平台上執行。目前ftk還只能在linux上執行,不過它可以在framebuffer directfb和x11 模擬 上執行。基於framebuffer jz4740開發板 基於framebuf...

嵌入式GUI FTK介紹 5 在多平台上執行

作者 李先靜 可移植性是ftk的設計目標之一,以後ftk將會在linux windows和各種rtos等不同平台上執行。目前ftk還只能在linux上執行,不過它可以在framebuffer directfb和x11 模擬 上執行。基於framebuffer jz4740開發板 基於framebuf...

嵌入式平台上的人臉檢測系統(簡單總結)

從自己接觸這個專案到目前為止,學到和彌補了很多知識,其中對編譯器的認識,對平台的認識,對交叉編譯的認識,都有很大進步。下面就簡單總結一下自己近期學到的東西,儘管我的專案依然在繼續。實現嵌入式平台上的人臉檢測,主要是在arm板子上能夠檢測到人臉 這就涉及乙個檢測和識別人臉的計算機視覺庫 opencv ...