danomatika / ofxPd

(maintained) a Pure Data addon for OpenFrameworks using libpd
Other
201 stars 45 forks source link

C compiler failed while compiling s_libpdmidi.c. #70

Closed cerupcat closed 1 year ago

cerupcat commented 5 years ago

I'm not sure if this is an OF issue or ofxPd, but I get the following error when building.

C compiler failed while compiling s_libpdmidi.c.

Reproduction:

I can't tell if this is an issue with C Flags not being included or something else.

danomatika commented 5 years ago

What the actual compiler error aka build output?

cerupcat commented 5 years ago

I'm seeing the following in the console.

org.gradle.api.tasks.TaskExecutionException: Execution failed for task ':compileOFAndroidAppArmeabi-v7aDebugArm7SharedLibraryOFAndroidAppArmeabi-v7aDebugArm7SharedLibraryMainC'.
    at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeActions(ExecuteActionsTaskExecuter.java:84)
    at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.execute(ExecuteActionsTaskExecuter.java:55)
    at org.gradle.api.internal.tasks.execution.SkipUpToDateTaskExecuter.execute(SkipUpToDateTaskExecuter.java:62)
    at org.gradle.api.internal.tasks.execution.ValidatingTaskExecuter.execute(ValidatingTaskExecuter.java:58)
    at org.gradle.api.internal.tasks.execution.SkipEmptySourceFilesTaskExecuter.execute(SkipEmptySourceFilesTaskExecuter.java:88)
    at org.gradle.api.internal.tasks.execution.ResolveTaskArtifactStateTaskExecuter.execute(ResolveTaskArtifactStateTaskExecuter.java:46)
    at org.gradle.api.internal.tasks.execution.SkipTaskWithNoActionsExecuter.execute(SkipTaskWithNoActionsExecuter.java:51)
    at org.gradle.api.internal.tasks.execution.SkipOnlyIfTaskExecuter.execute(SkipOnlyIfTaskExecuter.java:54)
    at org.gradle.api.internal.tasks.execution.ExecuteAtMostOnceTaskExecuter.execute(ExecuteAtMostOnceTaskExecuter.java:43)
    at org.gradle.api.internal.tasks.execution.CatchExceptionTaskExecuter.execute(CatchExceptionTaskExecuter.java:34)
    at org.gradle.execution.taskgraph.DefaultTaskGraphExecuter$EventFiringTaskWorker$1.execute(DefaultTaskGraphExecuter.java:236)
    at org.gradle.execution.taskgraph.DefaultTaskGraphExecuter$EventFiringTaskWorker$1.execute(DefaultTaskGraphExecuter.java:228)
    at org.gradle.internal.Transformers$4.transform(Transformers.java:169)
    at org.gradle.internal.progress.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:106)
    at org.gradle.internal.progress.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:61)
    at org.gradle.execution.taskgraph.DefaultTaskGraphExecuter$EventFiringTaskWorker.execute(DefaultTaskGraphExecuter.java:228)
    at org.gradle.execution.taskgraph.DefaultTaskGraphExecuter$EventFiringTaskWorker.execute(DefaultTaskGraphExecuter.java:215)
    at org.gradle.execution.taskgraph.AbstractTaskPlanExecutor$TaskExecutorWorker.processTask(AbstractTaskPlanExecutor.java:77)
    at org.gradle.execution.taskgraph.AbstractTaskPlanExecutor$TaskExecutorWorker.run(AbstractTaskPlanExecutor.java:58)
    at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor.process(DefaultTaskPlanExecutor.java:32)
    at org.gradle.execution.taskgraph.DefaultTaskGraphExecuter.execute(DefaultTaskGraphExecuter.java:113)
    at org.gradle.execution.SelectedTaskExecutionAction.execute(SelectedTaskExecutionAction.java:37)
    at org.gradle.execution.DefaultBuildExecuter.execute(DefaultBuildExecuter.java:37)
    at org.gradle.execution.DefaultBuildExecuter.access$000(DefaultBuildExecuter.java:23)
    at org.gradle.execution.DefaultBuildExecuter$1.proceed(DefaultBuildExecuter.java:43)
    at org.gradle.execution.DryRunBuildExecutionAction.execute(DryRunBuildExecutionAction.java:32)
    at org.gradle.execution.DefaultBuildExecuter.execute(DefaultBuildExecuter.java:37)
    at org.gradle.execution.DefaultBuildExecuter.execute(DefaultBuildExecuter.java:30)
    at org.gradle.initialization.DefaultGradleLauncher$3.execute(DefaultGradleLauncher.java:196)
    at org.gradle.initialization.DefaultGradleLauncher$3.execute(DefaultGradleLauncher.java:193)
    at org.gradle.internal.Transformers$4.transform(Transformers.java:169)
    at org.gradle.internal.progress.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:106)
    at org.gradle.internal.progress.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:56)
    at org.gradle.initialization.DefaultGradleLauncher.doBuildStages(DefaultGradleLauncher.java:193)
    at org.gradle.initialization.DefaultGradleLauncher.doBuild(DefaultGradleLauncher.java:119)
    at org.gradle.initialization.DefaultGradleLauncher.run(DefaultGradleLauncher.java:102)
    at org.gradle.launcher.exec.GradleBuildController.run(GradleBuildController.java:71)
    at org.gradle.tooling.internal.provider.runner.BuildModelActionRunner.run(BuildModelActionRunner.java:50)
    at org.gradle.launcher.exec.ChainingBuildActionRunner.run(ChainingBuildActionRunner.java:35)
    at org.gradle.tooling.internal.provider.runner.RunAsBuildOperationBuildActionRunner$1.execute(RunAsBuildOperationBuildActionRunner.java:43)
    at org.gradle.tooling.internal.provider.runner.RunAsBuildOperationBuildActionRunner$1.execute(RunAsBuildOperationBuildActionRunner.java:40)
    at org.gradle.internal.Transformers$4.transform(Transformers.java:169)
    at org.gradle.internal.progress.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:106)
    at org.gradle.internal.progress.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:56)
    at org.gradle.tooling.internal.provider.runner.RunAsBuildOperationBuildActionRunner.run(RunAsBuildOperationBuildActionRunner.java:40)
    at org.gradle.tooling.internal.provider.runner.SubscribableBuildActionRunner.run(SubscribableBuildActionRunner.java:75)
    at org.gradle.launcher.exec.ChainingBuildActionRunner.run(ChainingBuildActionRunner.java:35)
    at org.gradle.launcher.exec.InProcessBuildActionExecuter.execute(InProcessBuildActionExecuter.java:41)
    at org.gradle.launcher.exec.InProcessBuildActionExecuter.execute(InProcessBuildActionExecuter.java:26)
    at org.gradle.tooling.internal.provider.ContinuousBuildActionExecuter.execute(ContinuousBuildActionExecuter.java:75)
    at org.gradle.tooling.internal.provider.ContinuousBuildActionExecuter.execute(ContinuousBuildActionExecuter.java:49)
    at org.gradle.tooling.internal.provider.ServicesSetupBuildActionExecuter.execute(ServicesSetupBuildActionExecuter.java:44)
    at org.gradle.tooling.internal.provider.ServicesSetupBuildActionExecuter.execute(ServicesSetupBuildActionExecuter.java:29)
    at org.gradle.launcher.daemon.server.exec.ExecuteBuild.doBuild(ExecuteBuild.java:67)
    at org.gradle.launcher.daemon.server.exec.BuildCommandOnly.execute(BuildCommandOnly.java:36)
    at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:120)
    at org.gradle.launcher.daemon.server.exec.WatchForDisconnection.execute(WatchForDisconnection.java:47)
    at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:120)
    at org.gradle.launcher.daemon.server.exec.ResetDeprecationLogger.execute(ResetDeprecationLogger.java:26)
    at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:120)
    at org.gradle.launcher.daemon.server.exec.RequestStopIfSingleUsedDaemon.execute(RequestStopIfSingleUsedDaemon.java:34)
    at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:120)
    at org.gradle.launcher.daemon.server.exec.ForwardClientInput$2.call(ForwardClientInput.java:74)
    at org.gradle.launcher.daemon.server.exec.ForwardClientInput$2.call(ForwardClientInput.java:72)
    at org.gradle.util.Swapper.swap(Swapper.java:38)
    at org.gradle.launcher.daemon.server.exec.ForwardClientInput.execute(ForwardClientInput.java:72)
    at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:120)
    at org.gradle.launcher.daemon.server.exec.LogAndCheckHealth.execute(LogAndCheckHealth.java:55)
    at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:120)
    at org.gradle.launcher.daemon.server.exec.LogToClient.doBuild(LogToClient.java:60)
    at org.gradle.launcher.daemon.server.exec.BuildCommandOnly.execute(BuildCommandOnly.java:36)
    at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:120)
    at org.gradle.launcher.daemon.server.exec.EstablishBuildEnvironment.doBuild(EstablishBuildEnvironment.java:72)
    at org.gradle.launcher.daemon.server.exec.BuildCommandOnly.execute(BuildCommandOnly.java:36)
    at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:120)
    at org.gradle.launcher.daemon.server.exec.StartBuildOrRespondWithBusy$1.run(StartBuildOrRespondWithBusy.java:50)
    at org.gradle.launcher.daemon.server.DaemonStateCoordinator$1.run(DaemonStateCoordinator.java:297)
    at org.gradle.internal.concurrent.ExecutorPolicy$CatchAndRecordFailures.onExecute(ExecutorPolicy.java:54)
    at org.gradle.internal.concurrent.StoppableExecutorImpl$1.run(StoppableExecutorImpl.java:40)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
    at java.lang.Thread.run(Thread.java:745)
