質問編集履歴

1

文章を修正

2023/10/14 00:25

投稿

samidare_chan
samidare_chan

スコア18

test CHANGED
File without changes
test CHANGED
@@ -1,7 +1,7 @@
1
1
  ### 質問内容
2
2
  タイトル通りなのですがamd64アーキテクチャ上でarm64アーキテクチャのソースコードをコンパイルする方法が知りたいです。
3
3
  自分は今ラズベリーパイで実行できるソフトを作りたいのですが、ラズパイ上でコンパイルするとCPU性能の関係でコンパイルに時間がかかります、そこでUbuntu(amd64)上のPCでコンパイルした実行ファイルをラズパイに転送してそこで実行したのですが以下のエラー出てしまい解決方法わかりません
4
-
4
+ 行ったこと5番目が一番近いと思うのですが、どうやるのでしょうか?
5
5
  ### 知りたいこと
6
6
  1.ラズパイ4(arm64)で実行する実行ファイルをubuntu(amd64)上でコンパイルしてラズパイ4(arm64)で実行する方法が知りたい.。
7
7
  2.そもそもコンパイル時間が性能上の関係でかかるから別のパソコンでコンパイルをかけるという行為はナンセンスなのかどうか?正しい行為で一般的なのか知りたい
@@ -14,13 +14,27 @@
14
14
  ### 参考サイト
15
15
  参考サイト OSファイル:https://downloads.raspberrypi.org/raspios_lite_arm64/images/raspios_lite_arm64-2023-10-10/
16
16
  参考サイト エラーについて:https://askubuntu.com/questions/470796/fatal-error-sys-cdefs-h-no-such-file-or-directory
17
-
17
+ 参考サイトaarch64-linux-gnu-gccの64bit版を導入:https://eel3.hatenablog.com/entry/2022/08/15/180203
18
18
 
19
19
  ### 行ったこと
20
20
  1,`/usr/include/cpprest/details/basic_types.h:17:10: fatal error: fstream: `のついて調べましたが有益な情報が得られません。
21
21
  2,チャットGPTにてコマンドを知りましたどうやらクロスコンパイルならぬ行為をするみたいです。
22
22
  3,参考サイトのzipファイルを落としてきてlibデータを自分のpcに入れようとしたいのですが.img等拡張子のため断念
23
23
  4,arm64のライブラリをインストールすることを試みましたがアーキテクチャの不一致でできませんでした。
24
+ 5,`sudo apt-get install gcc-aarch64-linux-gnu`を導入後以下のエラー
25
+
26
+ ```
27
+ $ make
28
+ aarch64-linux-gnu-gcc obj/Main.o -o bin/program -lcpprest -lssl -lcrypto -pthread
29
+ /usr/bin/aarch64-linux-gnu-ld: Scrt1.o が見つかりません: そのようなファイルやディレクトリはありません
30
+ /usr/bin/aarch64-linux-gnu-ld: crti.o が見つかりません: そのようなファイルやディレクトリはありません
31
+ /usr/bin/aarch64-linux-gnu-ld: obj/Main.o: Relocations in generic ELF (EM: 62)
32
+ 上記同じため省略
33
+ /usr/bin/aarch64-linux-gnu-ld: obj/Main.o: error adding symbols: file in wrong format
34
+ collect2: error: ld returned 1 exit status
35
+ make: *** [Makefile:14: bin/program] エラー 1
36
+
37
+ ```
24
38
  ```
25
39
  $ sudo dpkg -i libcpprest2.10_2.10.15-1_arm64.deb
26
40
  [sudo] shigurechan のパスワード: