我尝试解决这个问题大约4个小时。没有任何效果。我正在使用Java、Intellij和JavaFX。我想做什么?我在Windows上创建了一个JavaFX程序。我想在我的RaspberryPi上执行这个.jar。每当我想执行这个jar时,我都会在控制台中收到此错误:Error:Couldnotfindorloadmainclasssample.Mainsample是包,Main是我的带有main方法的类。该程序在Windows下工作得很好。(在IntelliJ内外)。我已经做了哪些步骤?Java在我的pi上是最新的。java-version返回1.8。所以我们在这里很好。我已经在项目结构
我尝试解决这个问题大约4个小时。没有任何效果。我正在使用Java、Intellij和JavaFX。我想做什么?我在Windows上创建了一个JavaFX程序。我想在我的RaspberryPi上执行这个.jar。每当我想执行这个jar时,我都会在控制台中收到此错误:Error:Couldnotfindorloadmainclasssample.Mainsample是包,Main是我的带有main方法的类。该程序在Windows下工作得很好。(在IntelliJ内外)。我已经做了哪些步骤?Java在我的pi上是最新的。java-version返回1.8。所以我们在这里很好。我已经在项目结构
在一个项目中,我的同事创建了一个静态库,例如liba.a,它与应用程序链接。在liba.a中,他将libcmalloc()覆盖为他的所有者版本。我创建了一个共享库libs.so,它也与应用链接。问题是当我的libs.so与应用程序链接时,我的libs.so中使用的malloc()将是liba.a中的那个,不是标准libc.so中的那个,这会导致问题。然后,我想将libc.a静态链接到我的libs.so,我为gcc使用了-static-shared-fPIcflags。但我总是得到arm-2012.03/bin/../lib/gcc/arm-none-linux-gnueabi/4.6.
在一个项目中,我的同事创建了一个静态库,例如liba.a,它与应用程序链接。在liba.a中,他将libcmalloc()覆盖为他的所有者版本。我创建了一个共享库libs.so,它也与应用链接。问题是当我的libs.so与应用程序链接时,我的libs.so中使用的malloc()将是liba.a中的那个,不是标准libc.so中的那个,这会导致问题。然后,我想将libc.a静态链接到我的libs.so,我为gcc使用了-static-shared-fPIcflags。但我总是得到arm-2012.03/bin/../lib/gcc/arm-none-linux-gnueabi/4.6.
为了研究目标文件在linux下是如何加载和运行的,我做了一个最简单的c代码,文件名simple.c。intmain(){}接下来,我制作目标文件并将目标文件保存为文本文件。$gcc./simple.c$objdump-xD./a.out>simple.text从许多互联网文章中,我可以发现gcc动态加载启动函数,如_start、_init、__libc_start_main@plt等。所以在http://dbp-consulting.com/tutorials/debugging/linuxProgramStartup.html的帮助下,我开始阅读我的汇编代码.下面是部分汇编代码。08
为了研究目标文件在linux下是如何加载和运行的,我做了一个最简单的c代码,文件名simple.c。intmain(){}接下来,我制作目标文件并将目标文件保存为文本文件。$gcc./simple.c$objdump-xD./a.out>simple.text从许多互联网文章中,我可以发现gcc动态加载启动函数,如_start、_init、__libc_start_main@plt等。所以在http://dbp-consulting.com/tutorials/debugging/linuxProgramStartup.html的帮助下,我开始阅读我的汇编代码.下面是部分汇编代码。08
我有一个用于NASM(ArchLinuxi686)的以下程序SECTION.dataLC1:db"librarycall",0SECTION.textexternexitexternprintf;globalmain;main:global_start_start:pushLC1callprintfpush0callexit用命令组装:nasm-felflibcall.asm如果用_start注释两行,用main取消注释两行,然后用命令进行汇编和链接:gcclibcall.o-olibcall然后程序运行OK。但是,如果使用_start入口点组装代码并使用命令链接:ldlibcall.
我有一个用于NASM(ArchLinuxi686)的以下程序SECTION.dataLC1:db"librarycall",0SECTION.textexternexitexternprintf;globalmain;main:global_start_start:pushLC1callprintfpush0callexit用命令组装:nasm-felflibcall.asm如果用_start注释两行,用main取消注释两行,然后用命令进行汇编和链接:gcclibcall.o-olibcall然后程序运行OK。但是,如果使用_start入口点组装代码并使用命令链接:ldlibcall.
这个问题在这里已经有了答案:Whatistheuseof_start()inC?(4个答案)关闭2年前。你能帮我理解一下吗__start在C内部使用?它是main函数的精确副本还是已编译程序的入口点?只是想知道,它是如何被使用的?
这个问题在这里已经有了答案:Whatistheuseof_start()inC?(4个答案)关闭2年前。你能帮我理解一下吗__start在C内部使用?它是main函数的精确副本还是已编译程序的入口点?只是想知道,它是如何被使用的?