Caused by: org.gradle.internal.operations.MultipleBuildOperationFailures: Multiple build operations failed.
    C compiler failed while compiling z_hooks.c.
    C compiler failed while compiling s_libpdmidi.c.
    C compiler failed while compiling x_libpdreceive.c.
    C compiler failed while compiling pique.c.
    C compiler failed while compiling z_queued.c.
    C compiler failed while compiling z_print_util.c.
    C compiler failed while compiling ringbuffer.c.
    C compiler failed while compiling z_libpd.c.
    C compiler failed while compiling stdout.c.
    C compiler failed while compiling choice.c.
    ...and 3 more failures.
See the complete log at: file:///Users/name/Openframeworks/apps/myApps/example/build/tmp/compileOFAndroidAppArmeabi-v7aDebugArm7SharedLibraryOFAndroidAppArmeabi-v7aDebugArm7SharedLibraryMainC/output.txt
    at org.gradle.internal.operations.DefaultBuildOperationQueue.waitForCompletion(DefaultBuildOperationQueue.java:100)
    at org.gradle.internal.operations.DefaultBuildOperationProcessor.run(DefaultBuildOperationProcessor.java:60)
    at org.gradle.nativeplatform.toolchain.internal.NativeCompiler.execute(NativeCompiler.java:71)
    at org.gradle.nativeplatform.toolchain.internal.NativeCompiler.execute(NativeCompiler.java:43)
    at org.gradle.nativeplatform.toolchain.internal.OutputCleaningCompiler.compileSources(OutputCleaningCompiler.java:47)
    at org.gradle.nativeplatform.toolchain.internal.OutputCleaningCompiler.execute(OutputCleaningCompiler.java:39)
    at org.gradle.nativeplatform.toolchain.internal.OutputCleaningCompiler.execute(OutputCleaningCompiler.java:26)
    at org.gradle.language.nativeplatform.internal.incremental.IncrementalNativeCompiler.doCleanIncrementalCompile(IncrementalNativeCompiler.java:143)
    at org.gradle.language.nativeplatform.internal.incremental.IncrementalNativeCompiler.execute(IncrementalNativeCompiler.java:81)
    at org.gradle.language.nativeplatform.internal.incremental.IncrementalNativeCompiler.execute(IncrementalNativeCompiler.java:46)
    at org.gradle.nativeplatform.internal.BuildOperationLoggingCompilerDecorator.execute(BuildOperationLoggingCompilerDecorator.java:38)
    at org.gradle.nativeplatform.internal.BuildOperationLoggingCompilerDecorator.execute(BuildOperationLoggingCompilerDecorator.java:22)
    at org.gradle.language.nativeplatform.tasks.AbstractNativeCompileTask.doCompile(AbstractNativeCompileTask.java:116)
    at org.gradle.language.nativeplatform.tasks.AbstractNativeCompileTask.compile(AbstractNativeCompileTask.java:105)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:498)
    at org.gradle.internal.reflect.JavaMethod.invoke(JavaMethod.java:73)
    at org.gradle.api.internal.project.taskfactory.DefaultTaskClassInfoStore$IncrementalTaskAction.doExecute(DefaultTaskClassInfoStore.java:163)
    at org.gradle.api.internal.project.taskfactory.DefaultTaskClassInfoStore$StandardTaskAction.execute(DefaultTaskClassInfoStore.java:134)
    at org.gradle.api.internal.project.taskfactory.DefaultTaskClassInfoStore$StandardTaskAction.execute(DefaultTaskClassInfoStore.java:123)
    at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeAction(ExecuteActionsTaskExecuter.java:95)
    at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeActions(ExecuteActionsTaskExecuter.java:76)
    ... 81 more
