問題タブ [pyhdf]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
python - pyhdfを使用する場合、py2とpy3で異なるタイプのnp.array(list)を処理するにはどうすればよいですか?
pyhdf で hdf に変数として何かを保存したい。
これは私のコードです:
b.type
それはpy2で動作し、|S1
.
しかし、py3にあり、コードの最後の行を実行するとこのエラーが発生しましたb.dtype
:<U1
b = b.astype('S1')
py3を追加すると、同じエラーが発生します。が、b.dtype
です|S1
。
centos7 - CentOS7 に PyHDF をインストールする
助けてください、
CentOS7 に pyhdf をインストールできません。私はLinuxの初心者です
Pyhdf には HDF をインストールする必要があり、これまでのところ次のことを試しました。
まず、./configure、gmake && gmake check で HDF をインストールします。ただし、6 つのエラーで exit を確認してください。
次に、「yum install hdf-devel」を使用しました。この方法で、HDF はコンピューターにインストールされましたが、pyhdf はまだエラーが発生しています。phydf については、「pip install pyhdf」と「python setup.py install」の両方を試しましたが、常に失敗します。詳細は以下のログを参照してください。ありがとうございました!
$ python setup.py build running build running config_cc unifing config_cc, config, build_clib, build_ext, build コマンド --compiler options running config_fc unifing config_fc, config, build_clib, build_ext, build コマンド --fcompiler options running build_src build_src ビルド拡張機能「pyhdf. _hdfext" ソース build_src: npy-pkg 構成ファイルの構築 build_py の実行 build_ext の実行 UnixCCompiler のカスタマイズ UnixCCompiler のカスタマイズ build_ext の使用 'pyhdf._hdfext' 拡張の構築 C ソースのコンパイル C コンパイラ: gcc -pthread -Wno-unused-result -Wsign-compare -DDYNAMIC_ANNOTATIONS_ENABLED= 1 -DNDEBUG -O2 -g -パイプ -壁 -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches -m64 -mtune=generic -D_GNU_SOURCE -fPIC -fwrapv -I/opt/rh/rh- python36/root/usr/include -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches -m64 - mtune=generic -D_GNU_SOURCE -fPIC -fwrapv -fPIC -std=c99
コンパイル オプション: '-I/usr/local/hdf4/include -I/home/npec/oop/oop_venv/lib64/python3.6/site-packages/numpy/core/include -I/home/npec/oop/oop_venv /include -I/opt/rh/rh-python36/root/usr/include/python3.6m -c' 追加オプション: '-DNOSZIP' gcc -pthread -shared -L/opt/rh/rh-python36/root/ usr/lib64-Wl,-z,relro -Wl,-rpath,/opt/rh/rh-python36/root/usr/lib64 -Wl,--enable-new-dtags build/temp.linux-x86_64-3.6/ pyhdf/hdfext_wrap.o -L/usr/local/hdf4/lib -L/usr/local/jpeg/lib -L/usr/local/zlib/lib -L/usr/local/jpeg/lib -L/usr/ local/zlib/lib -L/usr/local/szip/lib -L/usr/lib -L/usr/local/lib -L/lib -L/opt/rh/rh-python36/root/usr/lib64 - lmfhdf -ldf -ljpeg -lz -lpython3.6m -o build/lib.linux-x86_64-3.6/pyhdf/_hdfext.cpython-36m-x86_64-linux-gnu.so /usr/bin/ld: /usr/local/ hdf4/lib/libmfhdf.a(mfsd.o): R_X86_64_32 を再配置
.rodata.str1.8' can not be used when making a shared object; recompile with -fPIC /usr/bin/ld: /usr/local/hdf4/lib/libmfhdf.a(putget.o): relocation R_X86_64_32S against
.rodata' は、共有オブジェクトを作成するときに使用できません。-fPIC で再コンパイル /usr/bin/ld: /usr/local/hdf4/lib/libmfhdf.a(putgetg.o): .rodata.str1.1 に対する再配置 R_X86_64_32.rodata.str1.1' can not be used when making a shared object; recompile with -fPIC /usr/bin/ld: /usr/local/hdf4/lib/libmfhdf.a(string.o): relocation R_X86_64_32 against
は、共有オブジェクトを作成するときに使用できません。-fPIC で再コンパイル /usr/bin/ld: /usr/local/hdf4/lib/libmfhdf.a(var.o):.rodata.str1.1' can not be used when making a shared object; recompile with -fPIC /usr/bin/ld: /usr/local/hdf4/lib/libmfhdf.a(array.o): relocation R_X86_64_32S against
.rodata に対する再配置 R_X86_64_32 は、共有オブジェクトを作成するときに使用できません。-fPIC で再コンパイル /usr/bin/ld: /usr/local/hdf4/lib/libmfhdf.a(attr.o): .rodata.str1.1 に対する再配置 R_X86_64_32.rodata.str1.1' can not be used when making a shared object; recompile with -fPIC /usr/bin/ld: /usr/local/hdf4/lib/libmfhdf.a(cdf.o): relocation R_X86_64_32 against
は、共有オブジェクトを作成するときに使用できません。-fPIC で再コンパイル /usr/bin/ld: /usr/local/hdf4/lib/libmfhdf.a(dim.o): R_X86_64_32 を再配置.rodata.str1.1' can not be used when making a shared object; recompile with -fPIC /usr/bin/ld: /usr/local/hdf4/lib/libmfhdf.a(file.o): relocation R_X86_64_32 against undefined symbol
rlim' は、共有オブジェクトを作成するときに使用できません。-fPIC で再コンパイル /usr/bin/ld: /usr/local/hdf4/lib/libmfhdf.a(hdfsds.o): .rodata.str1.1 に対する再配置 R_X86_64_32.rodata.str1.1' can not be used when making a shared object; recompile with -fPIC /usr/bin/ld: /usr/local/hdf4/lib/libmfhdf.a(iarray.o): relocation R_X86_64_32 against
は、共有オブジェクトを作成するときに使用できません。-fPIC で再コンパイル /usr/bin/ld: /usr/local/hdf4/lib/libmfhdf.a(error.o):.rodata.str1.1' can not be used when making a shared object; recompile with -fPIC /usr/bin/ld: /usr/local/hdf4/lib/libmfhdf.a(nssdc.o): relocation R_X86_64_32S against
.rodata に対する再配置 R_X86_64_32 は、共有オブジェクトを作成するときに使用できません。-fPIC で再コンパイル /usr/bin/ld: /usr/local/hdf4/lib/libmfhdf.a(xdrposix.o): .rodata.str1.8 に対する再配置 R_X86_64_32S.data' can not be used when making a shared object; recompile with -fPIC /usr/bin/ld: /usr/local/hdf4/lib/libdf.a(cszip.o): relocation R_X86_64_32 against
は、共有オブジェクトを作成するときに使用できません。-fPIC で再コンパイル /usr/bin/ld: /usr/local/hdf4/lib/libdf.a(dfconv.o): R_X86_64_32 を再配置.rodata.str1.8' can not be used when making a shared object; recompile with -fPIC /usr/bin/ld: /usr/local/hdf4/lib/libdf.a(dfgroup.o): relocation R_X86_64_32 against
.rodata.str1.8' は、共有オブジェクトを作成するときに使用できません。-fPIC で再コンパイル /usr/bin/ld: /usr/local/hdf4/lib/libdf.a(dfknat.o): .rodata.str1.8 に対する再配置 R_X86_64_32.rodata.str1.8' can not be used when making a shared object; recompile with -fPIC /usr/bin/ld: /usr/local/hdf4/lib/libdf.a(dfkswap.o): relocation R_X86_64_32 against
は、共有オブジェクトを作成するときに使用できません。-fPIC で再コンパイル /usr/bin/ld: /usr/local/hdf4/lib/libdf.a(hblocks.o): .rodata.str1.8 に対する再配置 R_X86_64_32.rodata.str1.8' can not be used when making a shared object; recompile with -fPIC /usr/bin/ld: /usr/local/hdf4/lib/libdf.a(hchunks.o): relocation R_X86_64_32 against
は、共有オブジェクトを作成するときに使用できません。-fPIC で再コンパイル /usr/bin/ld: /usr/local/hdf4/lib/libdf.a(hcomp.o):.rodata.str1.8' can not be used when making a shared object; recompile with -fPIC /usr/bin/ld: /usr/local/hdf4/lib/libdf.a(herr.o): relocation R_X86_64_32S against
.rodata に対する再配置 R_X86_64_32 は、共有オブジェクトを作成するときに使用できません。-fPIC で再コンパイル /usr/bin/ld: /usr/local/hdf4/lib/libdf.a(hextelt.o): R_X86_64_32 を再配置.rodata.str1.8' can not be used when making a shared object; recompile with -fPIC /usr/bin/ld: /usr/local/hdf4/lib/libdf.a(hfile.o): relocation R_X86_64_32 against
.rodata.str1.8' は、共有オブジェクトを作成するときに使用できません。-fPIC で再コンパイル /usr/bin/ld: /usr/local/hdf4/lib/libdf.a(hfiledd.o): .rodata.str1.8 に対する再配置 R_X86_64_32.rodata.str1.8' can not be used when making a shared object; recompile with -fPIC /usr/bin/ld: /usr/local/hdf4/lib/libdf.a(mcache.o): relocation R_X86_64_32 against
は、共有オブジェクトを作成するときに使用できません。-fPIC で再コンパイル /usr/bin/ld: /usr/local/hdf4/lib/libdf.a(mfan.o): シンボルANIanncmp' can not be used when making a shared object; recompile with -fPIC /usr/bin/ld: /usr/local/hdf4/lib/libdf.a(mstdio.o): relocation R_X86_64_32 against
.rodata.str1.8 に対する再配置 R_X86_64_32 は、共有オブジェクトを作成するときに使用できません。-fPIC で再コンパイル /usr/bin/ld: /usr/local/hdf4/lib/libdf.a(tbbt.o): .rodata.str1.8 に対する再配置 R_X86_64_32.rodata.str1.8' can not be used when making a shared object; recompile with -fPIC /usr/bin/ld: /usr/local/hdf4/lib/libdf.a(vattr.o): relocation R_X86_64_32 against
は、共有オブジェクトを作成するときに使用できません。-fPIC で再コンパイル /usr/bin/ld: /usr/local/hdf4/lib/libdf.a(vg.o): R_X86_64_32 を再配置.rodata.str1.8' can not be used when making a shared object; recompile with -fPIC /usr/bin/ld: /usr/local/hdf4/lib/libdf.a(vgp.o): relocation R_X86_64_32 against symbol
vdestroynode' は、共有オブジェクトを作成するときに使用できません。-fPIC で再コンパイル /usr/bin/ld: /usr/local/hdf4/lib/libdf.a(vhi.o): .rodata.str1.8 に対する再配置 R_X86_64_32.rodata.str1.1' can not be used when making a shared object; recompile with -fPIC /usr/bin/ld: /usr/local/hdf4/lib/libdf.a(vio.o): relocation R_X86_64_32 against
は、共有オブジェクトを作成するときに使用できません。-fPIC で再コンパイル /usr/bin/ld: /usr/local/hdf4/lib/libdf.a(vparse.o): .rodata.str1.8 に対する再配置 R_X86_64_32S.bss' can not be used when making a shared object; recompile with -fPIC /usr/bin/ld: /usr/local/hdf4/lib/libdf.a(vrw.o): relocation R_X86_64_32 against
は、共有オブジェクトを作成するときに使用できません。-fPIC で再コンパイル /usr/bin/ld: /usr/local/hdf4/lib/libdf.a(vsfld.o):.rodata.str1.8' can not be used when making a shared object; recompile with -fPIC /usr/bin/ld: /usr/local/hdf4/lib/libdf.a(atom.o): relocation R_X86_64_32S against
.bss に対する再配置 R_X86_64_32 は、共有オブジェクトを作成するときに使用できません。-fPIC で再コンパイル /usr/bin/ld: /usr/local/hdf4/lib/libdf.a(bitvect.o): R_X86_64_32S を再配置.rodata' can not be used when making a shared object; recompile with -fPIC /usr/bin/ld: /usr/local/hdf4/lib/libdf.a(cdeflate.o): relocation R_X86_64_32 against
.rodata.str1.8' は、共有オブジェクトを作成するときに使用できません。-fPIC で再コンパイル /usr/bin/ld: /usr/local/hdf4/lib/libdf.a(cnbit.o): .rodata.str1.8 に対する再配置 R_X86_64_32.rodata.str1.8' can not be used when making a shared object; recompile with -fPIC /usr/bin/ld: /usr/local/hdf4/lib/libdf.a(cnone.o): relocation R_X86_64_32 against
は、共有オブジェクトを作成するときに使用できません。-fPIC で再コンパイル /usr/bin/ld: /usr/local/hdf4/lib/libdf.a(crle.o): .rodata.str1.8 に対する再配置 R_X86_64_32.rodata.str1.8' can not be used when making a shared object; recompile with -fPIC /usr/bin/ld: /usr/local/hdf4/lib/libdf.a(cskphuff.o): relocation R_X86_64_32 against
は、共有オブジェクトを作成するときに使用できません。-fPIC で再コンパイル /usr/bin/ld: /usr/local/hdf4/lib/libdf.a(dynarray.o): .rodata.str1.8 に対する再配置 R_X86_64_32.rodata.str1.8' can not be used when making a shared object; recompile with -fPIC /usr/bin/ld: /usr/local/hdf4/lib/libdf.a(glist.o): relocation R_X86_64_32 against
は、共有オブジェクトを作成するときに使用できません。-fPIC で再コンパイル /usr/bin/ld: /usr/local/hdf4/lib/libdf.a(hbitio.o): R_X86_64_32 を再配置.rodata.str1.8' can not be used when making a shared object; recompile with -fPIC /usr/bin/ld: /usr/local/hdf4/lib/libdf.a(hbuffer.o): relocation R_X86_64_32 against
.rodata.str1.8' は、共有オブジェクトを作成するときに使用できません。-fPIC で再コンパイル /usr/bin/ld: /usr/local/hdf4/lib/libdf.a(hcompri.o): .rodata.str1.8 に対する再配置 R_X86_64_32.rodata' can not be used when making a shared object; recompile with -fPIC /usr/bin/ld: /usr/local/hdf4/lib/libdf.a(vconv.o): relocation R_X86_64_32 against
は、共有オブジェクトを作成するときに使用できません。-fPIC で再コンパイル /usr/bin/ld: /usr/local/hdf4/lib/libdf.a(dfcomp.o):.rodata.str1.8' can not be used when making a shared object; recompile with -fPIC /usr/bin/ld: /usr/local/hdf4/lib/libdf.a(dfimcomp.o): relocation R_X86_64_32 against
.bss に対する再配置 R_X86_64_32 は、共有オブジェクトを作成するときに使用できません。-fPIC で再コンパイル /usr/bin/ld: /usr/local/hdf4/lib/libdf.a(dfjpeg.o): シンボルhdf_init_destination' can not be used when making a shared object; recompile with -fPIC /usr/bin/ld: /usr/local/hdf4/lib/libdf.a(dfrle.o): relocation R_X86_64_32S against
.bss に対する再配置 R_X86_64_32S は、共有オブジェクトを作成するときに使用できません。-fPIC で再コンパイル /usr/bin/ld: /usr/local/hdf4/lib/libdf.a(dfunjpeg.o): シンボルに対する R_X86_64_32S の再配置hdf_init_source' can not be used when making a shared object; recompile with -fPIC /usr/bin/ld: /usr/local/hdf4/lib/libjpeg.a(jcapimin.o): relocation R_X86_64_32 against
.text' は、共有オブジェクトを作成するときに使用できません。-fPIC で再コンパイル /usr/bin/ld: /usr/local/hdf4/lib/libjpeg.a(jcapistd.o):.text' can not be used when making a shared object; recompile with -fPIC /usr/bin/ld: /usr/local/hdf4/lib/libjpeg.a(jcparam.o): relocation R_X86_64_32S against
.rodata に対する再配置 R_X86_64_32 は、共有オブジェクトを作成するときに使用できません。-fPIC で再コンパイル /usr/bin/ld: /usr/local/hdf4/lib/libjpeg.a(jcinit.o):.text' can not be used when making a shared object; recompile with -fPIC /usr/bin/ld: /usr/local/hdf4/lib/libjpeg.a(jcmaster.o): relocation R_X86_64_32S against
.text' に対する再配置 R_X86_64_32 は、共有オブジェクトを作成するときに使用できません。-fPIC で再コンパイル /usr/bin/ld: /usr/local/hdf4/lib/libjpeg.a(jcmarker.o): シンボルjpeg_natural_order' can not be used when making a shared object; recompile with -fPIC /usr/bin/ld: /usr/local/hdf4/lib/libjpeg.a(jcmainct.o): relocation R_X86_64_32S against
.text に対する再配置 R_X86_64_32S は、共有オブジェクトを作成するときに使用できません。-fPIC で再コンパイル /usr/bin/ld: /usr/local/hdf4/lib/libjpeg.a(jcprepct.o): R_X86_64_32S を再配置.text' can not be used when making a shared object; recompile with -fPIC /usr/bin/ld: /usr/local/hdf4/lib/libjpeg.a(jccoefct.o): relocation R_X86_64_32S against
.text' は、共有オブジェクトを作成するときに使用できません。-fPIC で再コンパイル /usr/bin/ld: /usr/local/hdf4/lib/libjpeg.a(jccolor.o): 再配置 R_X86_64_32S に対する.text' can not be used when making a shared object; recompile with -fPIC /usr/bin/ld: /usr/local/hdf4/lib/libjpeg.a(jcsample.o): relocation R_X86_64_32S against
.text' は、共有オブジェクトを作成するときに使用できません。-fPIC で再コンパイル /usr/bin/ld: /usr/local/hdf4/lib/libjpeg.a(jchuff.o): シンボルjpeg_natural_order' can not be used when making a shared object; recompile with -fPIC /usr/bin/ld: /usr/local/hdf4/lib/libjpeg.a(jcphuff.o): relocation R_X86_64_32S against
.text に対する再配置 R_X86_64_32S は、共有オブジェクトを作成するときに使用できません。-fPIC で再コンパイル /usr/bin/ld: /usr/local/hdf4/lib/libjpeg.a(jcdctmgr.o): 再配置 R_X86_64_32S に対する.rodata' can not be used when making a shared object; recompile with -fPIC /usr/bin/ld: /usr/local/hdf4/lib/libjpeg.a(jfdctfst.o): relocation R_X86_64_32 against
.text' は、共有オブジェクトを作成するときに使用できません。-fPIC で再コンパイル /usr/bin/ld: /usr/local/hdf4/lib/libjpeg.a(jfdctflt.o): R_X86_64_32 を再配置.text' can not be used when making a shared object; recompile with -fPIC /usr/bin/ld: /usr/local/hdf4/lib/libjpeg.a(jfdctint.o): relocation R_X86_64_32 against
.text' は、共有オブジェクトを作成するときに使用できません。-fPIC で再コンパイル /usr/bin/ld: /usr/local/hdf4/lib/libjpeg.a(jdapimin.o): 再配置 R_X86_64_32S に対する.rodata' can not be used when making a shared object; recompile with -fPIC /usr/bin/ld: /usr/local/hdf4/lib/libjpeg.a(jdapistd.o): relocation R_X86_64_32 against
.text' は、共有オブジェクトを作成するときに使用できません。-fPIC で再コンパイル /usr/bin/ld: /usr/local/hdf4/lib/libjpeg.a(jdmaster.o): 再配置 R_X86_64_32S に対する.rodata' can not be used when making a shared object; recompile with -fPIC /usr/bin/ld: /usr/local/hdf4/lib/libjpeg.a(jdinput.o): relocation R_X86_64_32S against
.text' は、共有オブジェクトを作成するときに使用できません。-fPIC で再コンパイル /usr/bin/ld: /usr/local/hdf4/lib/libjpeg.a(jdmarker.o):.text' can not be used when making a shared object; recompile with -fPIC /usr/bin/ld: /usr/local/hdf4/lib/libjpeg.a(jdhuff.o): relocation R_X86_64_32S against
.rodata に対する再配置 R_X86_64_32S は、共有オブジェクトを作成するときに使用できません。-fPIC で再コンパイル /usr/bin/ld: /usr/local/hdf4/lib/libjpeg.a(jdphuff.o): R_X86_64_32S を再配置.text' can not be used when making a shared object; recompile with -fPIC /usr/bin/ld: /usr/local/hdf4/lib/libjpeg.a(jdmainct.o): relocation R_X86_64_32S against
.text' は、共有オブジェクトを作成するときに使用できません。-fPIC で再コンパイル /usr/bin/ld: /usr/local/hdf4/lib/libjpeg.a(jdcoefct.o):.text' can not be used when making a shared object; recompile with -fPIC /usr/bin/ld: /usr/local/hdf4/lib/libjpeg.a(jdpostct.o): relocation R_X86_64_32S against
.text' に対する再配置 R_X86_64_32S は、共有オブジェクトを作成するときに使用できません。-fPIC で再コンパイル /usr/bin/ld: /usr/local/hdf4/lib/libjpeg.a(jddctmgr.o): シンボルjpeg_idct_2x2' can not be used when making a shared object; recompile with -fPIC /usr/bin/ld: /usr/local/hdf4/lib/libjpeg.a(jidctfst.o): relocation R_X86_64_32 against
.text' に対する再配置 R_X86_64_32 は、共有オブジェクトを作成するときに使用できません。-fPIC で再コンパイル /usr/bin/ld: /usr/local/hdf4/lib/libjpeg.a(jidctflt.o):.text' can not be used when making a shared object; recompile with -fPIC /usr/bin/ld: /usr/local/hdf4/lib/libjpeg.a(jidctint.o): relocation R_X86_64_32 against
.text' に対する再配置 R_X86_64_32 は、共有オブジェクトを作成するときに使用できません。-fPIC で再コンパイル /usr/bin/ld: /usr/local/hdf4/lib/libjpeg.a(jidctred.o): R_X86_64_32 を再配置.text' can not be used when making a shared object; recompile with -fPIC /usr/bin/ld: /usr/local/hdf4/lib/libjpeg.a(jdsample.o): relocation R_X86_64_32S against
.text' は、共有オブジェクトを作成するときに使用できません。-fPIC で再コンパイル /usr/bin/ld: /usr/local/hdf4/lib/libjpeg.a(jdcolor.o): 再配置 R_X86_64_32S に対する.text' can not be used when making a shared object; recompile with -fPIC /usr/bin/ld: /usr/local/hdf4/lib/libjpeg.a(jquant1.o): relocation R_X86_64_32S against
.text' は、共有オブジェクトを作成するときに使用できません。-fPIC で再コンパイル /usr/bin/ld: /usr/local/hdf4/lib/libjpeg.a(jquant2.o): 再配置 R_X86_64_32S に対する.text' can not be used when making a shared object; recompile with -fPIC /usr/bin/ld: /usr/local/hdf4/lib/libjpeg.a(jdmerge.o): relocation R_X86_64_32S against
.text' は、共有オブジェクトを作成するときに使用できません。-fPIC で再コンパイル /usr/bin/ld: /usr/local/hdf4/lib/libjpeg.a(jcomapi.o):.text' can not be used when making a shared object; recompile with -fPIC /usr/bin/ld: /usr/local/hdf4/lib/libjpeg.a(jutils.o): relocation R_X86_64_32 against
.text' に対する再配置 R_X86_64_32 は、共有オブジェクトを作成するときに使用できません。-fPIC で再コンパイル /usr/bin/ld: /usr/local/hdf4/lib/libjpeg.a(jerror.o): R_X86_64_32S を再配置.text' can not be used when making a shared object; recompile with -fPIC /usr/bin/ld: /usr/local/hdf4/lib/libjpeg.a(jmemmgr.o): relocation R_X86_64_32S against
.rodata' は、共有オブジェクトを作成するときに使用できません。-fPIC で再コンパイル /usr/bin/ld: /usr/local/hdf4/lib/libjpeg.a(jmemnobs.o):.text' can not be used when making a shared object; recompile with -fPIC /usr/bin/ld: /usr/local/hdf4/lib/libz.a(deflate.o): relocation R_X86_64_32S against
.rodata に対する再配置 R_X86_64_32 は、共有オブジェクトを作成するときに使用できません。-fPIC で再コンパイル /usr/bin/ld: /usr/local/hdf4/lib/libz.a(inflate.o):.rodata' can not be used when making a shared object; recompile with -fPIC /usr/bin/ld: /usr/local/hdf4/lib/libz.a(inftrees.o): relocation R_X86_64_32S against
.rodata に対する再配置 R_X86_64_32S は、共有オブジェクトを作成するときに使用できません。-fPIC で再コンパイル /usr/bin/ld: /usr/local/hdf4/lib/libz.a(trees.o): .rodata.str1.1 に対する再配置 R_X86_64_32S.data' can not be used when making a shared object; recompile with -fPIC /usr/bin/ld: /usr/local/hdf4/lib/libz.a(zutil.o): relocation R_X86_64_32 against
は、共有オブジェクトを作成するときに使用できません。-fPIC で再コンパイル /usr/bin/ld: /usr/local/hdf4/lib/libz.a(adler32.o): R_X86_64_32 を再配置.text' can not be used when making a shared object; recompile with -fPIC /usr/bin/ld: /usr/local/hdf4/lib/libz.a(crc32.o): relocation R_X86_64_32 against
.rodata' は、共有オブジェクトを作成するときに使用できません。-fPIC で再コンパイル /usr/bin/ld: /usr/local/hdf4/lib/libz.a(inffast.o): `.rodata.str1.1' に対する再配置 R_X86_64_32S は、共有オブジェクトを作成するときに使用できません。-fPIC /usr/bin/ld で再コンパイル: 最終的なリンクに失敗しました: 出力 collect2 の表現できないセクション: エラー: ld が 1 つの終了ステータス エラーを返しました: コマンド "gcc -pthread -shared -L/opt/rh/rh-python36/root/ usr/lib64-Wl,-z,relro -Wl,-rpath,/opt/rh/rh-python36/root/usr/lib64 -Wl,--enable-new-dtags build/temp.linux-x86_64-3.6/ pyhdf/hdfext_wrap.o -L/usr/local/hdf4/lib -L/usr/local/jpeg/lib -L/usr/local/zlib/lib -L/usr/local/jpeg/lib -L/usr/ local/zlib/lib -L/usr/local/szip/lib -L/usr/lib -L/usr/local/lib -L/lib -L/opt/rh/rh-python36/root/usr/lib64 - lmfhdf -ldf -ljpeg -lz -lpython3.6m -o build/lib.linux-x86_64-3.6/pyhdf/_hdfext.
python-3.x - リクエスト session.get() を含むファイルをダウンロードし、ディスクに触れずに直接 PyHDF に結果を渡しますか?
現在、私の Python 3 スクリプトは、NASA の GES DISC から 50MB の .hdf ファイル (数千個) をダウンロードし、それらをディスクに書き込み、再度読み取り、ファイル内のデータの約 2% を選択して保存します。明らかに、データの 2% のみを保存し、ファイル全体をディスクに書き込まなければ、ディスクの読み書きが最小限に抑えられます。
注: この例は、無料のEarthdataユーザー名/パスワードrequests
を持っていないと機能しません
これで、.hdf ファイルがメモリに保存されました。次の一般的な手順は、ディスクへの書き込みです。
それからもう一度読み込んでください:
ディスクの書き込み/読み取りをスキップして、次のようなことを行うのが理想的です。
しかし、これはエラーをスローします:HDF4Error: SD: no such file
ディスクに触れずに r.content を PyHDF に渡す方法はありますか?