Caused by: org.gradle.nativeplatform.toolchain.internal.CommandLineToolInvocationFailure: C compiler failed while compiling z_hooks.c.
    at org.gradle.nativeplatform.toolchain.internal.DefaultCommandLineToolInvocationWorker.execute(DefaultCommandLineToolInvocationWorker.java:85)
    at org.gradle.nativeplatform.toolchain.internal.DefaultCommandLineToolInvocationWorker.execute(DefaultCommandLineToolInvocationWorker.java:30)
    at org.gradle.internal.operations.DefaultBuildOperationQueue$OperationHolder.runBuildOperation(DefaultBuildOperationQueue.java:169)
    at org.gradle.internal.operations.DefaultBuildOperationQueue$OperationHolder.run(DefaultBuildOperationQueue.java:162)
    at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
    at java.util.concurrent.FutureTask.run(FutureTask.java:266)
    ... 5 more
danomatika commented 5 years ago

That's the Java build output, I think you probably want to lower-level C compiler output. I think it's linked on the "See the complete log at:" line. I'm not an Android developer, but that's my best guess.

cerupcat commented 5 years ago

Thanks. Here's the output from that:

See file:///Users/Code/Projects/Openframeworks/apps/myApps/Tunable/build/tmp/compileOFAndroidAppArmeabi-v7aDebugArm7SharedLibraryOFAndroidAppArmeabi-v7aDebugArm7SharedLibraryMainC/output.txt for all output for compileOFAndroidAppArmeabi-v7aDebugArm7SharedLibraryOFAndroidAppArmeabi-v7aDebugArm7SharedLibraryMainC.
compiling z_hooks.c failed.
In file included from /Users/Code/Projects/Openframeworks/addons/ofxPd/libs/libpd/libpd_wrapper/z_hooks.c:11:
In file included from /Users/Code/Projects/Openframeworks/addons/ofxPd/libs/libpd/libpd_wrapper/z_hooks.h:14:
/Users/Code/Projects/Openframeworks/addons/ofxPd/libs/libpd/libpd_wrapper/z_libpd.h:19:10: fatal error: 'm_pd.h' file not found
#include "m_pd.h"
         ^~~~~~~~
1 error generated.

compiling s_libpdmidi.c failed.
/Users/Code/Projects/Openframeworks/addons/ofxPd/libs/libpd/libpd_wrapper/s_libpdmidi.c:5:10: fatal error: 'm_pd.h' file not found
#include "m_pd.h"
         ^~~~~~~~
1 error generated.

compiling z_print_util.c failed.
In file included from /Users/Code/Projects/Openframeworks/addons/ofxPd/libs/libpd/libpd_wrapper/util/z_print_util.c:12:
/Users/Code/Projects/Openframeworks/addons/ofxPd/libs/libpd/libpd_wrapper/util/z_print_util.h:15:10: fatal error: 'z_libpd.h' file not found
#include "z_libpd.h"
         ^~~~~~~~~~~
1 error generated.

compiling x_libpdreceive.c failed.
/Users/Code/Projects/Openframeworks/addons/ofxPd/libs/libpd/libpd_wrapper/x_libpdreceive.c:12:10: fatal error: 'm_pd.h' file not found
#include "m_pd.h"
         ^~~~~~~~
1 error generated.

compiling pique.c failed.
/Users/Code/Projects/Openframeworks/addons/ofxPd/libs/libpd/pure-data/extra/pique/pique.c:7:10: fatal error: 'm_pd.h' file not found
#include "m_pd.h"
         ^~~~~~~~
1 error generated.

compiling z_libpd.c failed.
In file included from /Users/Code/Projects/Openframeworks/addons/ofxPd/libs/libpd/libpd_wrapper/z_libpd.c:19:
/Users/Code/Projects/Openframeworks/addons/ofxPd/libs/libpd/libpd_wrapper/z_libpd.h:19:10: fatal error: 'm_pd.h' file not found
#include "m_pd.h"
         ^~~~~~~~
1 error generated.

compiling z_queued.c failed.
In file included from /Users/Code/Projects/Openframeworks/addons/ofxPd/libs/libpd/libpd_wrapper/util/z_queued.c:11:
/Users/Code/Projects/Openframeworks/addons/ofxPd/libs/libpd/libpd_wrapper/util/z_queued.h:14:10: fatal error: 'z_libpd.h' file not found
#include "z_libpd.h"
         ^~~~~~~~~~~
1 error generated.

compiling ringbuffer.c failed.
In file included from /Users/Code/Projects/Openframeworks/addons/ofxPd/libs/libpd/libpd_wrapper/util/ringbuffer.c:18:
/Users/Code/android/tools/android-ndk-r15c/toolchains/llvm/prebuilt/darwin-x86_64/lib64/clang/5.0.300080/include/stdatomic.h:150:11: fatal error: 'uchar.h' file not found
# include <uchar.h>  /* For char16_t and char32_t.              */
          ^~~~~~~~~
1 error generated.

compiling stdout.c failed.
/Users/Code/Projects/Openframeworks/addons/ofxPd/libs/libpd/pure-data/extra/stdout/stdout.c:7:10: fatal error: 'm_pd.h' file not found
#include "m_pd.h"
         ^~~~~~~~
1 error generated.

compiling choice.c failed.
/Users/Code/Projects/Openframeworks/addons/ofxPd/libs/libpd/pure-data/extra/choice/choice.c:13:10: fatal error: 'm_pd.h' file not found
#include "m_pd.h"
         ^~~~~~~~
1 error generated.

compiling m_atom.c successful.

compiling x_interface.c successful.

compiling x_time.c successful.

compiling d_arithmetic.c successful.

compiling g_vdial.c successful.

compiling s_inter.c successful.

compiling x_midi.c successful.

compiling x_vexp_fun.c failed.
In file included from /Users/Code/Projects/Openframeworks/addons/ofxPd/libs/libpd/pure-data/src/x_vexp_fun.c:80:
/Users/Code/Projects/Openframeworks/addons/ofxPd/libs/libpd/pure-data/src/x_vexp.h:16:10: fatal error: 'ext.h' file not found
#include "ext.h"
         ^~~~~~~
1 error generated.

compiling g_mycanvas.c successful.

compiling d_fft.c successful.

compiling d_misc.c successful.

compiling d_dac.c successful.

compiling s_utf8.c successful.

compiling m_pd.c successful.

compiling x_text.c successful.

compiling x_scalar.c successful.

compiling d_filter.c successful.

compiling g_editor.c successful.

compiling g_graph.c successful.

compiling x_misc.c successful.

compiling g_guiconnect.c successful.

compiling g_rtext.c successful.

compiling d_soundfile.c successful.

compiling g_scalar.c successful.

compiling s_audio.c successful.

compiling m_glob.c successful.

compiling g_clone.c successful.

compiling x_net.c successful.

compiling m_binbuf.c successful.

compiling x_acoustics.c successful.

compiling d_ctl.c successful.

compiling x_list.c successful.

compiling g_io.c successful.

compiling g_hdial.c successful.

compiling g_readwrite.c successful.

compiling g_vumeter.c successful.

compiling d_osc.c successful.

compiling g_numbox.c successful.

compiling g_toggle.c successful.

compiling g_bang.c successful.

compiling d_delay.c successful.

compiling s_audio_dummy.c successful.

compiling g_array.c successful.

compiling m_memory.c successful.

compiling s_loader.c successful.
/Users/Code/Projects/Openframeworks/addons/ofxPd/libs/libpd/pure-data/src/s_loader.c:182:5: warning: implicit declaration of function 'close' is invalid in C99 [-Wimplicit-function-declaration]
    close(fd);
    ^
/Users/Code/Projects/Openframeworks/addons/ofxPd/libs/libpd/pure-data/src/s_loader.c:234:2: warning: "No dynamic loading mechanism specified,     libdl or WIN32 required for loading externals!" [-W#warnings]
#warning "No dynamic loading mechanism specified, \
 ^
2 warnings generated.

compiling s_print.c successful.

compiling g_vslider.c successful.

compiling m_sched.c successful.
/Users/Code/Projects/Openframeworks/addons/ofxPd/libs/libpd/pure-data/src/m_sched.c:576:9: warning: implicit declaration of function 'sleep' is invalid in C99 [-Wimplicit-function-declaration]
        sleep(1);
        ^
1 warning generated.

compiling g_all_guis.c successful.

compiling m_class.c successful.

compiling s_main.c successful.

compiling d_array.c successful.

compiling x_vexp_if.c failed.
In file included from /Users/Code/Projects/Openframeworks/addons/ofxPd/libs/libpd/pure-data/src/x_vexp_if.c:25:
/Users/Code/Projects/Openframeworks/addons/ofxPd/libs/libpd/pure-data/src/x_vexp.h:16:10: fatal error: 'ext.h' file not found
#include "ext.h"
         ^~~~~~~
1 error generated.

compiling d_math.c successful.

compiling x_arithmetic.c successful.

compiling d_fft_fftsg.c successful.

compiling g_hslider.c successful.

compiling m_conf.c successful.

compiling m_obj.c successful.

compiling d_resample.c successful.

compiling x_gui.c successful.

compiling g_canvas.c successful.

compiling g_template.c successful.

compiling x_vexp.c failed.
In file included from /Users/Code/Projects/Openframeworks/addons/ofxPd/libs/libpd/pure-data/src/x_vexp.c:71:
/Users/Code/Projects/Openframeworks/addons/ofxPd/libs/libpd/pure-data/src/x_vexp.h:16:10: fatal error: 'ext.h' file not found
#include "ext.h"
         ^~~~~~~
1 error generated.

compiling d_global.c successful.

compiling x_array.c successful.

compiling d_ugen.c successful.

compiling s_path.c successful.

compiling g_traversal.c successful.

compiling g_text.c successful.

compiling x_connective.c successful.

Finished compileOFAndroidAppArmeabi-v7aDebugArm7SharedLibraryOFAndroidAppArmeabi-v7aDebugArm7SharedLibraryMainC, see full log file:///Users/Code/Projects/Openframeworks/apps/myApps/Tunable/build/tmp/compileOFAndroidAppArmeabi-v7aDebugArm7SharedLibraryOFAndroidAppArmeabi-v7aDebugArm7SharedLibraryMainC/output.txt.
danomatika commented 5 years ago

It looks like you are missing either some include paths or source files, as the errors point out. The compiler can't find the main pure-data header, m_pd.h, not can it find some of the libpd headers. It also doesn't seem to have a few posix or C stdlib functions.

cerupcat commented 5 years ago

Ok, I'll have to look into it more. The project is just the example project. Other examples build ok.

cerupcat commented 5 years ago

Seems like this may be related to CFlags. For example....

compiling x_vexp.c failed.
In file included from /Users/sethsandler/Code/Projects/TunableAndroid/Openframeworks/addons/ofxPd/libs/libpd/pure-data/src/x_vexp.c:71:
/Users/sethsandler/Code/Projects/TunableAndroid/Openframeworks/addons/ofxPd/libs/libpd/pure-data/src/x_vexp.h:16:10: fatal error: 'ext.h' file not found
#include "ext.h"

ext.h should only be included if PD is NOT defined. It should be defined though since the CFLAG includes -DPD. So, sounds like maybe incorrect files are trying to be built.

Seems like maybe ADDON_CFLAGS aren't working for some reason. Maybe an OF issue? I can't find another example addon that uses ADDON_CFLAGS to test.

danomatika commented 5 years ago

CFLAGS would also include the header paths, ie. -I. The basic defines are listed in https://github.com/danomatika/ofxPd/blob/master/addon_config.mk while the header search paths you need should be basically those in /libs.

You can also try changing the ADDON_CFLAGS to ADDON_CPPFLAGS in the addons_config.mk common & android targets. It might be that the Project Generator is making a distinction between CFLAGS and CPPFLAGS so one of them is not being set.

cerupcat commented 5 years ago

Thanks, I don't see any change doing that. I see the CFlags in the logs when compiling, so they appear to be read correctly, but not using when compiling correctly. I'm about out of ideas. Maybe I'll post an issue on OF repo.

cerupcat commented 5 years ago

Got a little farther now. Right now I'm just hacking around.

I opened build.gradle and changed cppFlags.addAll(addonCppFlags(abi, ofRoot())) to CFlags.addAll(addonCppFlags(abi, ofRoot())). That fixes 90%.

For some reason x_vexp.h isn't seeing the PD definition so I manually added #define PD it to the top (just to get passed the include error.

Now the last error is the following which I'm still looking into.

/Users/sethsandler/Code/android/tools/android-ndk-r15c/toolchains/llvm/prebuilt/darwin-x86_64/lib64/clang/5.0.300080/include/stdatomic.h:150:11: fatal error: 'uchar.h' file not found
# include <uchar.h>  /* For char16_t and char32_t.              */
danomatika commented 4 years ago

ADDON_CFLAGS are now set as a list in the latest commit, so it might work for now.

danomatika commented 4 years ago

Closing for now as this is an upstream issue.

jyg commented 3 years ago

Hi, I hope this is the right place to post my comment, even if the thread is tagged as 'closed'.

I'm trying to compile pdExample and get the same errors @cerupcat got here https://github.com/danomatika/ofxPd/issues/70#issuecomment-468962961 #include "m_pd.h" : 1 error generated. .... compiling z_hooks.c failed etc... How did you solve the issue (other than by adjusting paths in #include lines) ?

mnlvqz commented 3 years ago

Hi, Same here, I'm getting error while compiling. I tried editing ADDON_CFLAGS but had no luck.

ADDON_CFLAGS = -DHAVE_UNISTD_H ADDON_CFLAGS += -DUSEAPI_DUMMY ADDON_CFLAGS += -DPD ADDON_CFLAGS += -DLIBPD_EXTRA

danomatika commented 2 years ago

As mentioned in previous posts, this appears to be a bug in the OF Android build system: https://github.com/openframeworks/openFrameworks/issues/6251

Using ADDON_CFLAGS as a list does not work as the build only reads the first flag, so the workaround appears to be to append each flag separately via ADDONS_CFLAGS +=, judging from this commit referenced by the same OF issue.

In any case, I made a bugfix/cflags branch which has this workaround. Please test and let me know if it works as I haven't not done any Android development nor do I have a test setup for Android.

danomatika commented 1 year ago

As I haven't received any feedback, I am closing this for now. I will leave the branch for the time being.